数据存储模型

来源:互联网 发布:mac虚拟机配置文件 编辑:程序博客网 时间:2024/06/06 01:38

在互联网行业,通常需要高并发、高性能、高可用性的数据库系统。在处理大数据时,关系型数据库遭遇了瓶颈,这就促使我们思考从数据模型的根源入手,来解决性能上的问题。根据数据的存储模型和特点,NoSQL数据库分为很多种类,主要分为以下四个类型:键值模型、列式模型、文档模型与图形模型。


键值模型

实例:Dynamo、Redis、Voldemort

应用场景:内容缓存,主要用于处理大量数据的高访问负载,也用于一些日志系统

数据模型:key与value间建立的键值映射,通常用哈希表实现

优点:查找迅速

缺点:数据无结构化,通常只被当做字符串或者二进制数据


列式模型

实例:Bigtable、Cassandra、HBase

应用场景:分布式文件系统

数据模型:以列存储,将同一列数据存在一起

优点:查找迅速、可扩展性强,更容易进行分布式扩展

缺点:功能相对有限


文档模型

实例:CouchDB、MongoDB

应用场景:Web应用

数据模型:与键值模型类似,value指向结构化数据

优点:数据要求不严格,不需要预先定义结构

缺点:查询性能不高,缺乏统一查询语法


键值模型

实例:Neo4j

应用场景:社交网络、推荐系统、关系图谱

数据模型:图结构

优点:利用图结构相关算法提高性能

缺点:功能相对有限,不好做分布式集群解决方案








0 0
原创粉丝点击