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