Я пытаюсь сохранить некоторые данные временных рядов на следующую семьи колонки:Обновление столбцов TimeUUID в Кассандре
create column family t_data with comparator=TimeUUIDType and default_validation_class=UTF8Type and key_validation_class=UTF8Type;
Я успешно вставки данных таким образом:
data={datetime.datetime(2013, 3, 4, 17, 8, 57, 919671):'VALUE'}
key='row_id'
col_fam.insert(key,data)
Как вы можете см., используя объект datetime, поскольку имя столбца pycassa правильно преобразуется в объект timeUUID.
[[email protected]] get t_data[row_id];
=> (column=f36ad7be-84ed-11e2-af42-ef3ff4aa7c40, value=VALUE, timestamp=1362423749228331)
Иногда приложение должно обновление некоторых данных. Проблема заключается в том, что когда я пытаюсь обновить этот столбец, передавая один и тот же объект datetime, pycassa создает другой объект UUID (часть времени такая же), поэтому вместо обновления столбца создается другое.
[[email protected]] get t_data[row_id];
=> (column=f36ad7be-84ed-11e2-af42-ef3ff4aa7c40, value=VALUE, timestamp=1362423749228331)
=> (column=**f36ad7be**-84ed-11e2-b2fa-a6d3e28fea13, value=VALUE, timestamp=1362424025433209)
Вопрос в том, как я могу обновить столбцы на основе TimeUUID с помощью pycassa, передающего объект datetime? или, если это не правильный способ сделать это, что рекомендуется?
Благодарим вас за ответ. Дизайн приложения подразумевает, что значения, связанные с строкой, не являются правильными, но необходимо, чтобы они обновили их ... но ваш ответ прояснит мне путь к следующему, чтобы сделать это. Спасибо. – jcazor