繁体   English   中英

Flink 和 Cassandra 连接问题

[英]Flink and Cassandra Connection Issue

当连接通常在 Flink 的 DataStreams 之外进行时,是否有人遇到过从 Flink 作业连接到 Cassandra 的问题?

    Session session = clusterBuilder.getCluster().connect();
    ResultSet resultSet = session.execute(resultStatement.getQuery());

我不是在语言环境中而是在开发环境中面对这个问题。 在本地连接中它工作正常。 当我将这段代码保存在 DataStream processElement 中时,即使使用相同的 clusterbuilder 设置,连接也在 Dev 中建立。

我在 main 中收到 programInvocation 错误,由于 Flink 1.7 的限制,我看不到整个错误。 在仪表板中,您无法在 Flink 1.7 中看到完整的异常跟踪。 作业未提交。

任何人对此有任何线索或遇到类似的事情?

最可能的原因(我不是 Flink 专家,但我已经看到 Spark 出现这个问题)是Session对象不是可序列化的,并且无法发送给执行者/工作者。

为了解决这个问题,通常有一个带有显式open / close调用的 API,允许初始化不可序列化的类。 正如我所见,Flink 有一个用于外部数据访问异步 I/O概念,它可能被用于访问 Cassandra。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM