分片数据库及表的建立
墨初 知识笔记 123阅读
分片数据库是什么?
答:分片是数据分布的具体实现描述,在数据库架构角度可理解为我们所说的分布式。 分片与分区很像,主要区别在于分片目的是可以灵活扩展服务器节点,提升计算能力。 以下正文: 任何能够看到显著增长的应用程序或网站最终都将需要扩展,以适应流量的增长。 对于数据驱动的应用程序和网站,至关重要的是扩展方式必须确保数据的安全性和完整性。 很难预测一个网站或应用程序将变得多么流行,或者保持这种流行度将持续多长时间,这就是为什么某些组织选择动态扩展数据库的原因。 在本文中,我们将讨论一种实现方式:分片数据库。 近年来,分片一直备受关注,但是许多人对分片是什么,或者对分片数据库在什么场景下有意义没有清楚的认识。 我们将讨论分片的含义,主要优点和缺点以及一些常见的分片方法。 什么是分片?
如何将数据分发到分片表或数据库?
答:在运行查询或将传入的数据分发到分片表或数据库时,关键是要将其分配到正确的分片。 否则,它可能导致数据丢失或查询速度缓慢。 在本节中,我们将介绍一些常见的分片架构,每个架构使用稍微不同的流程来跨分片分发数据。
为什么选择分片数据库架构?
答:选择分片数据库架构的另一个原因,是为了加速查询响应的时间。 当您对尚未分片的数据库提交查询时,必须先搜索您查询的表中的每一行,然后才能找到您要查找的结果集。 对于具有大型单片数据库的应用程序,查询可能变得极其缓慢。
数据分片是怎么实现的?
答:数据分片是在接口层实现的,目的是把数据均匀地划分到不同的VServer上。 有了接口层的存在,逻辑层寻址就轻量了很多,寻址存储层VServer的工作全部由接口层负责,逻辑层只需要随机选一个接口层机器访问即可。