0

Kudu 表可以通过 Impala 访问,因此它的 jdbc 驱动程序。多亏了它可以通过标准的 java/scala jdbc api 访问。我想知道是否可以使用 slick 。或者,如果不是任何其他支持 impla/kudu 的高级 scala db 框架。

4

3 回答 3

0

Slick 可以与任何 JDBC 数据库一起使用

http://slick.lightbend.com/doc/3.3.0/database.html

于 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 回答