图数据库的扩展、复制与原生特性解析
1. 大数据存储挑战与分片技术
从纯数据存储的角度来看,大数据应用面临着两个主要挑战,也就是通常所说的“4V”中的两个:
- 数据量(Volume) :涉及的数据量极为庞大,难以将数据存储在单台机器上。
- 速度(Velocity) :单台机器只能服务有限数量的并发用户。
虽然垂直扩展(如增加计算、存储和内存资源)可以暂时应对大量数据并改善多并发用户的响应时间,但最终数据会变得太大而无法存储在单个存储节点上,并且用户数量也会多到单台机器无法处理。
在NoSQL数据库中,一种常用的扩展技术是分片(Sharding)。分片是将大型数据集拆分,并将子集分布到不同服务器上的多个分片。这些分片通常会在多台服务器上进行复制,以提高可靠性和性能。分片策略决定了哪些数据分区应该发送到哪个分片,它可以由应用程序或数据存储系统本身管理。
对于“面向聚合”的数据模型,如键值、列族和文档数据库,分片是一个合理的解决方案。在这些存储中,检索任何存储项的键是明确且稳定的,查找机制既可预测(如一致性哈希)又快速(如使用布隆过滤器统计定位热副本)。在这种情况下,客户端存储或检索数据时很容易被引导到合适的分片。
然而,图数据模型高度“面向关系”,每个节点都可能与其他任何节点相关联,因此图的查找不可预测,且结构高度可变。在这种情况下,对图数据库进行分片并非易事,大多数解决方案都会面临扩展难题。
超级会员免费看
订阅专栏 解锁全文
404

被折叠的 条评论
为什么被折叠?



