首页 文章 精选 留言 我的
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/73176

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

数据库拆分的几种方式

数据库做拆分的几种方式:1.按功能划分(垂直切分) 将不同功能相关的表放到不同的数据库中,这样做的好处是非常直观。但当某一部分的功能其数据量或性能要求超出了可控的范围,就需要继续对其进行深入的再切分。 2.按表中某一字段值的范围划分(水平切分) 当伴随着某一个表的数据量越来越大,以至于不能承受的时候,就需要对它进行进一步的切分。一种选择是根据key 的范围来做切分,譬如ID 为 1-10000的放到A上,ID 为10000~20000的放到B。这样的扩展就是可预见的。另一种是根据某一字段值来划分,譬如根据用户名的首字母,如果是A-D,就属于A,E-H就属于B。这样做也存在不均衡性,当某个范围超出了单点所能承受的范围就需要继续切分。还有按日期切分等等。 优点:单表大小可控,天然水平扩展 缺点:无法解决集中写入瓶颈的问题 3.基于hash的切分 一般采用mod来切分,一开始确定切分数据库的个数,通过hash取模来决定使用哪台。这种方法能够平均地来分配数据,但是伴随着数据量的增大,需要进行扩展的时候,这种方式无法做到在线扩容。每增加节点的时候,就需要对hash 算法重新运算。 所以采用这种方...

软件架构师应该知道的97件事

转载朋友翻译的文章:软件架构师应该知道的97件事 1. 客户需求重于个人简历 ( Nitin Borwankar ) 客户需求至上。为了自己的简历更炫而采用新技术是沽名钓誉,往往事与愿违。 2.简化根本复杂性 ,消除偶发复杂性( Neal Ford ) 分析问题好比拨云见月、水落石出。 3. 关键问题可能不是出在技术上 ( Mark Ramm ) 团队同心,其利断金。 4. 以沟通为中心,坚持简明清晰的表达方式和开明的领导风格 ( Mark Richards ) 沟通应当言简意赅、详略得当,别拖泥 带水。 5.架构决定性能( Randy Stafford ) 种瓜得瓜,种豆得豆,架构设计也是一 样道理。 6.分析客户需求背后的意义( Einar Landre ) 抽丝剥茧,洞见症结。不要被表面需求 迷惑。 7. 起立发言 ( Udi Dahan ) 起立发言效果更好。 8.故障终究会发生( Michael Nygard ) 应该提前设计预防措施,限制故障。 9.我们常常忽略了自己在谈判( Michael Nygard ) 工程师应该适时转换角色,学习谈...

相关文章

发表评论

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Apache Tomcat

Apache Tomcat

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Eclipse

Eclipse

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。