В моей работе по искрам я читаю данные из cassandra, используя утилиту java cassandra. Мой запрос читает так:[Cassandra] Фильтр на уровне ключевого ключа в cassandra sql в искровом задании, вызывающем избыточность использования процессора.
JavaRDD<CassandraRow> cassandraRDD = functions.cassandraTable("keyspace","column_family").
select("timeline_id","shopper_id","product_id").where("action=?", "Viewed")
Мой уровень ключа строки установлен на столбец действий. Когда я запускаю свою искровую работу, это вызывает чрезмерное использование процессора, но когда я удаляю фильтр в столбце действий, он работает нормально.
Пожалуйста, найдите ниже создания сценария таблицы для столбца Семейно
CREATE TABLE keyspace.column_family (
action text,
timeline_id timeuuid,
shopper_id text,
product_id text,
publisher_id text,
referer text,
remote_ip text,
seed_product text,
strategy text,
user_agent text,
PRIMARY KEY (action, timeline_id, shopper_id)
) WITH CLUSTERING ORDER BY (timeline_id DESC, shopper_id ASC)
AND bloom_filter_fp_chance = 0.01
AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}'
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy'}
AND compression = {'sstable_compression': 'org.apache.cassandra.io.compress.LZ4Compressor'}
AND dclocal_read_repair_chance = 0.1
AND default_time_to_live = 0
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair_chance = 0.0
AND speculative_retry = '99.0PERCENTILE';
Что я подозревая, как это action_item ключ строки, все данные получать подается с одного узла (горячая точка), и вот почему что узлы CPU могут стрелять. Кроме того, во время чтения есть только один раздел RDD, созданный в искровом задании. Любая помощь будет оценена по достоинству.
Вы можете разместить здесь CREATE TABLE сценарий вашего column_family? – doanduyhai
Добавил его в вопрос. –