使用 BigQuery Graph 和 Spanner Graph
本文比較 BigQuery Graph 和 Spanner Graph,協助您判斷要使用哪種圖譜解決方案。
這項比較僅供參考,並非絕對。BigQuery Graph 和 Spanner Graph 的功能有許多重疊之處,使用者應根據工作負載需求,決定要使用哪項功能。
BigQuery Graph 和 Spanner Graph 的使用時機
BigQuery Graph 和 Spanner Graph 適用於不同類型的圖譜工作負載。BigQuery Graph 適合大規模深度分析,Spanner Graph 則適合即時作業。
BigQuery Graph
BigQuery Graph 經過最佳化調整,能對大型圖表執行複雜查詢。您可以分析全球模式、找出歷來趨勢,並發掘龐大資料集中的隱藏關係。
其技術特性包括大規模最佳化效能、平行處理、對圖表重要部分進行複雜查詢、密集運算和複雜匯總。
常見用途包括:
- 離線詐欺偵測:在客戶圖表中,找出與已知詐欺者有關聯的其他可疑使用者,這些使用者在整個網路中,與詐欺者共用相同的電子郵件、電話或地址,且關聯程度在幾度之內。如需詐欺偵測教學課程,請參閱「Spanner 和 BigQuery:即時詐欺防護盾牌」。
- 供應鏈最佳化:建立物料清單圖,呈現最終產品與其元件之間的關係,以便規劃商品目錄。分析所有產品系列中的頂級產品及其根元件,計算產品交貨日期並瞭解材料供應情形。
- 客戶 360 區隔:建立客戶 360 圖表,瞭解產品訂閱、轉換和流失的客戶歷程。您可以使用這項功能找出客戶流失的原因、識別使用模式,並使用圖表對整個目標對象進行顧客區隔和指定目標對象。
Spanner Graph
Spanner Graph 適用於即時作業,這項服務經過最佳化,適用於需要執行 k-hop 查詢、立即觸及一小組圖形元素、在幾毫秒內偵測詐欺行為、執行歷來追蹤以驗證身分和依附元件,以及提供即時推薦的應用程式。
其技術特性包括可預測的延遲時間 (抖動極低)、每秒查詢次數 (QPS) 會隨 Spanner 節點數量線性擴充,以及幾乎無限的擴充能力。此外,這項服務也內建圖譜儲存空間,可交錯節點和邊緣資料表、提供隨時可用性、全球一致性,以及從單一圖譜節點或一組圖譜節點開始的點查詢和多躍點查詢。
常見用途包括:
- 即時詐欺偵測:在幾毫秒內,根據已知詐欺裝置和帳戶的圖表,檢查信用卡刷卡行為。
- 自主網路作業:建構網路的數位孿生,即時監控及最佳化效能。
- 實體解析:建立連結身分的叢集,做為不同 PII (電子郵件、電話、Venmo ID) 的可靠資料來源。在放送廣告前,使用標準設定檔查詢身分、即時偵測詐欺行為,以及訓練特徵儲存庫。
BigQuery Graph 和 Spanner Graph 如何搭配運作
BigQuery Graph 和 Spanner Graph 搭配運作,提供全方位解決方案。舉例來說,在 360 度客戶檢視用途中:
- 即時洞察:客服專員使用 Spanner Graph,根據即時購買和運送統計資料,處理使用者對寄錯產品的投訴。
- 複製或查詢:您可以使用 Spanner 變更串流,將資料從 Spanner 複製到 BigQuery,不需複雜的擷取、轉換和載入 (ETL) 程序,也可以使用 BigQuery 聯合查詢,直接從 BigQuery 查詢 Spanner 資料。
- 分析模式:資料科學家使用 BigQuery Graph 找出相同資料中的「流失熱點」,將客戶標示為「有流失風險」。
- 意見回饋循環:「有風險」標籤會推送至 Spanner Graph,並支援反向擷取、轉換和載入 (ETL),為這位顧客產生優惠碼,防止流失。
在 BigQuery Graph 和 Spanner Graph 之間移動資料
您可以視工作負載需求,在 Spanner Graph 和 BigQuery Graph 之間移動資料:
正向 ETL:如要將資料從 Spanner 移至 BigQuery 進行分析查詢,請使用 Dataflow 範本。
反向 ETL:雖然您可以直接從 BigQuery Graph 查詢 Spanner 資料,但有時可能需要將 BigQuery 資料匯入 Spanner Graph。使用
EXPORT DATASQL 陳述式。詳情請參閱「瞭解反向 ETL 管道」。
功能比較
下表詳細列出各項功能,並依最適合的產品分類:
| 功能 | BigQuery Graph (離線/批次) | Spanner Graph (線上/即時) |
|---|---|---|
| 圖譜模型、查詢和視覺化 | 整合圖譜建模和 Graph Query Language,全面採用 GoogleSQL (符合 ISO SQL 標準),建立圖譜不需要切換其他介面。 | 整合圖譜建模和 Graph Query Language,全面採用 GoogleSQL (符合 ISO SQL 標準),建立圖譜不需要切換其他介面。 |
| 主要工作負載 | 離線 (批次):匯總巨型資料集。 | 線上 (即時):大量、低延遲的讀取/寫入要求。 |
| 查詢延遲時間 | 幾秒至幾小時。最適合掃描 TB/PB 規模的資料。 | 毫秒至秒。最適合面向使用者的應用程式。 |
| 查詢模式 | 全域或整個圖譜,例如「誰的『網路觸及率』超過 5,000 人?」 | 區域或鄰近範圍:「找出哪些人是我朋友的朋友,但並不屬於我的直接社交圈。」 |
| 擴充規模 | PB 規模,擴充能力近乎無限,最適合大量歷來資料。 | 可水平擴充,處理規模近乎無限,最適合熱資料。 |
| 資料更新間隔 | 近乎即時或批次。可存取不同來源的資料,例如 Bigtable、Cloud Storage、Amazon S3,或透過 Spanner Data Boost 使用 Spanner Graph 資料。 | 即時且同步一致。 |
| 輸入資料 | 資料湖泊、歷來記錄、封存的交易資料。 | 即時應用程式串流、使用者互動。 |
| 資料遷移 |
可使用預先建構的批次或串流範本,將 Spanner 資料傳送至 BigQuery,即順向擷取、轉換和載入 (ETL)。使用 EXPORT_DATA,將資料從 BigQuery 匯出至 Spanner (反向 ETL)。聯合查詢 (免 ETL) 搭配外部結構定義。 |
可使用預先建構的批次或串流範本,將 Spanner 資料傳送至 BigQuery,即順向擷取、轉換和載入 (ETL)。使用 EXPORT_DATA 將資料從 BigQuery 匯出至 Spanner (反向 ETL)。聯合查詢 (免 ETL) 搭配外部結構定義。 |
後續步驟
- 進一步瞭解 BigQuery Graph。
- 進一步瞭解 Spanner Graph。