六大数据管理架构

图片

01 Cache Aside

当应用程序需要访问数据时,它首先会检查缓存。如果数据不存在(缓存缺失),它就会从数据存储中获取数据,将其存储到缓存中,然后将数据返回给用户。

这种模式对于频繁读取数据但更新频率较低的情况特别有用,可以减少数据库点击次数,提高应用程序性能。

02 物化视图(Materialized View)

物化视图是一个包含查询结果的数据库对象。它是物理存储的,这意味着数据是实际计算并存储在磁盘上的,而不是在每次请求时动态生成的。这可以大大加快复杂计算或聚合的查询时间,否则这些计算或聚合需要在运行中进行计算。物化视图尤其适用于对查询性能要求极高的数据仓库和商业智能场景。

03 CQRS

CQRS(Command Query Responsibility Segregation)是一种将数据读写模型分开的架构模式。这意味着用于查询数据(读取)的数据结构与用于更新数据(写入)的结构是分开的。这种分离允许对每种操作进行独立优化,从而提高性能、可扩展性和安全性。CQRS 在读取和写入操作要求截然不同的复杂系统中尤其有用。

04 事件溯源(Event Sourcing)

事件源是一种将应用程序状态的变化存储为一系列事件的模式。事件源不存储域中数据的当前状态,而是存储随着时间推移发生的所有变化(事件)的日志。这样,应用程序就能重建过去的状态,并提供更改的审计跟踪。在需要复杂业务事务、可审计性和事件回滚或重放能力的情况下,事件源非常有用。

05 索引表(Index Table)

索引表模式涉及在数据库中创建针对特定查询操作进行优化的附加表。这些表充当辅助索引,旨在加快数据检索速度,而无需对主数据存储进行全面扫描。索引表在大型数据集和频繁执行特定查询的情况下特别有用。

06 分片(Sharding)

分片是一种数据分区模式,在这种模式下,数据被分成更小、更易于管理的片段或 “碎片”,每个碎片可以存储在不同的数据库服务器上。这种模式用于将数据分布到多台机器上,以提高可扩展性和性能。分片在大容量应用程序中尤其有效,因为它允许横向扩展,将负载分散到多个服务器上,以处理更多用户和事务。
引用:www.bytebytego.com

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!