我看到了300倍的性能损失,这取决于我使用的驱动程序,而且快速的驱动程序在shinyapps.io上是不可用的。
我正在使用readr::read_csv将一个CSV读入tibble,然后使用dbWriteTable()将它上传到我的MariaDB数据库中。如果我在最新的odbc::odbc()连接器中使用MariaDB,加载6000条记录需要1-2秒,这很好。但是,这个连接器在shinyapps.io上是不可用的,我的应用程序就是在这里部署的。可用的MariaDB驱动程序有1) odbc,有MySQL连接器,或者2) RMariaDB驱动程序。当我使用这些驱动程序中的任何一个(在本地或在shinyapp上运行)时,相同的负载需要8-10分钟!
有更快的路吗?我的闪亮应用程序允许用户选择一个CSV上传,其中最大的将是10-15k行。RMariaDB包维护人员建议在连接到数据库时使用load_data_local_infile = TRUE,但我的托管提供商禁用了该功能。:(
如有任何建议,将不胜感激!哑光
发布于 2022-11-10 00:08:59
我用dbWriteTable()驱动程序和MySQL连接器从odbc()切换到了DBI::sqlAppendTable,速度很快(1秒内有6000行)。
https://stackoverflow.com/questions/74350518
复制相似问题