NoSQL数据库敏捷数据模型

在近日举行的2018年数据架构峰会上,Hackolade首席执行官Pascal Desmarets谈了NoSQL数据库的敏捷建模。他说,在NoSQL数据库中,由于没有规范化约束,数据建模变得更加重要。非结构化的多态大数据在数据治理和监管(GDPR和PII)以及利用积累的信息的能力方面都提出了挑战。

Desmarets还谈到了数据建模如何帮助企业从RDBMS迁移到NoSQL。在关系数据库和NoSQL数据库中,数据建模的好处包括提高应用程序质量,改善数据质量、GDPR&隐私身份信息以及商业智能。

团队应该根据需求选择合适的NoSQL数据库。例如,如果你需要管理简单的模式和快速地读写而不需要频繁地更新,那么就选择键-值存储。如果你需要支持复杂查询的灵活模式,请选择文档数据存储。面向列的数据库很适合读取速度相对较低而写入速度极高的情况。图数据库更适合于需要在数据点之间进行遍历的应用程序,因为你需要能够存储每个数据点的属性以及它们之间的关系。

他谈到了传统的数据建模过程以及我们如何从数据建模过渡到模式设计方法。概念数据模型已经被领域驱动设计(DDD)所取代,不再需要逻辑数据模型,物理数据模型则被物理模式设计所取代。

在敏捷开发过程中,数据建模在过程的每个步骤中都有作用,包括在生产环境中。数据建模工作成为多个项目涉众之间的共享责任和对话。

他还说,领域驱动设计(DDD)和NoSQL像是为彼此量身设计的,DDD语言和NoSQL数据库的概念直接吻合。他认为,在整个的策略、过程、体系结构和技术中,一致性是必要的,因为将所有这些原则一起应用比孤立地应用一两项原则更可取:领域驱动设计、敏捷开发、“以数据为中心(Data-Centricity)”、微服务、事件驱动的体系结构、NoSQL、DevOps和云。

InfoQ采访了Desmarets,内容涉及NoSQL数据库数据建模及大数据管理的最佳实践。

InfoQ:每种NoSQL数据库类型的数据建模方法都不同吗,比如像Cassandra这样的时间序列数据库和像Neo4j这样的图数据库?

InfoQ:您能谈谈NoSQL数据库敏捷建模中的一些最佳实践吗?

他还说,在相当长的一段时间里,NoSQL数据库供应商通过使用“无模式”或“非关系型”等术语创造了一种差异化和轰动效应。但是,NoSQL数据库是如此的灵活和强大,没有经验的用户如果不应用一些严格的技术,就很容易陷入麻烦。现在,供应商意识到,为了将他们的解决方案卖给企业,更明智的做法是使用术语“动态模式”。在使用NoSQL时,数据建模(或模式设计)实际上比关系数据库更重要。我们只是需要一种不同于以往的数据建模方法。数据建模者应该拥抱敏捷开发,并学习新技术栈,证明它们在这个过程中增加了价值。

查看英文原文:Agile Data Modeling for NoSQL Databases

  • 发表于:
  • 本文为 InfoQ 中文站特供稿件
  • 首发地址http://www.infoq.com/cn/news/2018/11/agile-data-modeling-nosql

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励