大数据处理过程中的问题总结
001Couldn't find leader offsets for Set([ssdmt,0], [smt,1], [smsdt,2])Couldn‘t find leader offsets for Set ([ludsdwc_test,0],[luwsdc_test,1]) 异常问题。解决方案:要在kafka集群的hosts要配到spark的Driver的hosts里面去,用zk管kafk
001
Couldn't find leader offsets for Set([ssdmt,0], [smt,1], [smsdt,2])
Couldn‘t find leader offsets for Set ([ludsdwc_test,0],[luwsdc_test,1]) 异常问题。
解决方案:要在kafka集群的hosts要配到spark的Driver的hosts里面去,用zk管kafka的话,是可以获取到Partition信息的,
但是解析地址会失败,把hosts配成一致就可以了,直接用domain是不行的。
直接修改hosts文件,注意要用管理员身份运行,否则可能会修改不成功!!!!!
002
A JNI error has occurred, please check your installation and try again
https://www.cnblogs.com/parent-absent-son/p/10064856.html
kafka中无数据造成的取不到偏移量
Exception in thread "main" org.apache.spark.SparkException: get kafka consumer offsets failed: ${consumerOffsetsE.left.get}
003
找不到主类的问题可以idea找到build->rebuild
004
java.lang.ClassCastException: org.apache.spark.rdd.MapPartitionsRDD cannot be cast to org.apache.spark.streaming.kafka.HasOffsetRanges
https://blog.csdn.net/qq_36525906/article/details/103720652
只有KafkaRDD才可以转换成OffsetRange
且只有通过InputDStream所得到的第一手数据才包含KafkaRDD
也就是说,我在InputDS后所执行的任何转换类算子都会将KafkaRDD变成非kafkaRDD,此时再做转换必将报错
因此,我得到解决方法如下,提前一步拿到偏移量,之后再进行正常操作
由于处理链条的延长,造成rdd无法获取到偏移量。
005
sparkstreaming程序一值卡在此处,出错以后自动恢复
以上报错有可能是kafka中没有数据
006
查看spark集群Scala版本
007
spark提交作业的时候报以下错误
su root root/abcd@1234
注意报错的不存在的路径,这个不是死的
mkdir -p /nfs/log/spark2/lineage
chown spark:spark /nfs/log/spark2/lineage
chmod 777 /nfs/log/spark2
mkdir -p /var/log/spark2/lineage
chown -R spark:spark /var/log/spark2
chmod 777 /var/log/spark2/lineage
在集群的每个节点都执行以上操作
遇到报错的时候先看具体的问题,一个一个解决,以免无从下手
008
用spark-submit提交作业,报如下错误,Scala版本的问题
可以改用spark2-submit 提交实现
例如:
nohup spark2-submit \ --master yarn \ --deploy-mode cluster \ --num-executors 3 \ --driver-memory 2g \ --executor-memory 2g \ --executor-cores 3 \ --class com.newtouch.KafkaToKuduManagerDemo \
sparkkafka.jar >>test.log 2>&1 &
java.lang.IllegalArgumentException: payintv isn't [Type: string], it's decimal
009
Exception in thread "main" org.apache.spark.SparkException: get earliest leader offsets failed: ${leaderOffsetsE.left.get}
at com.newtouch.JavaSparkManager.setOrUpdateOffsets(JavaSparkManager.java:173)
at com.newtouch.JavaSparkManager.createDirectStream(JavaSparkManager.java:51)
at com.newtouch.KafkaToKuduManagerDemo.main(KafkaToKuduManagerDemo.java:221)
需要配置本机hosts
010
java.lang.IllegalArgumentException: requirement failed: numRecords must not be negative |
当删除一个topic时,zk中的offset信息并没有被清除,因此KafkaDirectStreaming再次启动时仍会得到旧的topic offset为old_offset,作为fromOffset。
当新建了topic后,使用untiloffset计算逻辑,得到untilOffset为0(如果topic已有数据则>0);
再次被启动的KafkaDirectStreaming Job通过异常的计算逻辑得到的rdd numRecords值为可计算为:
numRecords = untilOffset - fromOffset(old_offset)
当untilOffset < old_offset时,此异常会出现,对于新建的topic这种情况的可能性很大
011
sql查询时字符串比较需要加单引号 否则会报一下错误
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'TEST' in 'where clause'
012
再用yarn cluster提交作业时,appname优先读取配置文件设置的,没有设置的默认为类名,代码中设置的cluster模式不读取
https://www.jianshu.com/p/1d652736bdd6
013
spark streaming kafka OffsetOutOfRangeException
https://blog.csdn.net/xueba207/article/details/51174818
014
cluster.YarnClusterScheduler: Initial job has not accepted any resources; check your cluster UI to ensure that workers are registered and have sufficient resources
资源分配不足,会导致作业停滞不动,等待资源分配。
015
kudu建表时主键应该放在最前面
ImpalaRuntimeException: Error creating Kudu table 'impala::lis' CAUSED BY: NonRecoverableException: Got out-of-order key column: name: "contno" type: STRING is_key: true is_nullable: false cfile_block_size: 0
016
主键在建表的时候可能出现问题
数据中主键为空可能出现这种错误
org.apache.kudu.client.NonRecoverableException: Primary key column uwno is not set
017
spark streaming kafka OffsetOutOfRangeException
可能是kafka中的数据定时清除,spark没有及时消费造成偏移量读取更新时出错,也有可能没有放入topic或topic为空。
018
yarn系统资源不足,造成sparkstreaming程序启动停滞,当查看当前资源总量,调节各个程序分配的资源量,适当调小。如果仍无法满足,则需要申请集群资源。
019
zookeeper中偏移量的修改问题
zookeeper中保存kafka偏移量,出现zookeeper中没有保存成功的现象
在用命令获取kafka在zookeeper中的偏移量时注意目录层级
/kakfa/consumers/消费组id/offsets/topic/partitionid
例如:
get /kafka/consumers/test0316/offsets/lcsora01dev/0
如果目录没有深入到最里层会取不到偏移量
设置新的偏移量用命令 set /kakfka/consumers/consumer-group/offsets/TOPIC_NAME/0 1429(偏移量具体数值)
020
如果数据出现错误,日志中如何定位到某一条数据出错,并且打印到日志文件中,并且是可配置的开关,打开则打印,否则就不打印,生产环境大面积打印日志对集群性能会造成较大压力。
021
dev环境出现不进数的情况
经检查是由于消费组配置错误的原因,导致该消费组对应的表没有加载。出现该问题,首先确认kafka中是否有数,然后检查表加载的两个条件,groupID和job_enable,核对两个条件是否跟配置文件相符。
022
ImpalaRuntimeException: Error creating Kudu table 'impala::lis_dat.lpappuwsubmain' CAUSED BY: NonRecoverableException: Got out-of-order key column: name: "uhhho" type: DECIMAL128 is_key: true is_nullable: false cfile_block_size: 0 type_attributes { precision: 38 scale: 0 }
主键没有放在最前面
023
Caused by: org.apache.spark.SparkException: Kryo serialization failed: Buffer overflow. Available: 0, required: 2. To avoid this, increase spark.kryoserializer.buffer.max value. at org.apache.spark.serializer.KryoSerializerInstance.serialize(KryoSerializer.scala:350) at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:393) ... 3 more Caused by: com.esotericsoftware.kryo.KryoException: Buffer overflow. Available: 0, required: 2 at com.esotericsoftware.kryo.io.Output.require(Output.java:163) at com.esotericsoftware.kryo.io.Output.writeAscii_slow(Output.java:488) |
https://blog.csdn.net/xinganshenguang/article/details/54586110
--conf spark.kryoserializer.buffer.max=256m
--conf spark.kryoserializer.buffer=64m
024
message from server: "Host '10.5.52.1' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts
show global variables like '%max_connect_errors%';
set global max_connect_errors=100;
https://blog.csdn.net/li_li_lin/article/details/72764683
启动
systemctl start mariadb.service
停止
systemctl stop mariadb.service
查看状态
systemctl status mariadb.service
025
20/03/23 13:03:48 ERROR Connection: [peer master-10.7.92.128:7051(10.7.92.128:7051)] unexpected exception from downstream on [id: 0x7cf8cc26]
java.lang.NullPointerException
Caused by: org.apache.kudu.shaded.org.jboss.netty.handler.timeout.ReadTimeoutException
org.apache.kudu.client.NonRecoverableException: can not complete before timeout: KuduRpc
026
027
sparkstreaming优化
https://www.cnblogs.com/hejunhong/p/12299553.html
028
用脚本kill sparkstreaming程序可能存在的问题
https://blog.csdn.net/ZMC921/article/details/80350538
029
sparkstreaming 日志不断堆积的问题
https://blog.csdn.net/jsjsjs1789/article/details/82902060
--conf spark.eventLog.enabled=false
030
cloudmanager监控页面异常没有数据,但是也没有刷新页面每批为零的情况,过段时间会自动停止streaming程序,首先查看日志,不一定有报错,这种情况要检查偏移量,用命令对存储在zookeeper中的偏移量进行修正。
031
build artifact 在maven无法打包的时候可以使用该方式打包
https://blog.csdn.net/Felix_CB/article/details/86602162
032
directkafkainputdtream receive -1 when reading from channel ,socket has like
更多推荐
所有评论(0)