乱人伦 国语对白海角社区,五月激情丁香婷婷综合中文字幕,欧美伊人婷婷久久五月综合,亚洲精品无amm毛片,亚洲男人第一无码AV网站,国产日韩欧美丝袜一区二区,亚洲一区精品在线观看

分布式数据库:如何正确选择分片键?-彩神大发APP下载

分布式数据库:如何正确选择分片键?

2026-01-19 06:57:08投稿人:12BET彩票手機版(烏蘭察布)有限公司圍觀5273363 評論

分布式數(shù)據(jù)庫 :如何正確選擇分片鍵 ?


我們知道分布式數(shù)據(jù)庫是將數(shù)據(jù)打散到不同節(jié)點上存儲 ,從而提升性能與可靠性。那么今天我們來看看在分布式數(shù)據(jù)庫中,一個非常重要的設計 :正確地把數(shù)據(jù)分片 ,充分發(fā)揮分布式數(shù)據(jù)庫架構的優(yōu)勢。

選出分片鍵

在對表中的數(shù)據(jù)進行分片時,首先要選出一個分片鍵(Shard Key),即用戶可以通過這個字段進行數(shù)據(jù)的水平拆分。

對于我們之前使用的電商業(yè)務的訂單表orders,其表結構如下所示:

CREATE TABLE `orders` (  `O_ORDERKEY` int NOT NULL,  `O_CUSTKEY` int NOT NULL,  `O_ORDERSTATUS` char(1) NOT NULL,  `O_TOTALPRICE` decimal(15,2) NOT NULL,  `O_ORDERDATE` date NOT NULL,  `O_ORDERPRIORITY` char(15) NOT NULL,  `O_CLERK` char(15) NOT NULL,  `O_SHIPPRIORITY` int NOT NULL,  `O_COMMENT` varchar(79) NOT NULL,  PRIMARY KEY (`O_ORDERKEY`),  KEY `idx_custkey_orderdate` (`O_CUSTKEY`,`O_ORDERDATE`),  KEY `ORDERS_FK1` (`O_CUSTKEY`),  KEY `idx_custkey_orderdate_totalprice` (`O_CUSTKEY`,`O_ORDERDATE`,`O_TOTALPRICE`),  KEY `idx_orderdate` (`O_ORDERDATE`),  KEY `idx_orderstatus` (`O_ORDERSTATUS`),  CONSTRAINT `orders_ibfk_1` FOREIGN KEY (`O_CUSTKEY`) REFERENCES `customer` (`C_CUSTKEY`)) ENGINE=InnoDB

對于類似淘寶、京東、拼多多這樣業(yè)務體量的應用來說 ,單實例 MySQL 數(shù)據(jù)庫在性能和存儲容量上肯定無法滿足“雙 11 、618 ”大促的要求,所以要改造成分布式數(shù)據(jù)庫架構。

而第一步就是要對表選出一個分片鍵,然后進行分布式架構的設計。

對于上面的表orders ,可以選擇的分片鍵有 :o_orderkey