#python #cassandra
#python #cassandra
Вопрос:
Я хочу хранить dict
объекты python (ту же структуру) в Cassandra. Я хочу хранить их только в одном столбце. Я могу создать столбец Cassandra:
- как
MAP
TEXT
затем я могу сериализовать dict в строку json и сохранить ее.
Но не все элементы в моем python dict
сопоставляются с одним и тем же типом, например
dict = {"key_1": "abc", "key_2": 10, "key_3": True}
В этом случае, я думаю, действителен только вариант 2? В моем реальном проекте мне нужно создать много столбцов. Некоторые сопоставляются с тем же типом, а некоторые нет. Для удобства я хочу просто сериализовать их все и сохранить как TEXT
. Но это кажется мне немного неортодоксальным. Какова наилучшая практика?
Ответ №1:
Если вы не заботитесь о сопоставлении каждого dict
ключа со столбцом CQL dict
text
, то я обычно рекомендую сохранить все в столбце CQL.
Если тип данных значений одинаков (это либо все текстовые, либо целые числа), вы можете сохранить пары ключ-значение в map
коллекции CQL, чтобы было проще извлекать значения на основе ключа, хотя вы уже указали, что значения относятся к разным типам данных. Приветствия!