GCP 儲存空間(上):常見雲端儲存服務簡介與比較 - iKala Cloud
文章推薦指數: 80 %
Google 根據不同的類型及需求,在GCP 上提供了多種不同的存儲服務。
本文將根據產品特性來介紹Cloud Storage/ Cloud Datastore / Cloud Bigtable ...
Skiptocontent
技術部落格
集結國內外精選文章,掌握最新雲端技術新知與應用
首頁
/
資料管理與分析
/
GCP儲存空間(上):常見雲端儲存服務簡介與比較
a
GCP儲存空間(上):常見雲端儲存服務簡介與比較
2021/11/04
類別:
資料管理與分析
作者:
iKalaCloud
GCP的儲存空間與資料庫–各產品介紹
Google根據不同的類型及需求,在GCP上提供了多種不同的存儲服務。
本文將根據產品特性來介紹CloudStorage/CloudDatastore/CloudBigtable/CloudSQL。
GoogleCloudStorage
GoogleCloudStorage(GCS)是Objectstorage,易於管理、耐久性好、實用性高。
為了能讓您更了解GCS,以下是GCS服務的架構。
(示意圖如下)
•GCPProject:收費的單位
•Bucket:用於存儲資料的容器
•Object:要被存儲的資料
當您新增一個bucket來存儲資料時,可同時指定此bucket的名字、資料存放的地點、預設的bucket的storageclass。
(之後您也可以為每一個object更改storageclass)
GoogleCloudStorage裡總共有四種類別。
根據不同的class,可用性,最短保留期限,計價方式皆有所不同。
(如下表)
可用性
最短保留期限
計價方式(GB/月)
存取頻率
Multi-regional
99.95%
無
$0.026*
Dataretrieval:免費
高,在regional之間
Regional
99.9%
無
$0.02*
Dataretrieval:免費
高,在一個regional之內
Nearline
99.0%
30天
$0.01*
Dataretrieval:$0.01/GB
約1次/月
Coldline
99.0%
90天
$0.007*
Dataretrieval:$0.05/GB
約1次/年
*依台灣地區(asia-east1)計算。
資料來源
不論是哪一種類型,都支援以下幾點:
• 透過一樣的工具和API去存取資料(XMLAPI、JSONAPI、GCPconsole等)
•資料保護:皆具備相同的OAuth,對於資料存取有嚴謹的控制
•以保持高耐久性為設計初衷(99.999999999%的可持續性)。
•低延遲性(第一個byte的傳輸時間約為幾十毫秒)
•使用加密來提高存儲相同資料的安全性
Performance
每個bucket最初的IO容量約為每秒1000個writerequest和5,000個readrequest。
這代表對於1MB的object,每月總共可以寫入2.5PB和讀取13PB。
如果特定的bucket讀寫需求提高,CloudStorage會自動的此bucket的IO容量分散到多個伺服器之中。
存取控制
您可以透過結合以下選項來了解GoogleCloudStorage的存取控制。
•IAM權限:允許存取Project裡的所有bucket和object。
透過IAM,您可以控制對整個project所有bucket和object的存取權限,但是無法針對個別bucket或是object做控制
•Accesscontrollist(ACL):允許對各個bucket和objects進行讀寫的存取。
當您需詳細地控制個別的資源時,可以使用ACL。
•SignedURL:透過被產生的URL網址可以進行存取和讀寫。
無論取得共享網址的人是否擁有Google帳戶,每個取得共享網址的人皆可在特定的時間存取object。
•Signedpolicydocument:指定可以上傳到bucket的內容。
在政策文件中,可以比SignedURL更精準地掌握像是檔案大小、內容類型等上傳特徵。
網站擁有者可透過Signedpolicydocument允許訪問者將檔案上傳到GoogleCloudStorage。
(延伸閱讀:4種方法,確保CloudStorage中的資料隱私與安全性)
GoogleCloudBigtable
CloudBigtable是高擴展性的NoSQL資料庫,適用於低延遲性和高生產量的工作負載。
它是一個分散式儲存的資料庫,可以擴展到數十億行和數千列,這讓您可以儲存數TB和數PB的資料。
它也同時具備高實用性,當您寫入資料時,它將被同步複製到3個(或以上)的伺服器。
如下圖所示,當您使用BigTable時,客戶端的請求將通過前端伺服器發送到Bigtablenode。
(Bigtablenode>Bigtablecluster>Bigtableinstance)。
一個cluster的請求分別會由多個node所各自處理,所以在cluster上增加越多的node就可處理更多的請求。
從Bigtable表格內部可分為多個“tablets”,tablets存儲在Google的資料系統中。
每個tablets皆與個別的Bigtablenode相關。
資料並非存儲在node上,但每個node都有一個指向一組tablets的pointer。
因此,將如下圖所呈現:
•Tablet在nodes之間的移動(重新調整)很快。
→實際資料不會被複製,只會更新每個node的pointer。
•Node從failure中恢復得很快。
→如果您要取代一個node,您只要將metadata移動至新的node即可。
•即使node發生故障,資料也不會遺失。
當您要使用Bigtable時,請新建一個BigtableVM。
它預設是3個node,但您也可以透過新增node來增加生產量和QPS(每秒queries的次數)。
在Bigtable中,資料存儲在一個高擴展性的表格中。
這個表格是由行跟列所組成,每一行中都有一個值註冊在index中,該值將成為該行的關鍵字。
您可以掃描關鍵字但不能掃描列的名稱。
此外,Bigtable僅支援對單一個row的transaction,不支援跨row的transaction。
Bigtable在設計上藉由限制資料一致性(consistency)的範圍(只確保對單一個row的consistency而不支援跨row的consistency),來增加服務的可擴展性(scalability)。
也就是說因為兩個row可能在不同機器上所以做不到consistency。
但是因為row可以分散到很多不同機器上,所以擴展性會比較好。
Performance
如果運作正常,下表是每個node的performance數據。
它可能會因loading和行列的規模而有所差異。
存儲類型
Read
Write
Scan
SSD
10,000QPS*@6毫秒
10,000QPS@6毫秒
220MB/s
HDD
500QPS@200毫秒
10,000QPS@50毫秒
180MB/s
*QPS(每秒查詢次數)
GoogleCloudDatastore
Datastore是一個高擴展性且完全代管的NoSQL資料庫,可以使用在應用程式的後端。
它是個可自動處理被存放於多個伺服器資料的資料庫,也會根據應用程式的loading進行自動的複製和調節。
這項功能也同時被用在GoogleAppEngine的資料庫中。
Datastore是基於Bigtable的架構進行設計,同時也補足了Bigtable中所欠缺的功能。
資料會被轉換成bytearray並儲存於Bigtable中。
•ACIDtransaction:transaction是可選擇的。
和Bigtable相比,Bigtable僅支援一行的transaction,Datastore最多可支援到25行。
•SQL類的查詢:Datastore可利用索引(index)來取得符合特定條件的object。
但需注意的是,在使用索引查詢時有些限制(例如:吻合部分字元串、不支援全文搜索..等)。
•索引:Datastore的queries是透過一至多個索引來計算。
在datastore中,你可以根據某一類entity的一連串property定義index。
*註:在datastore中,property代表著一般SQLdatabase的field(某個欄位),entity則是對應到row。
GoogleCloudSQL
GoogleCloudSQL在GCP上提供了完全代管的MySQL和PostgreSQL資料庫。
在MySQL功能上,CloudSQL與那些提供本地代管服務幾乎相同。
CloudSQL具備高效能和高擴展性,每個VM提供高達10TB的存儲容量、25,000IOPS、208GB的記憶體。
GoogleCloudSQL可以自動完成像是備份、複製、修改程序、更新等功能。
也因為它使用GoogleComputeEngine,您可以通過即時搬遷來保障高可用性。
當然它也可以輕鬆地與GoogleComputeEngine和GoogleAPPEngine等GCP其他服務合作。
統整GCP各存儲服務
經過上述的介紹,以下為您統整了GCP上的各存儲服務。
CloudStorage
Bigtable
Datastore
CloudSQL
儲存類型
Object(BLOB)Store
NoSQL
Widecolumn
NoSQL
Document
RelationalSQL
要儲存的資料類型
二進制資料
objectdata
RAWbyte
characterstring
整數、小數點、文字串、日期、二進制資料
MySQL支援的資料類型如:整數、小數點、文字串、日期、二進制資料、BLOB類型
延遲
小於約5毫秒(針對同一地區的網絡延遲)
Transaction管理
×
×
◯
◯
資料儲存區域
-Multi-Regional:
US/EU/Asia
-Regional:
US/EU/Asia
Selectonlyzone.
(US/EU/Asia)
-Multi-Regional:US/EU
-Regional:
US/EU/Asia
-Regional:
US/EU/Asia
可選擇台灣地區
◯
◯
×
(亞太區僅有東京、雪梨)
◯
Complexquery
×
×
×
◯
資料加密
◯
◯
◯
◯
講到這邊,歡迎繼續閱讀下一篇:Google儲存空間(二):CloudStorage/Datastore/Bigtable/SQL計價方式與使用優勢了解詳細的計價方式,以及GoogleCloud儲存空間的具體優勢吧!
瞭解更多:該為您的資料選擇哪一個GCP存儲服務
(原文改寫自:https://www.apps-gcp.com/gcp-storage-service/)
BigtableCloudStorageDatastore
分享本文:
Prev上一篇[教學]如何使用GoogleCloudStorage建立靜態網站
下一篇【實用教學】4種方法,將資料傳輸到GoogleCloudNext
文章分類
分類
AI與機器學習(43)
LINE獨家選文(2)
基礎架構(61)
寫手專欄(3)
應用程式現代化(28)
最新消息與洞察(70)
生產力與協作(8)
產業解決方案(62)
資料管理與分析(50)
資訊安全(28)
近期文章
運用GoogleWorkspace提升開發者的敏捷性與效率
2022/10/13
【寫手專欄】AWS雲端資訊安全系列2–IAM簡介與實務操作
2022/09/30
SplunkDataflow串流途徑的可觀察性新功能,幫助企業密切關注streamingpipeline效能
2022/09/26
為CloudSpanner引進細粒度instance調整,運行生產工作負載的費用降至40美元/月
2022/09/14
AWSGraviton3處理器提供全新的AmazonEC2C7g實例,提升25%性能和50%存取速度
2022/08/25
標籤雲
標籤AI
Anthos
API
Apigee
APIM
AutoML
AWS
Azure
BigQuery
Bigtable
CloudArmor
CloudFunctions
CloudMonitoring
CloudPub/Sub
CloudStorage
Dataflow
Firebase
GAE
GCE
GCP
GKE
GoogleAnalytics
GoogleCloud
GoogleKubernetesEngine
GoogleMeet
GoogleWorkspace
GSuite
Kubernetes
Loadbalancing
Looker
Migration
ML
NetworkIntelligenceCenter
Security
Stackdriver
Tensorflow
VPC
安全
機房
製造
資料倉儲
資料分析
遊戲
金融
電商
iKalaCloud
回到頂端
繁體中文
English
日本語
延伸文章資訊
- 1Cloud Storage 教學―使用方式、費用節省訣竅完整介紹
Cloud Storage 是Google Cloud 的儲存服務。在這篇文章裡面,您將會了解到Cloud Storage 的儲存空間級別介紹,及設定Cloud Storage的生命週期管理功能...
- 2Storage 移轉服務定價 - Google Cloud
Storage 移轉服務在來源與目的地中,針對網路用量和作業執行的常見費用包括:. 重新寫入作業,以便在Cloud Storage 值區之間移動資料。 每個轉移物件的 GetObject 要求 ...
- 3Cloud Storage簡介 - Google Cloud Platform In Practice - GitBook
Cloud Storage (GCS) 為Google新一代Object Storage,以Google Datacenter的規模,提供GCP的開發者使用。是為具備高性能、全球網際網路存取規模...
- 4@google-cloud/storage - npm
Cloud Storage allows world-wide storage and retrieval of any amount of data at any time. You can ...
- 5GCP 儲存空間(上):常見雲端儲存服務簡介與比較 - iKala Cloud
Google 根據不同的類型及需求,在GCP 上提供了多種不同的存儲服務。本文將根據產品特性來介紹Cloud Storage/ Cloud Datastore / Cloud Bigtable ...