2018年3月11日星期日

EF Core:一统 SQL 和 NoSQL 数据库


Linuxeden 开源社区 --

作者 Jonathan Allen   ,译者 盖磊       

推出 EF Core 的初衷之一,就是开发出一种可在很少甚至不更改代码的情况下使用 SQL 和 NoSQL 数据库的模型。Microsoft 正向此目标迈出第一步,发布了用于 Azure Cosmos DB 的实验性 EF 提供程序(provider)。据 EF 2.1 路线图 介绍:

Cosmos DB 提供程序预览:我们一直开发用于 Cosmos DB 中 DocumentDB API 的 EF Core 提供程序。这是我们推出的首个文档数据库提供程序,从此实践中获得的经验教训,将为 2.1 版之后的设计提供指引。当前,我们计划在 2.1 版中发布 Cosmos DB 提供程序的早期预览版。

InfoQ 前期曾报道过,Azure Cosmos DB 是一种“多模型”NoSQL 数据库。它可作为文档数据库使用,类似于已停用的 Azure DocumentDB,或是类似于使用 MongoDB API。它也可作为基本的键值表使用、基于 Gremlin 实现图形数据库,或是使用 Cassandra API 实现时序数据库。

UseDocumentDB() 是 EF Core 为支持 NoSQL 而推出的首个新 API。它的输入是 URL、键值和数据库名,替代了数据库连接字符串。

NoSQL 数据库同样可使用 dbContext.Database.EnsureCreated(),并且删除数据库也很简单,调用 dbContext.Database.EnsureDeleted() 即可。除此以外,所有 API 的使用,与基于 EF 的正常应用操作存储在 SQL Server 中的数据一样。

Channel 9 给出的演示 中,并将数据真实存储在一个典型的 NoSQL 层次文档中,而是和正常的数据库一样,在不同的的集合中存储 BlogPost 对象。相关文档目前依然尚未发布,因此现在解释如何配置这些行为还为时尚早。

查看英文原文: EF Core: Unifying SQL and NoSQL Databases

转自 http://ift.tt/2IjI2E1

The post EF Core:一统 SQL 和 NoSQL 数据库 appeared first on Linuxeden开源社区.

http://ift.tt/2p5cNDW

没有评论:

发表评论