看着新的 Azure cosmos 数据库,我对它的多模型性质有点困惑。具体来说,是不是意味着:
a) 可以同时以多种方式查询相同的底层数据库/存储,以便我可以针对相同的集合使用 gremlin 图形查询和 mongodb api。
b) 这是否意味着您可以在配置 Cosmos DB 时选择不同的模型(图形、键值、列、文档),这就是从那时起数据的存储方式。
该手册使它听起来像 a),但使用 Azure 仪表板创建 Cosmos 实例,它看起来像 b),因为您必须在创建时选择模型类型。
此外,文献引用了柱状数据,但我在创建时没有看到它的选项。
Cosmos DB 是单一 NoSQL 数据引擎,是文档 DB 的演变。创建容器(“数据库实例”)时,您可以选择与您的用例最相关的 API,这可以优化您与底层数据存储交互的方式以及将数据保存到该存储的方式。
因此,根据所选的 API,它将所需的模型(图形、列、键值或文档)投影到底层存储上。
您只能对一个容器使用一个 API,由于数据存储和检索的方式,多个 API 是不可能的。 API 规定了存储模型 - 图形、键值、列等,但它们都映射回底层的相同技术。
感谢@Jesse Carter 下面的评论,您似乎能够混合和匹配图形和 DocumentSQL API。
来自文档: https://learn.microsoft.com/en-us/azure/cosmos-db/introduction
多模型、多API支持
Azure Cosmos DB 本身支持多种数据模型,包括文档、键值、图形和列族。 Cosmos DB 数据库引擎的核心内容模型基于原子记录序列 (ARS)。原子由一小组基本类型组成,例如字符串、布尔值和数字。记录是由这些类型组成的结构。序列是由原子、记录或序列组成的数组。
数据库引擎可以有效地将不同的数据模型转换并投影到基于ARS的数据模型上。 Cosmos DB 的核心数据模型可以通过动态类型编程语言本机访问,并且可以按原样公开为 JSON。
该服务还支持用于数据访问和查询的流行数据库 API。 Cosmos DB 的数据库引擎目前支持 DocumentDB SQL、MongoDB、Azure Tables(预览版)和 Gremlin(预览版)。您可以继续使用流行的 OSS API 构建应用程序,并获得久经考验且完全托管的全球分布式数据库服务的所有优势。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)