我知道有些数据库在R(例如MySQL)中有本机支持,但您可以使用RODBC连接到其他数据库,如MS SQL Server.使用本机驱动程序与RODBC进行读/写操作可以提高多少速度?R中有哪些其他DB有本机驱动程序?阅读速度是否比一般写作更快或更慢?
如果您对 SQL Server 特别感兴趣,下面的参考资料有点过时,但我想它可能仍然适用。
\n将 ODBC 与 Microsoft SQL Server 结合使用
\n\n\nODBC 作为本机 API 的性能
\n关于 ODBC 的持续谣言之一是它本质上比本机 DBMS API 慢。此推理基于以下假设:ODBC 驱动程序必须作为本机 DBMS API 上的额外层实现,将来自应用程序的 ODBC 语句转换为本机 DBMS API 函数和 SQL 语法。与应用程序直接调用本机 API 相比,此转换工作增加了额外的处理。对于通过本机 DBMS API 实现的某些 ODBC 驱动程序,此假设成立,但 Microsoft SQL Server ODBC 驱动程序不是以这种方式实现的。
\nMicrosoft SQL Server ODBC 驱动程序是 DB-Library 的功能替代品。SQL Server ODBC 驱动程序与底层 Net-Libraries 的工作方式与 DB-Library DLL 完全相同。Microsoft SQL Server ODBC 驱动程序不依赖于 DB-Library DLL,即使客户端上不存在 DB-Library,该驱动程序也能正常运行。
\nMicrosoft 的测试表明,基于 ODBC 的 SQL Server 应用程序和基于 DB-Library\xe2\x80\x93 的 SQL Server 应用程序的性能大致相当。
\n