在 SSD 及 HDD 儲存空間之間做出選擇

當您建立了一個 Cloud Bigtable 的執行個體時,您須選擇其叢集要將資料儲存於固態硬碟 (SSD) 或是傳統硬碟 (HDD)。

  • 在大多數的情況下,SSD 的儲存空間是最有效且最具成本效益的選擇。
  • HDD 儲存空間通常適用於不易受延遲時間影響或不常存取的超大型資料集 (>10 TB)。

不管您選取了哪一種儲存型態,您的資料都會被儲存於橫跨多個實體硬碟的分散式複製檔案系統中。

此頁面的指南將幫助您選擇 SSD 或 HDD。

若不確定,選擇 SSD 儲存空間就對了

以下數個原因說明為何使用 SSD 儲存空間儲存您的 Cloud Bigtable 叢集是比較好的選擇:

  • 與 HDD 相比之下,SSD 快速許多且其效能可控制在預期範圍內。 在 Cloud Bigtable 中,SSD 儲存空間能為 99% 的請求提供 6ms 的讀寫延遲。而 HDD 儲存空間在同一個基準下,僅能夠提供 200ms 讀取延遲以及 50ms 的寫入延遲。
  • 與 SSD 的總處理量相比,HDD 的總處理量較有限。 在叢集中採用 HDD 儲存空間,很容易在 CPU 使用率達到 100% 之前即達到最大總處理量。若要增加總處理量,您必須增加更多節點,不過額外節點所花費的成本很容易就超過您使用 HDD 儲存空間所省下的成本。SSD 儲存空間就沒有以上限制,因為其在單一節點提供了較大的總處理量。在一般情況下,採用 SSD 儲存空間的叢集只會在所有可用的 CPU 及記憶體都被使用的狀況下,才會達到最大總處理量。
  • HDD 的個別資料列讀取速度非常緩慢。 這是因為在磁碟搜尋時間,HDD 儲存空間支援的每秒資料列讀取數目只有 SSD 儲存空間的 5%。然而,大型的多資料列掃描作業則不會受到不利影響。
  • 相對於 Cloud BigTable 叢集節點的成本,除非您要儲存非常大量的資料,否則 HDD 節省的成本微不足道。 正因為上述原因,在基本原則下,您不應考慮使用 HDD 儲存空間,除非您要儲存 10TB 以上的資料。

使用 SSD 儲存空間有一項潛在的缺點,那就是當您儲存大量的資料時,您的叢集需要更多的節點。但實際上,您可能需要這些額外的節點,讓您的叢集足以負荷傳入的流量,而不僅是承受您儲存的大量資料。

HDD 儲存空間的使用案例

HDD 儲存空間適用於以下幾種情境:

  • 您希望儲存 10 TB 以上的資料。
  • 您不會將這些資料用於與使用者互動或易受延遲時間影響的應用。
  • 您的工作負載符合以下其中一種類別:

    • 會進行掃描及寫入的批次工作負載,但只是偶爾隨機讀取少量的資料列。
    • 資料封存,也就是您寫入大量資料但鮮少讀取資料之處。

例如,若您打算為大量的遠端感測裝置儲存豐富的歷史資料,並且用這些資料生成每日報告,則使用 HDD 儲存空間,以效能換取節省成本是可行的。但若您想要用這些資料來顯示即時資訊主頁,那麼使用 HDD 儲存空間是不合理的,因為在這種情況下會很頻繁地讀取資訊,而 HDD 儲存空間讀取速度相當緩慢。

切換 SSD 及 HDD 儲存空間

當您在 Cloud Bigtable 中建立資源及叢集時,您為叢集選擇 SSD 或 HDD 儲存空間後就無法變更。您無法從 Google Cloud Platform 主控台變更您對叢集所使用的儲存空間方式。

如果您需要將現有的 HDD 叢集轉換為 SSD,或從 SSD 轉換為 HDD,您可以從現有的執行個體匯出資料,然後匯入資料至新的執行個體。或者,您可以使用 Cloud Dataflow 或是 Hadoop MapReduce 工作來將資料從一個執行個體複製到另一個執行個體。請記住,移轉執行個體中的資料需要花費時間,所以在這之前您可能需要先為 Cloud Bigtable 叢集新增節點。

相關資源

使用 SSD 或 HDD 儲存空間來建立執行個體

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Cloud Bigtable 說明文件