r - 从 SparkR 读取 Kudu
问题描述
在 Spark 中,我无法找到如何使用 SparkR 连接到 Kudu。如果我在 scala 中尝试以下操作:
import org.apache.kudu.spark.kudu._
import org.apache.kudu.client._
import org.apache.spark.sql.SQLContext
import org.apache.spark.sql.functions._
// Read kudu table and select data of August 2018
val df = spark.sqlContext.read.options(Map("kudu.master" -> "198.y.x.xyz:7051","kudu.table" -> "table_name")).kudu
df.createOrReplaceTempView("mytable")
它完美地工作。在 SparkR 中,我一直在尝试以下操作:
library(SparkR, lib.loc = c(file.path(Sys.getenv("SPARK_HOME"), "R", "lib")))
sc = sparkR.session(master = "local[*]", sparkConfig = list(spark.driver.memory = "2g"), sparkPackages = "org.apache.kudu:kudu-spark2_2.11:1.8.0")
sqlContext <- sparkRSQL.init(sc)
df = read.jdbc(url="198.y.x.xyz:7051",
driver = "jdbc:kudu:sparkdb",
source="jdbc",
tableName = "table_name"
)
我收到以下错误:
Error in jdbc : java.lang.ClassNotFoundException: jdbc:kudu:sparkdb
尝试以下操作:
df = read.jdbc(url="jdbc:mysql://198.19.10.103:7051",
tableName = "banglalink_data_table_1"
)
给出:
Error: Error in jdbc : java.sql.SQLException: No suitable driver
我找不到有关如何加载正确驱动程序的任何帮助。我认为使用 sparkPackages 选项是正确的,因为它没有错误。我究竟做错了什么??
解决方案
推荐阅读
- c++ - 在函数调用期间临时禁用窗口
- c++ - qml中多行时删除文本
- yolo - OpenVINO - 带有 YoloV4 的工具包
- asp.net-mvc - 使用 Microsoft 的 Web API 2 和 ODATA 的 ASP.NET API 版本控制在 api 版本之间更改 JSON 属性的大小写?
- html - jquery todo list 将 li 元素附加到现有列表
- flutter - Flutter 多个 if 语句
- three.js - 为自定义 TubeGeometry 绘制盖子以使其看起来坚固
- java - 使用 Spring Data Elasticsearch 定义自定义日期格式和转换器
- django - cached_property 和 classmethod 不能一起工作,Django
- amazon-web-services - 使用哈希和范围键批量删除 dynamodb 表的项目