Используя разъем spark-elasticsearch, можно напрямую загружать только необходимые столбцы из ES в Spark. Однако, похоже, не существует такой простой возможности сделать то же самое, используя коннектор spark-cassandra
Чтение данных из ES в Spark - здесь только необходимые столбцы переносятся из ES в Spark :
spark.conf.set('es.nodes', ",".join(ES_CLUSTER))
es_epf_df = spark.read.format("org.elasticsearch.spark.sql") \
.option("es.read.field.include", "id_,employee_name") \
.load("employee_0001") \
Чтение данных из Cassandra в Spark - здесь данные всех столбцов переносятся в Spark, а затем применяется select для извлечения интересующих столбцов:
spark.conf.set('spark.cassandra.connection.host', ','.join(CASSANDRA_CLUSTER))
cass_epf_df = spark.read.format('org.apache.spark.sql.cassandra') \
.options(keyspace="db_0001", table="employee") \
.load() \
.select("id_", "employee_name")
Это можно сделать то же самое для Кассандры? Если да, то как. Если нет, то почему бы и нет.