как изменить (обновить) значение ключа строки hbase, например, с aaa на bbb?

как я могу изменить значение ключа строки в hbase, этот ключ строки состоит из некоторого столбца в таблице, и все значения не приходят одновременно. после обновления значения столбца я хочу обновить ключ строки, возможно ли это сделать? например, у меня есть столбцы c1, c2, c3, и мое уникальное значение в каждой строке равно c1, c2 вместе, а ключ строки равен c1.value конкатенации c2.value. сначала вставьте заполните c1, а ключ строки - c1, в следующий раз заполните c2 для существующей строки (c1), и ключ строки должен установить c1c2 для существующей строки c1


person reihaneh    schedule 24.08.2016    source источник


Ответы (1)


В Splice Machine (с открытым исходным кодом) мы столкнулись с этой проблемой при обновлении базовой и индексной таблиц в hbase. «Обновление» на самом деле является удалением и вставкой при изменении первичного ключа или ключа индекса (ни в коем случае). В нашей системе что-то вроде этого...

создать таблицу foo (col1, col2, первичный ключ (col1)); вставить в foo значения (1,2),(3,4);

обновить набор foo col1 = col2;

Мы бы удалили строки 1,3 и записали строки 2,4 внутри одной транзакции/буфера.

Надеюсь, что это помогает и удачи.

Вот ссылка на наш сайт сообщества на случай, если вы захотите взглянуть на наш код.

http://community.splicemachine.com/

person John Leach    schedule 24.08.2016