浅谈数据库的分割技术[转载]

简介:

浅谈数据库的分割技术 
                                                                                          电信信息化部/周陈雄
关健词    读写分离分布,垂直分割,水平分割,虚拟化存储,wEB 缓存分割, 存储 CACHE 缓存分割


随着社会的日益进步, 各行业的运营支撑系统都面临着越来越大的压力, 承受着业务数 据量、访问并发数的飞速增长的双重巨大压力,在我们电信行业,同样面临着这样的难题, 是否有一套适合可行的方案来应对呢?

本文重点描述数据库的分割技术, 如果能适当的应用在生产中, 必然能极大减缓来自与 日俱增的业务量带来的巨大压力。

如何分割?我们可以从如下六个方面来考虑:

一、读写分离分布技术

由于数据库存在这样的特性, 索引可以提升查询的性能, 但却极大地影响了DML操作的性能。 面对此类矛盾很多人都很困惑, 其实我们可以对其进行分割, 将实时更新的数据库同步复制 到另外一个库中,该库以读操作为主,而索引则建立在只读库中,实现了最简单的读写分 离.当前计费应用中已经使用了该技术,采用的是 DSG 同步复制软件工具,取得了不错的 效果。 Myspace 公司早期(2004 年前后)只有 50 万用户时,数据库服务器无法满足当时的要 求.后来采用了三台 SQL SERVER 服务器,一个为主,所有数据向它提交,再由它复制到另 外两个库上,这样减少了压力,成功的度过了难关。

二、垂直分割技术

随着业务的发展,Myspace 公司在 2005 年用户达到了 200 万,存储成了最大的瓶颈. 此时该公司进行了第二次切割,对数据库采用垂直分割,分出多个数据库,不同数据库运行不同业务,这样极大的缓解了 IO,再次度过了难关。 在计费系统中, 也采用了这样的技术, 成功的将原有的数据库分离成账务 Cal、 统计 Stat、 计费 Bill 等多个数据库,也极大的缓解了 IO 的瓶颈,这也是成功的垂直切分技术的运用。

三、水平分割技术

Myspace 公司随着业务的飞速发展,很快在 2006 年实现了千万用户的飞速增长.这个 时候,由于业务量过于庞大,被切割出的每一个单独的业务难以避免产生了IO 瓶颈,这个时侯水平分割技术得以应用。Myspace 公司对所有的用户进行了水平分割,平均一个数据库保 存了多个用户及对应信息, 多的数据库用户数达到近 200 万个。 这样数据库无形中又被进行 了进一步的切割了, 变的更细小了, 无论是访问响应还是数据迁移, 都得到了极大的提升, Myspace 公司再次度过了难关! 当前电信诸多项目并未在水平切割上做太多的规划,实际上我们可以借鉴 Myspace 公 司的成功案例, 尝试将水平切割技术可以应用到我们电信项目中, 成为应对缓解数据库压力 的利器之一。

四、虚拟化存储技术

水平分割可以解决数据库主机的性能问题, 但是还可能存在这样的一种情况, 就是被切 割的数据库及用户可能存在有的访问量大, 有的访问量小的不均匀情况。 这个时侯我们可以 考虑引进现在新的存储技术,比如虚拟化存储技术,比较著名的有 3PARdata 的虚拟存储技术,让存储统一管理负载均衡。


五、WEB 缓存分割技术

Myspace 公司在 2008 年用户数终于突破了亿的大关,这个时候他们引进了新的技术,那就是数据缓存层技术,在 WEB 和数据库服务器之间做了一次分割,增加了一个能存储频繁 访问内容的数据库副本,这样极大地减少了访问的量,原先 1000 个用户查询同一数据,需查询数据库 1000 次,现在也许只需要 1 次。WEB 缓存切割成功地支撑住了过亿用户访问量的巨大压力。 当前网管项目组中通过自我编程的方式进行 WEB 缓存,并取得了不错的效果,这种思想正是切割技术的体现。

六、存储 CACHE 缓存分割技术

