Как изменить существующую схему объекта в geomesa-аккумуляторе

У меня есть функция "f" в каталоге (таблица) "c", которая содержит мои временные и пространственные данные вместе с некоторыми атрибутами (такими как скорость и имя). Я использую Java для вставки записей в этот тип объектов, и все работает нормально.

Мой вопрос: что если в будущем мне нужно будет хранить больше атрибутов вместе с существующими (как мы добавляем столбцы в RDBM для хранения большего количества деталей)?

Как интегрировать такие изменения вместе с существующей схемой простого типа объекта?

1 ответ

Решение

Вы можете добавить атрибуты в конце своего sft, когда новые атрибуты станут доступными. Тем не менее, это приведет к тому, что для этих полей в уже загруженных записях будет возвращено значение null. Кроме того, все новые добавленные поля не будут проиндексированы, поэтому вам нужно будет использовать что-то вроде add-attribute-index Команда из инструментов командной строки, если это желательно.

Кроме того, если ваши данные принимаются в формате json, вы можете сохранить запись в виде двоичного объекта json и запросить произвольные значения в двоичном объекте json с использованием синтаксиса JsonPath. Конечно, это также не будет проиндексировано, но может быть полезно в некоторых ситуациях, когда у вас есть сильно измененные данные. Это более новая функция в настоящее время, поэтому ваш пробег может варьироваться при ее использовании.

Другие вопросы по тегам