
数据存储领域指南
|
167
档结构的元数据,允许进行数据类型优化、辅助索引以及其他优化。文档存储将与对象相
关的所有信息存储在一起,而不是跨表存储。这样一次调用便能获取所有数据,
而无须表
连接(声称简单,实际会消耗大量资源)。通常也不需要
ORM
层。
另外,这意味着如果对象需要不同的视图,那么文档存储必然不需要范式,这会导致膨胀
和一致性问题。此外,由于没有
schema
这样的简明文档,因此需要使用外部工具来实施
数据治理
4
。
数据治理
数据治理是对组织数据的可用性、完整性和安全性的管理。应该仔细考虑并
记录新添加的数据属性。在数据存储中使用
JSON
,会很容易甚至意外添加
新的数据属性。
4.
导航模型
导航模型始于分层和网络数据库。如今提到导航模型,几乎总是指图数据模型。图数据库
使用节点、边和属性来表示存储的数据以及对象之间的连接。节点包含特定对象的数据,
边是对象之间的关系,属性可添加节点相关数据。因为关系是作为数据的一部分直接存储
的,所以易于追踪连接。通常可以在一次调用中检索整个图。
与文档存储一样,图存储通常能直接映射到面向对象应用程序的结构中,同时消除了表连
接,并且在数据模型演化方面更灵活。当然,这只适用于查询图的数据。实践证明传统查
询模式的性能可能差得多
5
。
每种模型都有适用场景。下面讨论其中的选择和权衡。首先看看事务和属性。
11.1.2
事务
数据存储如何处理事务,也是需要考虑和理解的重要属性。事务实际上是数据库的逻辑工
作单元,可以认为不可分割。事务中的所有操作必须全部执行或回滚,以保持数据存储的 ...