NoSQL 和数据流编程
有时,数据无法以关系格式提供,我们需要借助 NoSQL 数据库来保持数据的事务性。
在本章中,我们将重点讨论NoSQL的数据流。我们还将了解它如何结合敏捷和数据科学进行操作。
敏捷使用 NoSQL 的主要原因之一是为了提高市场竞争的速度。以下原因表明 NoSQL 如何最适合敏捷软件方法 -
更少的障碍
即使在敏捷开发的情况下,目前正在中途改变模型也会产生一些实际成本。使用 NoSQL,用户可以使用聚合数据,而不是浪费时间来标准化数据。要点是完成某件事并以使模型数据完美为目标。
提高可扩展性
每当组织创建产品时,它都会更加关注其可扩展性。NoSQL 一直以其可扩展性而闻名,但当它设计为具有水平可扩展性时,效果会更好。
利用数据的能力
NoSQL 是一种无模式数据模型,允许用户轻松使用大量数据,其中包括多个可变性和速度参数。在考虑选择技术时,您应该始终考虑能够更大规模地利用数据的技术。
NoSQL的数据流
让我们考虑以下示例,其中我们展示了数据模型如何专注于创建 RDBMS 模式。
以下是模式的不同要求 -
应列出用户标识。
每个用户都应该至少拥有一项强制性技能。
每个用户体验的细节都应该得到妥善维护。
用户表使用 3 个独立的表进行规范化 -
用户
用户技能
用户体验
查询数据库时复杂性会增加,并且随着规范化的增加,时间消耗也会增加,这不利于敏捷方法。可以使用 NoSQL 数据库设计相同的模式,如下所述 -
NoSQL 以 JSON 格式维护结构,结构轻量。使用 JSON,应用程序可以将具有嵌套数据的对象存储为单个文档。