如果你正在學習 SQL,而你手上有想要分析的數據資料,可能是 Excel 的 CSV 檔或是 Google Sheet 線上檔案,這篇會告訴你如何 3 分鐘匯入資料後,以 SQL 查詢資料,除此之外,還能用 Google 出的 Data Studio 來進行視覺化,不需要再下載 MySQL 和 Tableau 來學習資料分析跟視覺化!
Google BigQuery 是什麼?4 點解釋輕鬆搞懂!
- Google Bigquery 是無伺服器的大型資料庫,優勢是省錢跟省空間,速度還更快
- 一般的資料庫需要實體伺服器儲存資料,但是 Google BigQuery 將大量資料儲存在雲端,因此我們不需要額外花錢跟空間買伺服器,除此之外,查詢的速度還更快
- Google BigQuery 是資料庫,可以以結構化查詢 (SQL) 方式來查詢資料
- Google BigQuery 作為大型資料庫,還可以跟 Google 其他視覺化工具或是資料工具一起使用,我最常使用的是 Data Studio 跟 Google Sheet
- Google 視覺化工具:Google Data Studio,跟 Tableau 和 PowerBI,是商業智慧工具、簡單的資料視覺化工具,讓所有人可以輕鬆的從資料庫完成漂亮報表
- Google 資料工具:Google Sheet 一直是繼學習 Excel 之後,我最喜歡的資料處理系統,有大量好用的公式,還有 App Script 可以寫出簡易的自動化程式或前端介面,是一個簡單上手、但深度非常高的資料處理初階工具!
- Google BigQuery 支援免費使用、也可以將資料庫共享給外部
- 支援免費使用:對於小公司、個人學習或是一人公司,支援免費使用絕對是一大福音,可以省去安裝傳統 MySQL 的時間
- 將資料共享給外部:如果是學術單位,可以將資料無痛分享給外部,讓學生或是個人都可以連線,個人不再需要以傳統 VPN 的方式匯入資料,省去很多時間
Google BigQuery 教學 – 3 步驟學習
- 註冊免費 Google BigQuery 資格
- Google BigQuery Sandbox 沙盒
- 進入 Google BigQuery
- 使用 Google 帳號進行身份驗證,然後接受服務條款
- Google BigQuery Sandbox 沙盒
- 開始使用 Google BigQuery
- 按照提示,創建專案
- 學習使用資料庫,引用開源資料數據,或是自己匯入
- 教學影片:如何匯入資料
- 直接引用自己喜歡的開源資料庫做練習
- 下圖所示範例,就是使用 Google 公開資料庫中 bigquery-public-data 這個 Schema,底下的 google_trends 中的 top_terms 這個 Table
- 開始寫 Google BigQuery 的 SQL Query
- 這邊以公開資料集來示範:
bigquery-public-data.chicago_taxi_trips.taxi_trips
- 這邊以公開資料集來示範:
select
DATE(trip_start_timestamp) start_date
, trip_seconds
, trip_miles
, fare
, tips
, trip_total
, payment_type
, company
from `bigquery-public-data.chicago_taxi_trips.taxi_trips`
Where DATE(trip_start_timestamp) >= date('2021-01-01')
and DATE(trip_start_timestamp) <= date('2021-12-31')
and company in ('Taxi Affiliation Services', 'Flash Cab','Chicago Carriage Cab Corp')
order by 1
limit 100
為什麼我非常建議新手使用 Google BigQuery?
- 免費而且不需要花費太多時間安裝,可以馬上就進入最重要的學習環節:SQL 查詢
- 只要有 Google 帳號就可以使用,每個人都有免費的額度可以使用,登入只需要 3 分鐘就搞定
- 不需要下載、安裝任何軟體,在網頁版就可以操作
- Google 在以 SQL 處理資料時的速度好快、錯誤提示 (Error) 也很明顯,很適合新手
- 錯誤提示在執行 (Run) 資料之前就會顯示,不會浪費計算空間去跑一段錯誤的程式碼
- 可以以 Excel CSV 檔案、Google Sheet 檔案,匯入資料作為查詢表 (Table):
- 在學習 SQL 的時候,我們常常只能用他人提供的資料庫來學習,因為在其他工具中 (不論是線上工具、或是 MySQL),要匯入自己的查詢表 (Table) 真的太麻煩了!!耗時費力!對於新手來說也比較困難 (匯入 Table 在公司是專業的資料工程師在做的,一般人初學時期,其實不需要學到)
- 除此之外,Google BigQuery 可以直接應用自己手上的資料 (例如自架部落格的網站資料、自己的財務資料、自己開的電商店舖的訂單資料都可以),只要將資料儲存為 CSV、或是將資料貼到 Google Sheet 上,匯入成為查詢表 (Table),就可以用 SQL 做資料處理或是計算了
- 可以引用 Google API 串的公開資料、也可以上傳 Excel、或是直接連結 Google Drive 裡 Google Sheet 的資料
- Google BigQuery 的介面清楚、好看、簡單!
為什麼我不建議新手用 MySQL 來學習 SQL?
雖然 MySQL 是一個免費、普遍的開源工具,也是很多大企業會使用的資料庫,但是我不推薦初學者就立刻用 MySQL 來學習 SQL 語法,原因有 2 個:
- 光是安裝就要花上幾小時,學習的動力都沒了
- 如果你不是一個非常熟悉安裝軟體、或是非常工程師的人的話 (我也是),我會建議不要使用 MySQL 做為 SQL 學習的工具,因為光是下載、安裝資料庫 (Schema、Table) 就很麻煩,還有可能因為忘記 Root 密碼不能再使用電腦裡的 MySQL
- 創建資料庫比較不直覺,也不能直接引用一些開源資料庫
- MySQL 創建資料庫不能直接匯入你手上已經有的 Excel 數據,也不能直接引用網路上的開源資料庫
誰適合用 Google BigQuery 學習 SQL 或是資料分析?
- 把 SQL 作為提取數據的工具,只是需要學習資料分析 (SQL 語法)
- 一般數據分析人員,非資料工程師 (不用負責 ETL、資料庫建立)
- 只是想要學習商業用的 SQL 用法,可能是營運人員、行銷人員等等
- 沒有要成為專業資料庫工程師的人
Google BigQuery 教學資源
Google 官方證照班:Google BigQuery 專門班
- Google 官方 (Google Cloud Team) 在 Coursera 上上架的 BigQuery 線上課程,會做整個 BigQuery 的功能介紹、查詢表、還有基本的 SQL 語法、如何控管權限
- 課程中也會教如何匯入、匯出資料,會教進階資料類型 Json 檔的匯入,還有進階的兩個 Table 之間的 Join 語法,還有進階語法 With、統計 SQL 函數 (RANK 等等)
- 課程也會教到 Google 視覺化軟體 Data Studio 的用法,用 SQL Query 出來的數據用 Data Studio 做報表
- 最後還會帶到簡單的 Machine Learning,在 Bigquery 中使用機器學型的模型,也會實際帶幾個資料範例做練習
誰適合上這堂課?
- 適合新手,適合還沒有實際工作使用過 SQL 語言的學員
- 想利用學習 Google BigQuery 的機會,學習基本資料分析工具,包括 SQL、Data Studio,還有簡單機器學習的基礎
- 公司已經引進商業版 Gmail、Google Cloud 系統:很有可能下一步就要整併資料庫了!
更多學習資源推薦
- Lisa 的超白話實用教學:Lisa 的 SQL 教學
- Google Data Analytics Professional Certificate:Google 認證的資料分析師證照課程有幫助嗎? 誰最適合上?可以參考我的學習心得,證照班適合想要全方位學習數據分析工具跟技巧的人!
如何使用這個網站?我的數據分析文章導覽!裡面也會分享更多實用 Google Sheet 教學:本站數據分析文章導覽 及 更多 Google Sheet 實用文章教學