`
jason204
  • 浏览: 40463 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

NoSQL建模技术

阅读更多

作者: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
分享到:
评论

相关推荐

    NoSQL数据建模技术

    这篇文章看完之后,你可能会对NoSQL的数据结构会有些感觉。我的感觉是,关系型数据库想把一致性,完整性,索引,CRUD都干好,NoSQL只干某一种事,但是牺牲了很多别的东西。总体来说,我觉得NoSQL更适合做Cache。下面...

    imdb:示例IMDb数据,以演示Cosmos DB的NoSQL建模和查询技术

    此存储库的目的是演示在将Cosmos DB用作数据库时的一些NoSQL建模和查询技术以及决策。 IMDb shares their data for non-commercial use only. Please respect their data policies. Information courtesy of IMDb ...

    朱金宝 - RDBMS&NoSQL统一数据建模

    2015 Oracle 技术嘉年华(OTN)分会场8朱金宝 - RDBMS&NoSQL统一数据建模

    知识领域: 数据库管理 技术关键词: SQL、关系数据库、NoSQL 内容关键词: 数据建模、查询优化、事务处理 用途: 理解数

    技术关键词: SQL、关系数据库、NoSQL 内容关键词: 数据建模、查询优化、事务处理 用途: 理解数据存储和管理的基本原理,确保数据的有效性和安全性 资源描述: "MySQL官方文档"提供了MySQL数据库的详尽文档和教程,...

    知识领域: 数据库管理 技术关键词: SQL、NoSQL、数据库优化、数据建模 内容关键词: 数据库设计、查询优化、事务处理 用

    技术关键词: SQL、NoSQL、数据库优化、数据建模 内容关键词: 数据库设计、查询优化、事务处理 用途: 学习有效管理和操作数据的技术和方法 资源描述: Coursera 上的《数据库管理原理》课程由知名大学教授授课,涵盖了...

    支持关系型数据库及NoSQL的统一数据建模方案

    在本文中,我将介绍一种利用统一数据建模技术管理NoSQL与关系型数据库的方案。统一数据建模支持多种特性,例如为NoSQL数据库的模式生成文档,以及对现有数据库中的数据进行反向工程。它同时也支持对现有数据库的可视...

    大数据实践之数据建模.pdf

    虽然近年来⼤数据的存储和计算基础设施在分布式⽅⾯有了飞 速的发展,NoSQL技术也曾流⾏⼀时,但是不管是Hadoop、Spark还是阿⾥巴巴集团的MaxCompute系统,仍然在⼤规模使⽤SQL进⾏数据的加⼯和处理, 仍然在⽤Table...

    2007数据分析与业务建模

    数据分析与业务建模:随着数据仓库的不断发展和成熟,“大数据”概念的风靡,有越来越多的相关产品出来,最常见的技术解决方案包括hadoop和hive,oracle,mysql的infobright,greenplum及nosql,或者多个结合使用。...

    NoSQL 简介

    1970年 E.F.Codd’s提出的关系模型的论文 “A relational model of data for large shared data banks”,这使得数据建模和应用程序编程更加简单。 通过应用实践证明,关系模型是非常适合于客户服务器编程,远远...

    二、大数据与分布式.pdf

    2.3 基于⽂档存储的 NoSQL 数据库 基于⽂档存储的 NoSQL 数据库以传统的⽂档存储技术为基础,存储模型以是 Key-Value 存储模型为基础,每个⽂档是⼀个 Key-Value 列 表,⽂档格式⼀般采⽤ JSON 或者类似于 JSON 的...

    大数据关键技术.doc

    突破分布式非关系型大数据管理与处理技术,异构数据的数据融 合技术,数据组织技术,研究大数据建模技术;突破大数据索引技术;突破大数据移动 、备份、复制等技术;开发大数据可视化技术。 开发新型数据库技术,...

    竞拍系统源码java-cassandra-modeling-kata:Cassandra建模Kata

    建模技术。 接下来,我们将在实践中使用这些技术——开发一个简单的电子商务应用程序。 数据建模简而言之 Apache Cassandra 是一个 . 最初,Apache Cassandra 仅提供客户端 API。 从 1.2 版 Apache Cassandra 开始...

    大数据关键技术(1).doc

    突破分布式非关系型大数据管理与处理技术,异构数据的数据融合技术 ,数据组织技术,研究大数据建模技术;突破大数据索引技术;突破大数据移动、备份、 复制等技术;开发大数据可视化技术。 开发新型数据库技术,...

    数据分析方法与技术.pptx

    2 数据分析时代背景 第一部分 数据分析平台技术 第二部分 数据仓库建模方法 第三部分 目 录 数据分析与数据挖掘 第四部分 数据分析方法与技术全文共66页,当前为第2页。 数据量增加 TB PB ZB EB 根据IDC 监测,人类...

    beauty of architecture

    2.3 领域建模技术 领域驱动建模 从资源,服务到产品建模 延伸阅读 行业业务架构模型 3.云计算与SOA 3.1关于去IOE 老外谈去IOE,最终可能会回到IOE的怀抱 谈谈去 IOE 运动 Go to IOE,to go or not to go ...

    大数据开发,大数据开发技术路线,核心知识

    大数据开发是指利用一系列技术和工具对大规模数据集进行收集、存储、处理、分析和可视化,以提取有价值的信息,支持业务决策、产品优化、市场洞察、风险评估等应用场景。以下是大数据开发的关键组成部分和相关流程:...

    JAVA 学习/工作 笔记

    J2SE/J2ME/J2EE/JAVA代码优化/Flex(BlazeDS、PureMVC等技术)/LDAP/C++/Portal/即时通讯/数据建模/UML/UML设计工具(Rose、EA、PD等)/移动办公(Android、Symbian、Wap等技术)/项目管理(敏捷开发等)/软件架构...

Global site tag (gtag.js) - Google Analytics