作者:Jason204 | 可以转载,
但必须以超链接形式标明文章原始出处和作者信息及版权声明
网址:http://jason204.iteye.com/admin/blogs/1676984
1. 背景
NOSQL家族包括KeyValue、BigTable-style、Document、Full-Text
Search、Graph等数据库,如下图所示。
解决类似Bigtable/Hbase/Cassandra等列存储NOSQL的建模问题,下文介绍NOSQL的建模技术。(下文所提及的NOSQL默认为列存储NOSQL)
2. NOSQL建模
2.1 非规范化(Denormalization)
简单地说,在3NF建模中,那就是数据冗余、重复。解决查询数据量、处理复杂性(多Join关联)的问题。
2.2 复制(Duplication)
2.3 Intelligent 键(Keys)
Intelligent键,是由查询条件的属性列组合,以便查询。
2.4 聚合(Aggregates)
Nosql具有软模式性(soft-schema),也就是列族(column families),列( columns), 和时间戳(
timestamped
versions)。软模式允许复杂的结构(内嵌实体)和特殊实体具有不同结构,one-to-many关系最小化利用内嵌实体,异构实体差异利用公共表表达。举例如下图,利用单一聚合表(product)建模产品的所有类型和属性。
2.5 应用方面的关联
在Nosql中,很少支持关联特性,经常在模型设计阶段被处理,利用非规范化、聚合(内嵌实体)避免关联,而不像RDBMS在执行阶段处理。但是下面情况是无法避免的,而且必须在应用层处理。
· Many-to-many
· 由于内嵌实体常变动,聚合不能应用。例如,信息系统含有内嵌信息实体的用户实体(左图,Static
one-to-many),信息实体经常Append,建议剥离信息实体,然后在查询阶段再关联用户实体(右图,Dynamic-Many-to-Many)。
2.6 索引表(Index Table)
创建和维护Key(用于访问模式)的特殊表。例如,主表存储用户帐户,通过user
ID访问;一条查询,通过特定的城市返回所有用户,通过维护城市为关键字的特殊表来实现。
3. 参考文献
Cloud Data Structure Diagramming
Techniques and Design Patterns
NoSQL Data Modeling
Techniques
- 大小: 188.4 KB
- 大小: 30 KB
- 大小: 27.1 KB
- 大小: 56.7 KB
分享到:
相关推荐
1. 自动分片(Automatic Sharding):Oracle NoSQL数据库通过自动分片技术将数据分布在多个节点上,确保数据的分布均匀,从而提高读写性能和系统的可扩展性。分片策略使得在大数据量下依然能保持高效的数据处理能力...
《NoSQL数据库技术实战》是腾讯公司前资深后台工程师倾力打造的一本专著,针对大数据时代的开发者,提供了丰富的知识内容。这本书旨在帮助读者全面理解并掌握NoSQL数据库的使用,从基础操作到高级技术,再到核心原理...
4. **最佳实践**:分享了实施NoSQL项目时的一些最佳实践,包括数据建模技巧、性能优化方法等。 5. **未来趋势展望**:对NoSQL技术和Polyglot Persistence的发展趋势进行了预测,为读者提供了前瞻性的思考。 通过...
通过他及CATechnologies团队的努力,未来可能会出现更加成熟的数据建模工具,从而更好地融合传统RDBMS和NoSQL的建模技术。 总的来说,朱金宝的演讲所涉及的内容,不仅是对两种不同数据库技术的对比,也是对数据建模...
### 基于文档模型的NoSQL数据库逻辑建模 #### 一、引言 近年来,随着互联网技术的快速发展及物联网(IoT)的普及,数据量呈现出爆炸性增长的趋势。传统的集中式、向上扩展的关系数据库系统在面对大规模数据处理时...
本资料“NoSQL数据库技NoSQL最新技术发展趋势.zip”可能包含有关NoSQL数据库的最新趋势、最佳实践和关键特性等内容。 1. **NoSQL类型** - 键值存储:如Redis、Amazon DynamoDB,以键值对形式存储数据,适合快速...
此存储库的目的是演示在将Cosmos DB用作数据库时的一些NoSQL建模和查询技术以及决策。 IMDb shares their data for non-commercial use only. Please respect their data policies. Information courtesy of IMDb ...
在IT行业中,数据库管理是至关重要的领域,它涵盖了多种技术和工具,如SQL、关系数据库以及NoSQL等。本文将深入探讨这些关键知识点,帮助你掌握高效的数据管理与操作技巧。 首先,我们来看SQL(Structured Query ...
技术关键词: SQL、NoSQL、数据库优化、数据建模 内容关键词: 数据库设计、查询优化、事务处理 用途: 学习有效管理和操作数据的技术和方法 资源描述: MySQL 官方文档提供了全面的 MySQL 数据库管理指南,包括安装、...
技术关键词: SQL、关系数据库、NoSQL 内容关键词: 数据建模、查询优化、事务处理 用途: 理解数据存储和管理的基本原理,确保数据的有效性和安全性 资源描述: "MySQL官方文档"提供了MySQL数据库的详尽文档和教程,...
技术关键词: SQL、NoSQL、数据库优化、数据建模 内容关键词: 数据库设计、查询优化、事务处理 用途: 学习有效管理和操作数据的技术和方法 资源描述: Coursera 上的《数据库管理原理》课程由知名大学教授授课,涵盖了...
随着互联网技术的发展和大数据时代的到来,传统的关系型数据库(如MySQL)已经无法满足某些特定场景的需求,这时NoSQL数据库应运而生。本文将深入探讨NoSQL数据库及其与MySQL的对比。 **NoSQL的起源与概念** NoSQL...
在本文中,我将介绍一种利用统一数据建模技术管理NoSQL与关系型数据库的方案。统一数据建模支持多种特性,例如为NoSQL数据库的模式生成文档,以及对现有数据库中的数据进行反向工程。它同时也支持对现有数据库的可视...
学习数据挖掘和数据建模,你需要理解各种算法的原理,掌握如何预处理数据,选择适当的建模技术,以及如何评估和优化模型。同时,熟悉SQL和NoSQL数据库的优缺点,能够根据项目需求灵活选择,将有助于提升数据分析和...
本书《NoSQL & SQL Data Modeling》由Ted Hills撰写,专注于数据建模领域,涵盖了NoSQL与SQL数据库的数据建模技术。作者通过结合数据、语义和软件的综合视角,为读者提供了对实体关系建模、统一建模语言、面向对象...