0

我正在阅读专业的 nosql 书籍,并且有一个不同 nosql db 访问方法的列表,但我不知道 rdbms 中的访问方法是什么?odbc/jdbc 及其驱动程序算作访问方法吗?

或者 ado.net,linq to sql,entity frame work,算不算访问方式?

ado.net/linq 到 sql/entity 框架和 odbc/jdbc 有什么区别,我的意思是它们都用于访问数据库,那么它们有什么区别?

我的另一个问题是为什么不能将 thrift/avro/rest/protobuf 与 rdbms 一起使用,它们是服务,为什么它们只与 nosql dbs 一起使用?

4

1 回答 1

0

听起来很像你的另一个问题,至少 75% :-)

ado.net/linq 到 sql/entity 框架和 odbc/jdbc 有什么区别,我的意思是它们都用于访问数据库,那么它们有什么区别?

它们在几个方面有所不同。首先,某些 DBMS 通常只支持几种连接方式。少一些,多一些,这在很大程度上取决于 DBMS。接下来,您列出的某些方法(例如 LINQ)并非在所有环境中都可用。例如,采用一些不基于 .NET 技术的任意编程语言,LINQ 不再是一种选择。

我的另一个问题是为什么不能将 thrift/avro/rest/protobuf 与 rdbms 一起使用,它们是服务,

不,这些不是服务。它们是进行远程过程调用的机制。RPC 可以是任何东西,包括数据库查询,但不限于此。数据库可以被认为是一个服务,以及 thrift/avro/rest/protobuf/etc。是您访问这些服务的方式。但同样,每个 DBMS 通常只支持几种选定的方式。并且有些数据库只能由特定的专用数据库客户端库访问,例如 ESENT。

为什么它们只与 nosql dbs 一起使用?

因为 DBMS 不支持它。

于 2013-09-03T19:28:33.750 回答