我们正在做一些POC,以使用Alpakka CassandraSource连续读取cassandra表。以下是示例代码:
final Statement stmt = new SimpleStatement("SELECT * FROM testdb.emp1").setFetchSize(20);
final CompletionStage<List<Row>> rows = CassandraSource.create(stmt, session).runWith(Sink.seq(), materializer);
rows.thenAcceptAsync( e -> e.forEach(System.out::println));
上面的代码从emp1表中获取行。由于此表持续增长,因此我们需要在数据可用后立即继续阅读。有什么办法可以在CassandraSource中设置连续读取?
答案 0 :(得分:0)
当前不支持在Alpakka Cassandra连接器中连续读取表。但是,您可以通过将CassandraSource.create
包装在RestartSource.withBackoff
中使其工作,从而在完成后重新启动cassandra源。有关重新启动源in the documentation的更多信息。