为了进一步提升在数据库方面的支撑能力, 最后 Myspace 公司在数据库和物 理存储中再次做了切割,引入了存储的多层 CACHE 机制,数据库在写入到多层 CACHE 后,交互就算完成,这样极大的减少了 IO 操作。而 CACHE 层面由于存在 断电的危险,所以,在除了不断电设备外,还做了多个 CACHE 镜像,保证了安全 性。 七、结束语 数据库的切割技术是一种重要的设计思想.Myspace 公司当前的月访问量达 400 亿,甚至超过了 YAHoo 公司,在成功引入并实施了这些切割技术后,依然运 行高效平稳! 我们电信项目组也有使用了相关的部分切割技术,并且取得了不错的效果。但是 随着业务发展的趋势, 仅仅当前采用的切割技术是不够的.不过相信我们只要有 这方面的良好意识, 能借鉴 Myspace 等公司的成功案例,就一定能在将来应对飞 速增长数据量的压力方面打个漂亮战.当然,光有分割的思想意识是不够的,实 施方面还有着相当的难度,无论开发、维护、业务需求、总体架构等各方面都需 综合考虑,任重而道远!

相关文章
|
28天前
|
Cloud Native OLAP OLTP
在业务处理分析一体化的背景下,开发者如何平衡OLTP和OLAP数据库的技术需求与选型?
在业务处理分析一体化的背景下,开发者如何平衡OLTP和OLAP数据库的技术需求与选型?
126 4
|
1月前
|
Cloud Native 关系型数据库 分布式数据库
开发者视角看云原生数据库一体化技术趋势
随着云原生数据库技术的不断发展,一体化数据库解决方案成为技术圈的热点,云原生数据库一体化技术是当前数据库领域的重要趋势,对于开发者而言,学习理解和应对这一趋势,对于业务开发的成功实施非常重要。比如,阿里云瑶池数据库和PolarDB-X等产品通过离在线一体化、处理分析一体化和集中分布一体化等创新理念,引领了数据库领域的新变革。那么本文就来从开发者的角度探讨云原生数据库一体化技术趋势,并分析在业务处理分析一体化、集中式与分布式数据库边界模糊和云原生一体化数据库的选择等方面的影响。
189 4
|
1月前
|
SQL 缓存 PHP
PHP技术探究:优化数据库查询效率的实用方法
本文将深入探讨PHP中优化数据库查询效率的实用方法,包括索引优化、SQL语句优化以及缓存机制的应用。通过合理的优化策略和技巧,可以显著提升系统性能,提高用户体验,是PHP开发者不容忽视的重要议题。
|
1月前
|
存储 数据管理 数据处理
数据之光:探索数据库技术的演进之路
数据之光:探索数据库技术的演进之路
60 1
|
2月前
|
关系型数据库 分布式数据库 数据库
阿里云PolarDB登顶2024中国数据库流行榜:技术实力与开发者影响力
近日,阿里云旗下的自研云原生数据库PolarDB在2024年中国数据库流行度排行榜中夺冠,并刷新了榜单总分纪录,这一成就引起了技术圈的广泛关注。这一成就源于PolarDB在数据库技术上的突破与创新,以及对开发者和用户的实际需求的深入了解体会。那么本文就来分享一下关于数据库流行度排行榜的影响力以及对数据库选型的影响,讨论PolarDB登顶的关键因素,以及PolarDB“三层分离”新版本对开发者使用数据库的影响。
75 3
阿里云PolarDB登顶2024中国数据库流行榜:技术实力与开发者影响力
|
2月前
|
存储 机器学习/深度学习 人工智能
打造企业智能体(AI Agent)的重要技术-向量数据库
本篇介绍的是为通用大模型增加专业业务能力的重要技术:向量数据库
打造企业智能体(AI Agent)的重要技术-向量数据库
|
14天前
|
存储 中间件 关系型数据库
数据库切片大对决:ShardingSphere与Mycat技术解析
数据库切片大对决:ShardingSphere与Mycat技术解析
23 0
|
27天前
|
SQL 关系型数据库 MySQL
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(8.0版本升级篇)
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(8.0版本升级篇)
96 0
|
2天前
|
SQL Java 数据库连接
Java从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
ava从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
|
9天前
|
存储 SQL 安全
6.数据库技术基础
6.数据库技术基础

热门文章

最新文章