NoSQL 和数据流编程


有时,数据无法以关系格式提供,我们需要借助 NoSQL 数据库来保持数据的事务性。

在本章中,我们将重点讨论NoSQL的数据流。我们还将了解它如何结合敏捷和数据科学进行操作。

敏捷使用 NoSQL 的主要原因之一是为了提高市场竞争的速度。以下原因表明 NoSQL 如何最适合敏捷软件方法 -

更少的障碍

即使在敏捷开发的情况下,目前正在中途改变模型也会产生一些实际成本。使用 NoSQL,用户可以使用聚合数据,而不是浪费时间来标准化数据。要点是完成某件事并以使模型数据完美为目标。

提高可扩展性

每当组织创建产品时,它都会更加关注其可扩展性。NoSQL 一直以其可扩展性而闻名,但当它设计为具有水平可扩展性时,效果会更好。

利用数据的能力

NoSQL 是一种无模式数据模型,允许用户轻松使用大量数据,其中包括多个可变性和速度参数。在考虑选择技术时,您应该始终考虑能够更大规模地利用数据的技术。

NoSQL的数据流

让我们考虑以下示例,其中我们展示了数据模型如何专注于创建 RDBMS 模式。

以下是模式的不同要求 -

  • 应列出用户标识。

  • 每个用户都应该至少拥有一项强制性技能。

  • 每个用户体验的细节都应该得到妥善维护。

用户体验

用户表使用 3 个独立的表进行规范化 -

  • 用户

  • 用户技能

  • 用户体验

查询数据库时复杂性会增加,并且随着规范化的增加,时间消耗也会增加,这不利于敏捷方法。可以使用 NoSQL 数据库设计相同的模式,如下所述 -

复杂性增加

NoSQL 以 JSON 格式维护结构,结构轻量。使用 JSON,应用程序可以将具有嵌套数据的对象存储为单个文档。