分布式存储 海量数据无忧
大型电商的数据是海量的,解【jiě】决海量数据读和写【xiě】效率是架构的关键。我们的电商平台采用读写分离、分库分表等技术手段来应对海量数据的读写。
读写分离将数据库分为读库和写库【kù】,通过主备功能实现数据同步。分库分表则分为水平切分和垂直切分,水平切分则是对一个数据库特大的表进行拆分,例如用户表。垂直切分则是根据业务的不同来切分【fèn】,如用户业务、商品业务相关的表放【fàng】在不同的数据库中。
1) 垂直分库
数据库里【lǐ】的表太多,拿出部分到新的库里,一般是根据业务划分表,关系密切的表放同一数据库,应用修改数据库连接即可,比较简单。
2) 水平分库
某张表太大,单个数据库存储不下或访问性能有压力,把一张表拆【chāi】成多张,每张表存放部分记录,保存在不同的数据库里,水平分【fèn】库需要对系统做大的改造。
根据不同使用场景,结合数据存储模型来设计。首先搭建路由模块,根据不同规则进行分库路由操作。
例如:
保险行业投保,可以按区域来分库【kù】,不同区域省份可通过路由分发【fā】不同区域库, 通常上层架设服务总线,同构路由管道来管理。
电商系统,可以按商家、订单编号等维度来分库等。
© 2017 版权所有 北京瑞友科技股份有限公司 京ICP备10023829号-1