码迷,mamicode.com
首页 > 其他好文 > 详细

水平分库分表的关键问题及解决思路(转)

时间:2018-04-23 15:40:50      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:不同的   系统性能   nbsp   数据分布   存储   sql   web   需要   业务   

分片技术的由来

关系型数据库本身比较容易成为系统性能瓶颈,单机存储容量、连接数、处理能力等都很有限,数据库本身的“有状态性”导致了它并不像Web和应用服务器那么容易扩展。

单机存储容量、连接数、处理能力等都很有限,数据库本身的“有状态性”导致了它并不像Web和应用服务器那么容易扩展。

单机存储容量、连接数、处理能力等都很有限,数据库本身的“有状态性”导致了它并不像Web和应用服务器那么容易扩展。

单机存储容量、连接数、处理能力等都很有限,数据库本身的“有状态性”导致了它并不像Web和应用服务器那么容易扩展。

 

分布式全局唯一ID

在很多中小项目中,我们往往直接使用数据库自增特性来生成主键ID,这样确实比较简单。而在分库分表的环境中,数据分布在不同的分片上,不能再借助数据库自增长特性直接生成,否则会造成不同分片上的数据表主键会重复。简单介绍下使用和了解过的几种ID生成算法。

 

常见分片规则和策略

分片字段该如何选择

在开始分片之前,我们首先要确定分片字段(也可称为“片键”)。很多常见的例子和场景中是采用ID或者时间字段进行拆分。这也并不绝对的,我的建议是结合实际业务,通过对系统中执行的sql语句进行统计分析,选择出需要分片的那个表中最频繁被使用,或者最重要的字段来作为分片字段。

很多常见的例子和场景中是采用ID或者时间字段进行拆分。

很多常见的例子和场景中是采用ID或者时间字段进行拆分。

很多常见的例子和场景中是采用ID或者时间字段进行拆分。

选择出需要分片的那个表中最频繁被使用,或者最重要的字段来作为分片字段。

选择出需要分片的那个表中最频繁被使用,或者最重要的字段来作为分片字段。

选择出需要分片的那个表中最频繁被使用,或者最重要的字段来作为分片字段。

水平分库分表的关键问题及解决思路(转)

标签:不同的   系统性能   nbsp   数据分布   存储   sql   web   需要   业务   

原文地址:https://www.cnblogs.com/panxuejun/p/8918906.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!