GeoMesa: таблица Cassandra с составным ключом

Можно ли создать таблицу Cassandra с ключами, определяющими GeoMesa (т.е. составным ключом)? У меня есть искровое задание, которое записывает в Кассандру, и для выходной таблицы необходим составной ключ. Теперь я хотел бы создать / записать ту же таблицу каким-то образом через GeoMesa api, а не напрямую в Cassandra. Формат такой:

CREATE TABLE IF NOT EXISTS mykeyspace.testcompkey (pkey1 text, ckey1 int, attr1 int, attr2 int, minlat decimal, minlong decimal, maxlat decimal, maxlong decimal, updatetime text, PRIMARY KEY((pkey1), ckey1) )

Это возможно? Вы также можете увидеть в операторе создания таблицы, что у меня есть ключ раздела и ключ кластеризации. Из того, что я прочитал, я считаю, что Geoserver поддерживает как простые, так и сложные функции. Мне просто интересно, распространяется ли эта поддержка на область Кассандры с GeoMesa?

Спасибо


person user1930364    schedule 01.02.2018    source источник


Ответы (1)


GeoMesa действительно использует составные разделы и ключи кластеризации для таблиц Cassandra, но ключи не могут быть настроены пользователем - они предназначены для облегчения пространственных / временных / атрибутных запросов CQL.

Ключи можно увидеть в реализациях индексной таблицы здесь. Поле columns (например, здесь) определяет первичные ключи. Столбцы с partition = true используются для разбиения, остальные используются для кластеризации.

person Emilio Lahr-Vivaz    schedule 01.02.2018
comment
Вы также можете видеть операторы создания таблицы, зарегистрированные на информационном уровне, когда вы создаете новую схему (dataStore.createSchema) - person Emilio Lahr-Vivaz; 01.02.2018
comment
Итак, какой бы формат строки вы ни хотели записать в GeoMesa, он должен быть без ключей, верно? Просто плоский, если хотите, потому что GeoMesa добавляет свои собственные ключи в строку перед записью в Cassandra. - person user1930364; 01.02.2018
comment
Да, вы взаимодействуете с ним через API геоинструментов, поэтому вы определяете свои данные как SimpleFeatureType, что в основном является плоским. GeoMesa создаст несколько таблиц с разными ключами для поддержки разных шаблонов запросов. - person Emilio Lahr-Vivaz; 01.02.2018
comment
Хорошо, большое спасибо за информацию, очень признателен - person user1930364; 01.02.2018