0
我正在使用Cassandra java驅動程序從Cassandra表中讀取數據。在執行查詢之後,我得到一個java.util.Iterator,並在for循環中讀取它。並行讀取java.util.Iterator
我不知道是否有任何可能性,我可以讀取這個迭代器並行而不是一次在for循環中的一個項目。
N個流媒體API(FS2?)中的任何一個都可以幫我嗎? (否我不能在此時使用Spark或Hadoop。)
我正在使用Cassandra java驅動程序從Cassandra表中讀取數據。在執行查詢之後,我得到一個java.util.Iterator,並在for循環中讀取它。並行讀取java.util.Iterator
我不知道是否有任何可能性,我可以讀取這個迭代器並行而不是一次在for循環中的一個項目。
N個流媒體API(FS2?)中的任何一個都可以幫我嗎? (否我不能在此時使用Spark或Hadoop。)
Spliterator是遍歷和分割源元素的對象。由Spliterator覆蓋的元素的源可以是例如 陣列,集合,IO通道或生成器函數。
如果這是更多的問題來並行化給定的集合,因爲你可以創建分區和處理每個分區。
例如。
Spliterator<CassandraRecord> cassandraRecordsSpliterator = recordsIterator.spliterator();
Spliterator<CassandraRecord> eachPartition = cassandraRecordsSpliterator.trySplit();
System.out.println(" " + eachPartition.estimateSize()); //will give you x
System.out.println(" " + cassandraRecordsSpliterator.estimateSize()); // will have N - x