在這場主題為資料分析的 Next OnAir,介紹 Google Cloud 企業級資料倉儲平台 BigQuery 上許多令人驚艷的新功能,不管是在可靠性、分析能力以及開放與彈性上,都有許多業界第一的新突破。知名企業如美國職棒大聯盟(MLB)、匯豐銀行 HSBC 以及台灣大車隊與知名直播平台 17 LIVE 在搬遷到 BigQuery 後,在 BigQuery 強大的支援下,他們發揮了更多業務上的創新。
BigQuery 簡介
BigQuery 是 GCP 家族中的大資料儲存與查詢的服務,可以提供大量的資料儲存,且以結構化查詢(SQL)方式查詢您儲存的資料,並且可以支援資料表之間的 Join 動作。
高效能的資料倉儲服務
BigQuery 為 Google Fully-managed 的服務,也是一個可以提供類似資料倉儲與分析服務的系統。除此之外,BigQuery 以分散式的 Column Base 方式儲存資料,並透過MapReduce的概念以 Google 背後強大的運算能力提供資料的查詢與分析能力,讓 BigQuery 以近似即時(Near Realtime)的速度提供使用者查詢與分析。
高可靠且安全的資料儲存服務
透過 Google 的管理,BigQuery 具備更高的安全性、運作效能並且落實 NoOps 的概念,提供使用者無需花費力氣在底層系統的管理、延展與效能的監控等。另外,在資料儲存方面,BigQuery 提供資料多份複製的能力,讓資料在儲存上無需擔心遺失的風險。
便宜的儲存服務
BigQuery 提供想要使用這個服務的用戶可以從第一筆資料開始儲存,多過免費額度後才開始計費,每使用到超出的資源,則以超出的資源計費,無需有資料倉儲(Data Warehouse)系統的前置花費,也無需在前期投入難以預計的成本但卻無法有效地發揮出資料的價值。
可自動擴展以適應資源的使用量
BigQuery的架構上,以分散儲存概念為基礎,搭配MapReduce的方式把運算分散給Google資料中心的大量運算資源來處理,在架構上,可以自動判斷每個查詢在最有效的時間內執行所需要的運算資源,進行各項資源的自動調度與調整,讓BigQuery足以應付大量的使用者及其大量的資料查詢與分析。
具備彈性的資料儲存能力
BigQuery提供使用者規劃資料表從一個欄位到一萬個欄位,並且可以透過資料表的修改擴充欄位大小。除此之外BigQuery提供巢狀的結構儲存方式,讓資料的儲存可以在特定屬性的欄位中再儲存另一個資料結構,以擴充資料的儲存能力。
更符合使用者的簡易操作
為了符合眾多處理、使用大資料的用戶需求,BigQuery 創新以結構化查詢(SQL)的方式提供使用者在可接受的時間查詢出所需要的資料,並且可以支援多個Table的Join,讓原本需要大量前置作業的資料倉儲處理方式變得更簡單。加上使用者毋須事先準備伺服器、儲存空間、備援資源等等,讓傳統大資料工程前置作業在轉換 BigQuery 變得更加簡單。
BigQuery 發表多項創新突破:Omni、Data QnA、內建機器學習
一直以來可靠性、智能分析以及支援開放標準與彈性,是 GCP 在產品開發上的三大原則,而這次所發表的許多新功能也是圍繞在這三大原則之下。
可靠性
Google 逐年提升 BigQuery 伺服器的可靠性,今年 BigQuery 的 SLA 已經達到 99.99%,也就是 BigQuery 服務每個月最多只有 4.3 分鐘的停機時間。BigQuery 的執行效能每年成長,2018 年在 BigQuery 上查詢 1 PB 的資料需要花費 2 分鐘,如今只要 4.2 秒。這項業界第一的服務可靠性可直接套用在所有 BigQuery 用戶上,不需額外付費。
智能分析
在分析能力上,BigQuery 今年一口氣推出 10 多項新功能,以下簡介 3 項重要更新:
- Data QnA:只要使用自然語言(目前支援英語)對 BigQuery 查詢,BigQuery 能自動將問題解析為 SQL 指令,並呈現查詢分析後的結果。不需要會寫 SQL 語法,所有使用者都能在 Google spreadsheet、chatbot、語音輸入或自己的UI等不同介面上嵌入此功能對 BigQuery 查詢。
- 內建 Machine Learning 訓練及推論:過去要做機器學習建模,需要將數 TB 的資料從資料倉儲搬到機器學習伺服器上,非常耗時且耗成本。如今透過 BigQuery ML,不僅可做到基本的分類、回歸預測,也新增推薦引擎 model,如 K means 分群、時間序列演算法等。同時還支援 Tensor Flow model 的匯入或將 BigQuery ML 的 model 匯出至 Tensor Flow。
- Instant Exploration:Looker 是全新企業級的 BI 工具,可跟 BigQuery 緊密整合。資料分析師不需要再下SQL指令撈取資料,只要透過視覺化方式即可輕鬆完成。
- 開放與彈性:GCP 向來強調開放性,進行資料分析查詢也不需擔心要被 BigQuery 綁住,新功能提供企業更多彈性。
- BigQuery Omni:想使用 BigQuery 功能,但資料集卻分散在地端、其他雲平台的資料倉儲中。只要透過全新 BigQuery Omni,就能直接在 BigQuery 上查詢其他第三方的資料集,不需先搬遷資料。提供更統一、便利的管理。
- 彈性的計費方案 – Reservation、Flex slots:透過剛發佈的 Reservation 功能,企業可彈性切換不同的計費模式,可依需求從 On demand 切換到 Flat rate 方案。而 Flex slots 則是讓企業可隨時簽訂短時間的 commitment 方案,並隨時取消。如臨時有行銷活動需要短時間做重量級資料分析時即適合使用 Flex slots。
企業案例
美國職棒大聯盟從 Teradata 搬遷到 BigQuery,為球迷提供更好體驗
過去 MLB 的售票交易資料及粉絲透過網站、App 與球隊互動的資料都是傳送到本地 Teradata 的資料倉儲中,再傳到 AWS 的 S3 儲存備份。MLB 的資料集非常龐大,每年有數百 GB 的資料進到資料倉儲中。但為了要讓 30 個球隊共享資料,在此架構上每天需複製更新異動的資料非常耗時,且 30 個球隊不同的資料,礙於資料隱私須分開儲存,這在技術上要實現也困難重重。經過評估,MLB 耗費 7 個月,透過使用 BigQuery DTS 遷移資料,以及利用 CompilerWorks 的工具將 Teradata SQL 指令轉換為 BigQuery SQL 指令,成功搬遷到 BigQuery,現在 30 支球隊俱樂部能夠更輕鬆自主的存取資料,不僅如此在效能、安全性、彈性、開發便利上都有顯著的增進,更降低了維運人力以及成本。
台灣大車隊建模預估 15 分鐘後搭車熱點
55688 台灣大車隊為了提高司機載客效率並減少乘客等車時間,規劃了 3 階段的 IT 專案,分別是:將資料倉儲搬遷上 BigQuery、導入商業智慧工具 Tableau、建置「預測區域叫車需求」機器學習模型。儲存在地端資料庫的派車數據每 5 分鐘會上傳到 Google Cloud Storage,經過 Cloud Function 處理後資料匯入至 BigQuery。透過 BigQuery,運營及行銷團隊很輕鬆就能快速獲取數據,也可供後續 Tableau 做進一步分析。而 CloudMile 技術團隊則協助台灣大車隊建置機器學習模型,匯入 App 歷史叫車紀錄、過去三年全台每小時雨量資料、路網資訊、興趣點等資料,訓練模型並在 GKE 平台上進行預測分析,每隔 15 分鐘產出叫車熱點預估圖傳送到 App 給司機,藉此提升司機與乘客滿意度。
17 live 利用即時分析讓線上直播不卡卡
華人直播社交平台第一品牌 17 live 已經從其他雲端平台搬遷到 GCP 一年多,當初正是因為看好 BigQuery 的即時分析能力因而決定搬遷。相較於先前使用其他雲端資料倉儲服務,需要事先設定硬體 Instance Type 以及 Slot 數量等,若設定不夠超出資源可能就有數據無法寫入的情形。而 BigQuery 的 Serverless 特性如同一個黑盒子,讓 IT 人員完全不用管硬體,這是與他牌雲端資料倉儲最大差別。其次,在當時他牌的報表服務種類支援較少,也較無法滿足 17 live 需求。
而 BigQuery 能處理批次以及即時串流的資料分析,也深獲 17 live 好評。有需要即時分析且資料筆數較多的就採用即時串流分析,對於較不即時但對資料完整性重要的場景則採用批次處理。17 live 也曾在線上活動播出時,利用 BigQuery 即時查詢能力來提升用戶體驗。在即時活動現場,會有即時主播串流資料、網路連線品質等資料,而線上活動 Event Streaming 透過 Pub/Sub 並經由 Dataflow 處理後匯入 BigQuery,之後再透過 BI 工具產出圖表。在這個過程可透過 BigQuery 即時主動找出網路連線有問題的主播,並立即協助調整網路,確保線上活動不受影響。最後,17 live 也認為 GCP 的 Pay as You Go 計費方式十分彈性,沒有用到不需付費,但臨時有大量查詢時又可在短時間立刻得到結果。未來 17 live 更計畫進一步使用 BigQuery ML,做到更好的用戶體驗。