【TiDB 版本】 2.1.6
【集群节点分布】 3台机器,每台机器部署1个tidb、1个pd、2个tikv、1个pump,第2台机器多部署1个drainer。
【spark版本】2.1.0
【问题描述】使用spark-shell创建tiSession失败,报错日志如下。请问如何解决?
【TiDB 版本】 2.1.6
【集群节点分布】 3台机器,每台机器部署1个tidb、1个pd、2个tikv、1个pump,第2台机器多部署1个drainer。
【spark版本】2.1.0
【问题描述】使用spark-shell创建tiSession失败,报错日志如下。请问如何解决?
请检查 PD & TiKV 服务是否正常
直接连接tidb(非tispark)可以正常增删改查。
pd-ctl检查health显示都正常,如下图所示:
tikv日志没有明显异常,监控界面tikv板块无明显异常。
可否请教下如何准确判断tikv有无问题呢?
可以使用 pd-ctl 查看 store 的相关信息。另外,这边是直接使用 spark 进行数据读取的吗 ? 可以试一下 TiSpark
https://pingcap.com/docs-cn/v2.1/reference/tispark/#tispark-用户指南
我用的就是TiSpark啊(tispark 1.1)。同样的方法,之前是能读取到TiDB数据的。
我的读取方法:
编辑/opt/hadoopclient/Spark2x/spark/conf/spark-defaults.conf,添加
spark.tispark.pd.addresses=192.168.100.60:2379,192.168.100.61:2379,192.168.100.62:2379
spark.sql.extensions=org.apache.spark.sql.TiExtensions
spark.tispark.plan.allow_index_read=true
将tispark-core-1.1-jar-with-dependencies.jar拷贝到/opt/hadoopclient/Spark2x/spark/jars/
启动spark-shell命令行:spark-shell --jars tispark-core-1.1-jar-with-dependencies.jar
import org,apache.spark.sql.{SparkSession, Row}
import org,apache.spark.sql.CarbonSession
import org,apache.spark.sql.TiContext
创建carbonSession(carbonsession可以认为就是sparksession,用于支持读取carbon格式数据)
val carbonSession = SparkSession.builder.getOrCreateCarbonSession(“hdfs路径”)
创建tiSession
val tiSession = new TiContext(carbonSesssion)
在第4步创建tiSession失败。
您这边描述之前 是可以读到数据的,这中间做过什么操作或者升级过吗 ?
没有呀。。。搞不定,所以才来这寻求专业帮助啊~
你好,TiSpark-1.1已经不维护了,请使用TiSpark-1.2.1,可以在这里下载
建议先根据官方文档试试能否读取tidb的数据,https://github.com/pingcap/tispark/blob/master/docs/userguide_spark2.1.md
你们应该升级过TiDB机器,TiSpark-1.1在老集群上可以用,但是新版本不兼容,需要升级到TiSpark-1.2
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。