在尝试多种数据存储之前,选择数据存储的标准
这篇文章是为了「尝试不同数据存储 Advent Calendar 2019」而写的。
文章中所述内容(包括附件和链接)仅限于创建时点,如有变更将不另行通知。
我们尽力包含了一些常见的中间件产品示例,但由于有很多未涉及的领域,本文并不追求完整性,请予以了解。
首先
选择数据存储时应根据其用途和要求进行选择。但是,有时也会出现相反情况,即根据中间件产品或服务选择数据存储的情况。如果根据产品或服务固定选择数据存储,当最适合原本用途的技术与之不符时,可能会产生大量的重复劳动。本文着重于考虑哪些内容来基于需求和特性选择数据存储。由于本文是一篇读物,如果偏离了Advent Calendar的本意,请谅解。
让我们进行要件审查
与选择数据存储有关的要求
需要数据存储系统的要求主要可分为功能需求和非功能需求。具体而言,每个要求如下所示。为了将功能要求应用于用途中,我们需要从适合该用途的数据的角度进行分析和处理。
在选择数据存储时,功能需求是最优先考虑的因素。它需要根据系统特性和数据特性进行相应的设计。
非功能性需求虽然不如功能性需求重要,但它是决定选择哪个数据存储系统的判断因素。
根据不同的数据格式选择标准
数据格式有许多不同类型。下面的表格简要总结了每种数据格式的特性,用途以及中间件、产品和服务示例。需要注意的是,对于开源软件项目,根据作者的技术背景列出了项目名称;对于云服务,主要介绍了Microsoft Azure的相关内容。
– 总结
根据用途的不同,各种要求,例如数据格式等都会确定,并选择相应的数据存储方式。不仅仅依赖于特定的产品或服务,最好根据用途、要求和架构进行选择,以便更轻松地实施系统。
最後,我们提供的参考资料中的一部分(架构中心的文档)是基于实际案例的参考架构(这是大家非常喜欢的案例结构,一些特定企业或组织的信息被省略,稍微进行了标准化)。这些资料非常有参考价值,包含了许多常见内容。希望这篇文章可以成为您阅读官方文档的契机,在有时间的时候也能一同阅读。
请提供参考文献。
-
- データ ストアの選択条件
-
- 適切なデータ ストアの選択
-
- CAP定理を見直す。“CAPの3つから2つを選ぶ”という説明はミスリーディングだった
-
- SQL Server
-
- Azure SQL で適切なデプロイ オプションを選択する
-
- Azure Database for PostgreSQL のドキュメント
-
- Azure Database for MySQL のドキュメント
-
- Azure Database for MariaDB のドキュメント
-
- Memcached
-
- Azure Cosmos DB
-
- Azure Cosmos DB の Cassandra API の概要
-
- Azure Cache for Redis
-
- Azure Cosmos DB の概要: Gremlin API
-
- Azure Cosmos DB の MongoDB 用 API
-
- Azure Cosmos DB の概要:テーブル API
-
- Azure Synapse Analytics
-
- HD Insight
Azure Table Storage
Azure Search
Time Series Insights
Blob Storage