入門數據分析的第一個大門檻:SQL/Hive取數
從自身經歷聊聊學習SQL的體驗以及三個自學SQL網站分享
1.SQL重要嗎?
2.SQL難學嗎?
3.學好SQL的優點
最近注意了幾所大學都創建了數據相關的學程或社群,例如中山管院:商業大數據、逢甲資料科學大講堂,也有企業在做推廣(例如國泰金控數數發團隊),覺得現在的學生真幸福,不禁回想自己5年前剛入這行時的學習過程…
當初的基礎僅有還不錯的統計學、一點點excel、一點點R。隨著工作難度的增加,這一點點技能已經不敷使用。開始到處找書、找案例、找課程。學習過程幾乎是缺哪補哪,沒有什麼系統章法,走了不少冤望路。
而我自己感覺學的最艱辛的,就是SQL/Hive了。本篇文章將從自己接觸SQL的心路歷程來分享SQL的重要性&不好學的原因。
邀請你至Blog閱讀全文:
入門數據分析的第一個大門檻:SQL/Hive取數-聊聊自身學習SQL的經歷以及三個自學網站分享如果你喜歡我的文章,也邀請你訂閱『Rock Data』電子報,支持我持續創作
SQL重要嗎?
剛入行我是很純粹的分析師,例如 “分析廣告推廣的效果如何?”、“分析新的產品訂價該如何設計?”
當時基本數據都已經有報表了,所以可以根據報表的歷史數據往下分析。然而,隨著分析的角度不斷深入,或是分析的項目越來越多元,或是老闆的問題越來越多樣化…..報表的數據已經不足夠了。
為了滿足分析所需的各種數據,我只得頻繁的跟DBA要數據,但心裡總是不踏實,要是有人質疑我的分析結果的話,我自己能保證input都是合理的嗎?
不能,因為最原始的數據不是我掌握的。
我必須要會自己取數!!
這是我開始學SQL以及發現”取數”有多重要的時期
我在研究所學計量經濟學時,網上或課程都已經提供了數據,接著開始做清洗、挖掘、選特徵、建模等操作。我想大多數人學習數據分析時,也是一樣的場景。
但真實環境中,數據都是存在數資料庫中,不會SQL,無法將數據取出來,基本上寸步難行。所以我們可以看到很多人說,數據分析60%以上時間都是在取數,身為一個數據分析师,操作SQL是一個必備技能。
到了現在(2020年),我觀察到的職場環境,對SQL的要求已經不僅限於數據分析師,甚至營運、PM,凡事要依賴/參考數據做出決策的職位,或多或少都會要求具備基本的SQL操作的能力。
SQL難學嗎?
我認為SQL上手不難,但要精通SQL很難,因為只能通過長時間的實戰才能掌握好它。
當時分析部門剛成立沒多久,大家的背景也都是分析為主,專精SQL的人不多。我記得每晚6點吧,team leader會在牆上教我們一些SQL的語法,從最簡單的select、通配符,到表關聯,計算函數count()等等的,奠定了我最基礎的SQL語言。
配合真實環境的操作以及網上的資源(推薦:w3c的sql手冊 、SQLBolt、 Hive Tutorial),我開始進入可以自己取數
一切就順利了嗎?不…年輕人還是太天真了。
我發現我取的數,光是跟報表對就對不上,到底差異在哪?
邀請你至Blog閱讀全文:
入門數據分析的第一個大門檻:SQL/Hive取數-聊聊自身學習SQL的經歷以及三個自學網站分享如果你喜歡我的文章,也邀請你訂閱『Rock Data』電子報,支持我持續創作
我跟DBA要了幾個報表的代碼來看時,看到腳本用到的多表關聯和子査詢多層嵌套讓我不禁懷疑人生,網上少提的CASE WHEN組合邏輯查詢也遍地開花,一個報表的取數SQL數百行甚至上千行的代碼也不足為奇。
我還是太淺了,買本書好好啃吧
我這麼想,畢竟研究所的學習,最大收穫就是自己找資料。然而尋尋覓覓,外面的書籍內容,講的最多的卻是資料庫設計、數據管理、底層架構。
對數據分析師來說,査詢才是做的最多的操作,畢竟使用工具是為了完成分析畢、竟我們不是運維也不是數據開發工程師,實際工作中也確實用不到這些知識。
因此我的學習過程就是看DBA的腳本,以及從分散各處的資訊,配合業務方千奇百怪的需求,實際操作、一點一滴、片段式的逐漸累積。
我想每個人在通往熟練使用SQL的道路上都會有這個“陣痛期”。當然,如今我已度過這個“陣痛期”,SQL也算熟練,但每每想到那段時間的摸索過程,還是覺得辛苦。
我認為SQL上手不難,但要精通SQL很難,因為只能通過長時間的實戰才能掌握好它。而且SQL的學習資源是最缺乏的(相較Excel、機器學習、R、GA等)。
學好SQL的優點
創業公司 CitusData的雲產品負責人 Craig Kerstiens 曾發表了一篇文章SQL: One of the Most Valuable Skills來說這件事,我覺得有很大的共鳴,Craig 是這麼說的:
- 它對於不同的職業角色和學科來說都是有價值的;
- 一旦學會了就不需要重新再學;
- 它讓你看起來像個超級英雄。一旦你掌握了它,而其他人不懂,你就顯得特別强大
有句話我特別有感:
SQL是我所知道的最神奇的概念之一。它已經有近五十年的歷史,而且沒有被其他東西替代的迹象。我們已經創建了無數種科技來存儲和處理數據,但似乎總是嘗試在這些科技中重新實現SQL(例如Hive、Presto、KSQL)。
邀請你至Blog閱讀全文:
入門數據分析的第一個大門檻:SQL/Hive取數-聊聊自身學習SQL的經歷以及三個自學網站分享如果你喜歡我的文章,也邀請你訂閱『Rock Data』電子報,支持我持續創作
1. Hello All:主站遷移至👉https://andyrockdata.com/ ,請改至『ROCK DATA』Blog 閱讀新文章完整內容,如果喜歡我的文章,可以訂閱我的電子報(Medium站仍將張貼新文章訊息)2.立即追蹤👉ROCK DATA臉書粉絲頁跟ROCK DATA IG(@andyrockdata)3.【入門數據分析,掌握HiveSQL取數能力】在hahow上架啦,購買連結👉 http://hahow.in/cr/andyrockhive4. 半佛系鼓掌:原來只要滑鼠一直按著不放就可以一直鼓掌了。那請你按久一點:)有任何想法或感興趣的地方歡迎留言/討論,或者私訊我!5. 往期的數據相關文章可以參考以下link
- 數據分析系列1:談談數據分析的眾多Title
- 數據分析系列2:數據分析的一週工作日程
- 數據分析系列3:身為資料分析師,你該如何展現工作中的價值?
- 數據分析系列4:如何量化職場規劃?我這次的轉職規劃與Offer選擇
- 數據分析系列5:為什麼要關心資料來源?談談埋點數據的陷阱
- 數據分析系列6:精選幾個機器學習的學習資源
- 數據分析系列7:數位化決策轉型與企業文化的一些思考
- 數據分析系列8:中山大學經濟所職涯座談(ㄧ):”了解自己”的重要&我怎麼成為數據分析師
- 數據分析系列9:中山大學經濟所職涯座談(二):想從事資料分析?你需要具備這8個能力
- 數據分析系列10:中山大學經濟所職涯座談(三) :讓資料變商機 — 資料分析在我們生活中的應用
- 數據分析系列11:面試時,資料分析師該怎麼準備作品集?
- 數據分析系列12:2018年終工作總結(數據分析師)
- 數據分析系列13:數據化運營中玩過的分析項目:一個數據分析師的經驗總結
- 數據分析系列14:如何提升運營/產品的優化效率?或許數據指標體系的搭建可以幫到忙
- 數據分析系列15:用戶畫像很重要,那你知道是怎麼畫出來的嗎?
- 數據分析系列16:給剛入行的數據分析師:想產生價值,在試用期要做的三件事
- 數據分析系列17:2019 數據分析工作總結_關鍵詞:數倉構建、BI可視化看板、用戶畫像(標籤)與精準行銷
- 數據分析系列18:入門數據分析的第一個大門檻:SQL/Hive取數-聊聊自身學習SQL的經歷以及三個自學網站分享
- 數據分析系列19:身為數據分析師,我怎麼看hahow上”R語言和商業分析”這門課
- 數據分析系列20:直接用SQL來分析數據?怎麼沒用python/R?3個面向來考量分析工具的選擇
- 數據分析系列21:數據分析的”橫向”學習之路-珍藏的網上文章重新整理放上github
- 數據分析系列22:透過埋點,讓數據說話:埋點基本知識
- 數據分析系列23:以數據為核心的CRM進化產品:帶你了解CDP(客戶數據平台)開發過程與難點
- 數據分析系列24:SQL不難啊,為什麼不容易精通?自學與實務的4個落差
- 數據分析系列25:數據分析基本-相關分析與可視化(R語言)
- 數據分析系列26:刷完了Leetcode SQL Hard Level的28道題:歡迎領取參考答案
- 數據分析系列27:數據太髒了!3個步驟做好數據質量管理
- 數據分析系列28:跨部門溝通成本太高?數據人實現高效跨部門溝通的4個方式
- 數據分析系列29:數據分析師職場發展的另類出路
- 數據分析系列30:Databrick為何收購BI產品Redash?產品視角來看Redash的功能與價值
- 數據分析系列31:數據分析師要失業了?解讀<2022 Gartner BI魔力象限> BI產品趨勢
- 數據分析系列32:Google Data Catalog如何幫忙管理數據? 產品介紹與體驗心得
- 數據分析系列33:復盤:數據產品從0到1的建設過程,我的9點感觸
- 數據分析系列34:Shopline-數據分析中心(Shoplytics)產品體驗
- 數據分析系列35:搞數據還是做產品?淺談『數據產品經理』