2014-02-12 6 views
2

Как вы имеете дело с изменением схемы в Кассандре? сказать, что яКак выполнить обновление в Cassandra через таблицы?

table users (u_uuid, first name) 

и

table videos(v_uuid, name) 

, а также

table users_videos (uuid, u_uuid, first name, v_uuid, name) 

. Через 6 месяцев я решил изменить схему с новыми данными, которые у меня есть о «Фамилии» моих пользователей. Как обновить все мои таблицы (users и users_videos), чтобы добавить данные последнего имени, после того, как я сделал ALTER? Как загрузить данные в каждой и каждой из таблиц с согласованностью? Другими словами, как вы имеете дело с массивными обновлениями, учитывая, что вы не можете присоединиться к данным?

спасибо, Matt

ответ

2

С CQL, вы можете использовать BATCH statement для выполнения нескольких обновлений/вставка атомарно:

BEGIN BATCH 
    UPDATE... 
    UPDATE... 
    UPDATE... 
    ... 
APPLY BATCH 

В случае, если вы пытаетесь манипулировать большое количество строк один раз, вы можете хочу посмотреть на Cassandra bulk loader.

+0

Итак, 'Batch' можно использовать для вставки/обновления другой таблицы в том же' Batch'? – manish