Обычно я загружаю данные из Cassandra в Apache Spark таким образом, используя Java:
SparkContext sparkContext = StorakleSparkConfig.getSparkContext();
CassandraSQLContext sqlContext = new CassandraSQLContext(sparkContext);
sqlContext.setKeyspace("midatabase");
DataFrame customers = sqlContext.cassandraSql("SELECT email, first_name, last_name FROM store_customer " +
"WHERE CAST(store_id as string) = '" + storeId + "'");
Но представьте, что у меня есть шардер, и мне нужно загрузить в этот DataFrame несколько партиционных ключей. Я мог бы использовать WHERE IN (...) в своем запросе и снова использовать метод cassandraSql. Но я немного неохотно использую WHERE IN из-за печально известной проблемы с наличием единственной точки отказа с точки зрения узла координатора. Это объясняется здесь:
Есть ли способ использовать несколько запросов, но загружать их в один DataFrame?