Kudu 表可以通过 Impala 访问,因此它的 jdbc 驱动程序。多亏了它可以通过标准的 java/scala jdbc api 访问。我想知道是否可以使用 slick 。或者,如果不是任何其他支持 impla/kudu 的高级 scala db 框架。
问问题
253 次
3 回答
0
Slick 可以与任何 JDBC 数据库一起使用
于 2019-04-23T09:24:16.670 回答
0
有两种方法可以将 Slick 与任意 JDBC 驱动程序(和 SQL 方言)一起使用。
第一种是使用低级 JDBC 调用。该类SimpleDBIO
使您可以访问 JDBC 连接:
val getAutoCommit = SimpleDBIO[Boolean](_.connection.getAutoCommit)
该示例来自Slick 手册。
但是,我认为您对更高级别的工作更感兴趣。在这种情况下,对于 Slick,您需要实现自定义Profile。如果 Impala 与现有的数据库配置文件足够相似,您可以对extend
现有的配置文件进行调整以解决任何差异。例如,这将允许您自定义如何为 Impala 格式化 SQL、如何表示时间戳、如何引用列名。将SQL 从其他数据库系统移植到 Impala的文档将使您了解驱动程序中需要更改的内容。
或者,如果不是任何其他支持 impla/kudu 的高级 scala db 框架。
似乎没有一个主流库支持 Impala 作为一项功能。话虽如此,Doobie 文档提到了为 Hive 定制连接。因此,例如,Doobie 可能值得快速尝试 Doobie,看看您是否可以查询和插入。
于 2020-03-31T15:38:36.877 回答
0
至少,对我来说,Slick 与 Impala Kudu 并不完全兼容。使用 Slick,我无法修改数据库实体,无法创建、更新或删除任何项目。它仅用于读取数据。
于 2020-03-31T13:18:35.590 回答