当我从redis读取表时,出现以下错误。
以下代码通常可以正常工作。
val readDF= spark.sparkContext.fromRedisKeyPattern(tableName,5).getHash().toDS()
通常它的工作量少于200万行。但是,如果我正在阅读一张大桌子,就会收到此错误。
18/10/11 17:08:25错误执行器:阶段3中的任务37.0中的异常 (TID 338)redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketTimeoutException:读取超时于 redis.clients.util.RedisInputStream.ensureFill(RedisInputStream.java:202) 在 redis.clients.util.RedisInputStream.readByte(RedisInputStream.java:40)
val redis = spark.sparkContext.fromRedisKeyPattern(tableName,100).getHash()。toDS()
我还更改了redis的一些设置,但我认为这与事实无关。 你知道我该如何解决这个问题?