日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Microsoft SQL Azure论文笔记

發布時間:2024/2/28 数据库 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Microsoft SQL Azure论文笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Microsoft SQL Azure

本筆記出自論文《Extreme Scale with Full SQL Language Support in Microsoft SQL Azure》和一些網絡資料。論文在開頭就提到了,很多互聯網行業做出的存儲產品如Google BigtableYahoo PNUTSAmazon Dynamo等,其提供的ACID事務、一致性保證是和傳統的關系型數據庫有很大區別的。互聯網行業通過其上層業務的抽象,將一致性及事務限制在特定的consistency domain中,從而支持大規模的存儲需求。如Bigtable的EG,以及本文將要講到的partition key。

Azure SQL的設計初衷,就是為了在享受大規模分布式存儲的有點的同時,仍能保有傳統關系型數據庫的大部分特性。

基本架構

  • global shard map manager:也叫global partition manager用來存儲所有數據的shard信息,這個shard我們后面會講到
  • Database Engine:一個個單獨魚腥SQL Server的物理進程,他們之間相互隔離
  • Protocal Gateway:協議網關負責將用戶的請求轉發到對應的replica上
  • Distributed Fabric:分布式基礎組件,用以維護節點狀態,選主等等。
  • 數據模型

    Azure SQL將數據劃分為多個分區,通過限制事務只能在一個分區執行來規避分布式事務。集群數據多副本采用Quorum,每份數據都會有primary replica。

    Azure SQL通過表(這里只廣義上的表,既可以值關系型數據庫中的表table,也可以指存儲Blob,Queues等)的某key作為索引,我們稱之為Partition key。將表中的數據打散到后端不同存儲節點上。只要partition key相同,則數據會分布在同一臺服務器上。

    通過這種方式,同一partition key的數據shard總是分布在一臺服務器上,Azure SQL可以天生很好的支持READ COMMITTED隔離級別,但是如果想使用更高的隔離級別,比如REPEATABLE READ,就必須要持有垮shard的鎖,這會使性能下降很多。

    另外Azure SQL還支持快照隔離

    復制

    Azure SQL采用Quorum協議,所有的sql語句經過主副本下發,三副本的數據至少成功兩副本才能返回,主副本在發送事務的時候會帶上事務提交順序號(Commit Sequence Number CSN),從而作為回復和回滾的依據。

    如果節點發生了故障,之前講到的global partition manager會執行故障分區的Reconfigration,首先它會選擇一臺負載較輕的機器增加到當前副本集中,拷貝數據,然后重新配置Quorum。由于使用了Quorum,所以數據在集群中的復制優先級也不一樣(有的副本復制了三份,有的只復制了2份),優先級也是由global partition manager來控制的。

    顯而易見的是,集群負載較大時,primary replica會成為熱點,這時global partition manager會從三副本中重新選擇一個副本,提升為主primary replica。由于不涉及副本數據的遷移,這種負載均衡較為迅速。

    多租戶

    Azure SQL是面向多租戶的云數據庫,因此要限制客戶使用的系統資源:

  • 系統資源的監控與分配,包括CPU、內存、存儲QOS等等
  • SQL數據庫的容量限制,如果超過容量則不能寫入。
  • 后端存儲節點Database Engine的資源分配,不能寫滿后端存儲節點。
  • 參考鏈接

  • Azure SQL Data partitioning strategies
  • SET TRANSACTION ISOLATION LEVEL (Transact-SQL)
  • Distributed Storage: How SQL Azure Replicas Work
  • 總結

    以上是生活随笔為你收集整理的Microsoft SQL Azure论文笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。