Почему нельзя обойтись без BigTable?
От: pkl  
Дата: 24.01.16 14:37
Оценка:
Какие принципиальные отличия от пошарденного она мильён компутеров key-value хранилища (map[пачка байт:пачка байт]) даёт та данных, которая описана в PDF-доке по BigTable?

BigTable:
RowKey -> ColumnFamily -> Column -> Timestamp -> Value


Ну, например, я хочу сохранить 10 версий ячейки ("mumu" -> "zuzu" -> "abc" -> [0...9] (версии 0...9)).

Почему задачу не решит гора составных ключей вида "mumu,zuzu,abc,0" ... "mumu,zuzu,abc,9"?
Хочешь добавить новую колонку? Добавь ключ "mumu,zuzu,newcolumn,8765432".
И т.п.
Re: Почему нельзя обойтись без BigTable?
От: m2l  
Дата: 24.01.16 15:13
Оценка:
Здравствуйте, pkl, Вы писали:

pkl>Какие принципиальные отличия от пошарденного она мильён компутеров key-value хранилища (map[пачка байт:пачка байт]) даёт та данных, которая описана в PDF-доке по BigTable?

pkl>Почему задачу не решит гора составных ключей вида "mumu,zuzu,abc,0" ... "mumu,zuzu,abc,9"?
pkl>Хочешь добавить новую колонку? Добавь ключ "mumu,zuzu,newcolumn,8765432".
pkl>И т.п.

В твоих рассуждениях есть изъян: зачем нужна гора составных ключей, если можно обойтись одним ключом произвольной длины?

Отсюда выходит и ответ: что бы база могла оптимизировать данные согласно из структуры. Bigtable делали с оглядкой на быстрый доступ ко всем столбцам отдельно взятой строки и версионную (с привязкой ко времени) целостность. Поэтому ключ указывающий на стоку имеет физический смысл — эта группа данных, которая должна быть на одном узле или нескольких близких. Равно как и ключ timestamp в некоторых случаях может иметь конкретный физический смысл — версию данных или время их изменения. Отсюда и небольшая специфика адресации.
Re[2]: Почему нельзя обойтись без BigTable?
От: pkl  
Дата: 24.01.16 15:36
Оценка:
Здравствуйте, m2l, Вы писали:

m2l>Здравствуйте, pkl, Вы писали:


pkl>>Какие принципиальные отличия от пошарденного она мильён компутеров key-value хранилища (map[пачка байт:пачка байт]) даёт та данных, которая описана в PDF-доке по BigTable?

pkl>>Почему задачу не решит гора составных ключей вида "mumu,zuzu,abc,0" ... "mumu,zuzu,abc,9"?
pkl>>Хочешь добавить новую колонку? Добавь ключ "mumu,zuzu,newcolumn,8765432".
pkl>>И т.п.

m2l>В твоих рассуждениях есть изъян: зачем нужна гора составных ключей, если можно обойтись одним ключом произвольной длины?


m2l>Отсюда выходит и ответ: что бы база могла оптимизировать данные согласно из структуры. Bigtable делали с оглядкой на быстрый доступ ко всем столбцам отдельно взятой строки и версионную (с привязкой ко времени) целостность. Поэтому ключ указывающий на стоку имеет физический смысл — эта группа данных, которая должна быть на одном узле или нескольких близких. Равно как и ключ timestamp в некоторых случаях может иметь конкретный физический смысл — версию данных или время их изменения. Отсюда и небольшая специфика адресации.

Замечание: "mumu,zuzu,newcolumn,8765432" -- один ключ произвольной длины. Не понял про "гору составных ключей".
Re[3]: Почему нельзя обойтись без BigTable?
От: wildwind Россия  
Дата: 06.02.16 14:00
Оценка:
pkl <99419@users.rsdn.ru> писал(а) в своём письме Sun, 24 Jan 2016 20:36:15 +0500:

> Замечание: "mumu,zuzu,newcolumn,8765432" -- один ключ произвольной длины. Не понял про "гору составных ключей".

>

Не ты ли выше назвал эти ключи составными?
Posted via RSDN NNTP Server 2.1 beta
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.