Mam tabeli jak to w CQL3Dodaj kolumny dynamicznie w Cassandry
create table product_info
(
key text,
value text,
Primary key (key)
);
Jest to pionowy stół. Ponieważ mogę wstawić nowe wiersze z parą (klucz, wartość).
Przykładowe dane będą:
product_info
key | value
-------------------------------------------
product_name | sample_product
quantity | 2
manufacture | sample_manufacturer
.... ....
Ale to, co jest mi potrzebne poziomy stół, gdzie mógłbym w stanie dodać kolumny dynamicznie bez zmiany tabeli.
product_info
product_name | quantity | manufacture | ....
------------------------------------------------------------------------------
sample_product | 2 | sample_manufacturer | ....
muszę strukturę jak w powyższej tabeli, trzeba zachować na dodanie kolumn w locie.
CQL3 zapewnia opcję dynamicznego dodawania kolumn, ale wcześniej musimy zmienić tabelę.
Muszę wiedzieć, czy istnieje inna metoda, która na to pozwala.
Znalazłem, że przy użyciu oszczędzania API jest to możliwe, ale ponieważ oszczędzanie nie jest bardziej obsługiwane, nie można tego użyć.
Czy jest jakikolwiek inny interfejs API, taki jak hector lub cokolwiek innego, który obsługuje to?
Przejrzałem podobne stanowiska przepełnienia stosu, ale nie dostałem lepszego rozwiązania.
Mojego pierwszego chociaż było: robisz to źle ™. Cassandra jest już magazynem kluczy/wartości i może obsłużyć ten dokładny scenariusz OOTB. Zasadniczo symulujesz magazyn kluczy/wartości w innym magazynie kluczy/wartości, co nie ma większego sensu, IMHO. Tak więc drugie podejście jest dokładnie tym, co powinieneś zrobić i co Cassandra może zrobić, mimo że używasz tego dobrze. Pierwsze podejście to po prostu nadmierne komplikowanie prostych rzeczy. – JensG