Bigtable Data Boost 總覽
Data Boost 是一項無伺服器運算服務,可以對 Bigtable 資料執行高處理量讀取工作,不會對處理應用程式流量的叢集產生效能影響。您可以使用無伺服器運算功能傳送大型讀取工作和查詢,而核心應用程式則繼續使用叢集節點進行運算。無伺服器運算 SKU 和計費費率與佈建節點的 SKU 和費率不同。您無法使用 Data Boost 傳送寫入或刪除要求。
本文說明資料加速功能,以及使用時機和方式。閱讀本頁面之前,請先瞭解執行個體、叢集和節點。
適用場合
Data Boost 非常適合用於資料分析和資料處理工作負載。 只要透過 Data Boost 區隔資料分析與處理流量,您就不必為了因應資料分析工作負載,而調整叢集的運算資源或節點數量。透過叢集節點持續轉送應用程式流量的同時,您可以運用 Data Boost,在單一叢集執行高處理量的資料分析工作。
以下是 Data Boost 的理想應用實例:
- 從 Bigtable 匯出或 ETL 管道工作排程或觸發條件,將資料匯出至 Cloud Storage,以進行資料擴充、分析、封存、離線機器學習模型訓練,或供客戶的第三方合作夥伴擷取
- 使用 Dataflow 等工具進行 ETL,以支援 MDM 的原地彙整、規則式轉換或 ML 工作
- 使用 Bigtable Spark 連接器讀取 Bigtable 資料的 Spark 應用程式
- 使用 BigQuery 外部資料表讀取 Bigtable 資料的臨時查詢和排定分析工作。
不適用場合
點讀取 - Data Boost 並非點讀取作業的最佳選擇,這類作業是針對單一資料列傳送的讀取要求。包括批次讀取點。由於計費結構的關係,許多單列點讀取作業的費用,都比一次長時間掃描作業高出許多。
在寫入資料後立即讀取 - 使用 Data Boost 讀取資料時,您可能無法讀取最近 35 分鐘內寫入的所有資料。如果您的執行個體使用複製功能,且您要讀取的資料是寫入至與讀取來源不同區域的叢集,就更是如此。詳情請參閱「一致性權杖」。
對延遲時間敏感的工作負載 - Data Boost 著重於處理量,因此使用 Data Boost 讀取資料時,延遲時間會比使用叢集和節點讀取資料時更長。因此,Data Boost 不適合用於應用程式服務工作負載。
如要進一步瞭解 Data Boost 不支援的工作負載、設定和功能,請參閱「限制」。
Data Boost 應用程式設定檔
如要使用 Data Boost,請透過 Data Boost 應用程式設定檔傳送讀取要求,而非標準應用程式設定檔。
標準應用程式設定檔可讓您指定使用應用程式設定檔的要求的轉送政策和優先等級,以及是否允許單列交易。使用標準應用程式設定檔傳送的流量會轉送至叢集,而該叢集的節點會將流量轉送至磁碟。詳情請參閱「標準應用程式設定檔總覽」。
另一方面,使用 Data Boost 應用程式設定檔時,您會為執行個體的其中一個叢集設定單叢集轉送政策,而使用該應用程式設定檔的流量會採用無伺服器運算,而非叢集的節點。
您可以建立新的 Data Boost 應用程式設定檔,也可以轉換標準應用程式設定檔,改用 Data Boost。建議您為每個工作負載或應用程式使用不同的應用程式設定檔。
一致性權杖
如果資料寫入或複製到目標叢集的時間,距離讀取要求發出時間超過 35 分鐘,Data Boost 就能讀取該資料。
您可以建立並使用一致性權杖,在啟動 Data Boost 工作負載前,確認特定寫入工作或時間範圍的資料可供 Data Boost 讀取。範例工作流程如下:
- 將一些資料寫入資料表。
- 建立一致性權杖。
- 在
DataBoostReadLocalWrites
模式中傳送權杖,判斷目標叢集上的 Data Boost 何時可讀取寫入內容。
您可以先在 StandardReadRemoteWrites
模式中傳送一致性權杖,然後再檢查資料複製一致性,最後檢查 Data Boost 一致性。
詳情請參閱 CheckConsistencyRequest 的 API 參考資料。
配額與帳單
Data Boost 用量以無伺服器處理單元 (SPU) 為單位計算,1,000 個 SPU 等於一個節點的效能。與佈建的節點不同,只有在您使用 Data Boost 時,SPU 才會產生費用。每項要求至少會產生 60 個 SPU 秒數的費用,且每秒至少會收取 10 個 SPU。如要進一步瞭解 Data Boost 定價,請參閱 Bigtable 定價。
系統會為您分配配額,並分別計算 SPU 的配額和費用,以及節點的配額和費用。
資格指標
Data Boost 專為高處理量掃描而設計,工作負載必須相容,才能使用 Data Boost。將標準應用程式設定檔轉換為使用 Data Boost,或為現有工作負載建立 Data Boost 應用程式設定檔之前,請先查看 Data Boost 資格指標,確認您的設定和用量符合必要條件。此外,請務必詳閱限制。
監控
如要監控 Data Boost 流量,請在Google Cloud 控制台的 Bigtable 系統洞察頁面中,查看 Data Boost 應用程式設定檔的指標。如需應用程式設定檔可用的指標清單,請參閱「Bigtable 資源的系統洞察圖表」。
如要監控無伺服器處理單元 (SPU) 用量,請在 Bigtable 系統洞察頁面的「應用程式設定檔」分頁中,查看 SPU 用量計數 (data_boost/spu_usage_count
) 指標。
開始使用 Data Boost 後,您也可以繼續監控應用程式設定檔的資格指標。
限制
Data Boost 不支援下列工作負載屬性和資源設定。
- 寫入和刪除
- 以點讀取 (單一資料列讀取) 為主的流量
- 每個叢集每秒超過 1,000 次讀取
- 反向掃描
- 變更串流
- 要求優先順序
- 多叢集轉送
- 單一資料列交易
- 地區端點
- HDD 執行個體
- 用於 Bigtable 查詢的 GoogleSQL
- Bigtable Studio 查詢建立工具查詢
- 使用 CMEK 加密的執行個體
- 不相容的用戶端程式庫。您必須使用 Bigtable Java 用戶端 2.31.0 以上版本。
- 如要使用
BigtableIO
讀取 Bigtable 資料的 Dataflow 工作,必須使用 Apache Beam 2.54.0 以上版本。 - 如要使用
CloudBigtableIO
讀取 Bigtable 資料,Dataflow 工作必須使用bigtable-hbase-beam
2.14.1 以上版本。
- 如要使用