iT邦幫忙

2022 iThome 鐵人賽

DAY 20
0
IT管理

Azure開發者必備掌握的基本系列 第 20

Azure開發者必備掌握的基本_第20天_Azure Table Storage

  • 分享至 

  • xImage
  •  

Azure Table Storage(Azure 資料表儲存體):主要適用於存取非關連式的資料

也就是所謂NoSQL的Schema Free種類的資料
主要是key-value pair形式存取
常見的NoSQL基本上就大方向分為:

基於memory型態的Redis
Redis開發學習(1)_Windows上安裝教學_VisualStudio C# StackExchange.Redis套件配置教學
https://coolmandiary.blogspot.com/2019/04/redis1windowsvisualstudio-c.html
Redis開發學習(2)_In-memory database跟On Disk(Relational) database比較_cli的基礎20大指令(資料型態介紹)
https://coolmandiary.blogspot.com/2019/04/redis2in-memory-databaseon.html

基於檔案型態的MongoDB
MongoDB教學(一)_下載安裝_基礎指令
https://coolmandiary.blogspot.com/2021/01/mongodb.html

https://ithelp.ithome.com.tw/upload/images/20221002/20107452OdCavEg78f.png

那Azure本身提供Table Storage的schemaless design雲服務
基本上特性是在於
table集合是由許多entity組成而每一筆entity都有各自不同(不統一的)的properties
(備註: Entity是被很多properties所組成的,每一個property 是採用key(name)-value pair的Entity。)

Azure Table Storage基本上會分為
Partition Key:字串型態,用於做辨識這個entity是位於哪個table集合。
Row Key:字串型態,則是一種unique的唯一識別用途

Partition Key會依附Row Key藉此來做為唯一識別的組合於table集合中進行辨別。
(PartitionKey 值會識別特定的分割,而 RowKey 值會識別該分割中實體的子集。)

  • 為大量讀取應用程式中的查詢進行設計。當您在設計資料表時,請先考量您將執行的查詢 (特別是無法容忍延遲的查詢),然後再考量更新實體的方式。 透過這樣的方式,通常可造就一個有效率且高效能的解決方案。

  • 在查詢中同時指定 PartitionKey 和 RowKey。像這樣的「點查詢」是最有效率的資料表服務查詢。

  • 考慮儲存實體的重複複本。資料表儲存體成本較低,故請考慮使用不同索引鍵多次儲存相同的實體,讓查詢更有效率。

  • 考慮反正規化您的資料。資料表儲存體成本較低,故請考慮將您的資料反正規化。 例如儲存摘要實體,可讓彙總資料的查詢只需存取單一實體。

  • 使用複合索引鍵值。您所擁有的索引鍵只有 PartitionKey 和 RowKey。 例如,使用複合索引鍵值啟用替代的實體索引鍵式存取路徑。

  • 使用查詢投影。您可以使用僅選取所需欄位的查詢,降低透過網路轉送的資料量。

Ref:
https://learn.microsoft.com/zh-tw/azure/storage/tables/table-storage-overview
https://learn.microsoft.com/zh-tw/azure/storage/tables/table-storage-design-guidelines?source=recommendations
https://learn.microsoft.com/zh-tw/azure/storage/tables/table-storage-design-for-query#how-your-choice-of-partitionkey-and-rowkey-impacts-query-performance
https://learn.microsoft.com/zh-tw/azure/cosmos-db/table/create-table-dotnet?tabs=azure-cli%2Cwindows


上一篇
Azure開發者必備掌握的基本_第19天_藉由C# API進行Blob日常操作
下一篇
Azure開發者必備掌握的基本_第21天_Azure Table Storage_操作與C# API常見操作
系列文
Azure開發者必備掌握的基本30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言