Можно ли вставить строку следующего формата в Кассандре с помощью Hector API:Кассандра: хранение значения столбца с дополнительными данными
rowkey1 ==> "Column name1":{"item1","item2","item3"}
"Column name2":{"item11","item22","item33"}
"Column name3":{"item111","item222","item333"}
rowkey2 ==> "Column name1-a":{"item1","item2","item3"}
"Column name2-b":{"item11","item22","item33"}
"Column name3-c":{"item111","item222","item333"}
т.е. каждого столбец будет состоять из: column_name, множественного значения столбца т.е. Столбец будет состоять из имени столбца, и его значение будет состоять из нескольких элементов типа {'item title', 'item price', 'about item'} . Название столбца и тип значения столбца динамические, в другой строке могут быть разные столбцы с разным числом и разными значениями.
Я думал о том, чтобы делать что-то вроде: имя столбца будет String и значением столбца будет некоторый объект класса с требуемым свойством. Это хорошо? Идея заключается в том, что она будет содержать все в одном столбце, а в одном вызове на столбец будут указаны все несколько значений. Использование нескольких столбцов может увеличить работу чтения нескольких столбцов.
Редактирование и чтение записей не должно быть проблемой, как я думаю. Я использую API-интерфейс hector core, а не CQL, поскольку столбцы являются динамическими.
Любые предложения или решения?
Не могли бы вы повлиять на обновленный. Я просто упростил понимание scanerio. – manish
Кстати, пожалуйста, прочитайте мою статью о мифах Кассандры, прежде чем рассказывать кому-либо еще, что «Кассандра - это база данных с ключом». :) http://www.infoq.com/articles/cassandra-mythology – jbellis
@Manish Хорошо, теперь я понимаю, что вы ищете. Насколько я знаю, с Astyanax вы можете легко хранить объекты (с другими клиентами, такими как Hector I, я этого не делал) См. Эту ссылку: https: //github.com/Netflix/astyanax/wiki/Chunked-Object-Store – ftrujillo