|
А объясните пожалуйста "3 кита" на которых стоит механизм транзакций в кластерах?
|
|||
---|---|---|---|
#18+
Под кластером я подразумеваю KV-хранилку пошарденную на 10 узлов, например. Допустим, каждый узел у нас: - является "мастером" для 1/10 части пространства ключей (имеет право их менять) - является "репликой" для какой-то части ключей (тупо читая журнал каких-то других нод и вылавливая там то, что реплицируем). Ну, какой-то там коэффициент репликации есть. Интересует возможная физическая реализация транзакции, затрагивающей изменения ключей, мастером для которых являются разные ноды. Читать исходники не предлагать, предлагать презенташки-видосики или лучше краткое изложение ключевого механизма на 1 абзац своими словами. Я понимаю, решений зоопарк (где-то даже свалили всё на клиента). Зоопарк и интересует. Онтология распределённого коммита. Хотя, вроде как в серьёзных местах он сам по себе считается ересью. Но это мои слухи. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 22:27 |
|
А объясните пожалуйста "3 кита" на которых стоит механизм транзакций в кластерах?
|
|||
---|---|---|---|
#18+
ReciprocatedПод кластером я подразумеваю KV-хранилку пошарденную на 10 узлов, например. Допустим, каждый узел у нас: - является "мастером" для 1/10 части пространства ключей (имеет право их менять) - является "репликой" для какой-то части ключей (тупо читая журнал каких-то других нод и вылавливая там то, что реплицируем). Ну, какой-то там коэффициент репликации есть. Интересует возможная физическая реализация транзакции, затрагивающей изменения ключей, мастером для которых являются разные ноды. Читать исходники не предлагать, предлагать презенташки-видосики или лучше краткое изложение ключевого механизма на 1 абзац своими словами. Я понимаю, решений зоопарк (где-то даже свалили всё на клиента). Зоопарк и интересует. Онтология распределённого коммита. Хотя, вроде как в серьёзных местах он сам по себе считается ересью. Но это мои слухи.Насколько я знаю, в шардингах обычно кросс-узловые транзакции не поддерживаются. А частенько не поддерживаются и в рамках одного узла: Cassandra , MongoDB . Ну там знаете CRUD и бла-бла. Как вариант всякие распределенные транзакции и двухфазные Commit. P.S. в этом плане интересны слухи про шардинг в Oracle 12.2 - будет ли там полный ACID? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2016, 03:11 |
|
А объясните пожалуйста "3 кита" на которых стоит механизм транзакций в кластерах?
|
|||
---|---|---|---|
#18+
Alexander RyndinReciprocatedПод кластером я подразумеваю KV-хранилку пошарденную на 10 узлов, например. Допустим, каждый узел у нас: - является "мастером" для 1/10 части пространства ключей (имеет право их менять) - является "репликой" для какой-то части ключей (тупо читая журнал каких-то других нод и вылавливая там то, что реплицируем). Ну, какой-то там коэффициент репликации есть. Интересует возможная физическая реализация транзакции, затрагивающей изменения ключей, мастером для которых являются разные ноды. Читать исходники не предлагать, предлагать презенташки-видосики или лучше краткое изложение ключевого механизма на 1 абзац своими словами. Я понимаю, решений зоопарк (где-то даже свалили всё на клиента). Зоопарк и интересует. Онтология распределённого коммита. Хотя, вроде как в серьёзных местах он сам по себе считается ересью. Но это мои слухи.Насколько я знаю, в шардингах обычно кросс-узловые транзакции не поддерживаются. А частенько не поддерживаются и в рамках одного узла: Cassandra , MongoDB . Ну там знаете CRUD и бла-бла. Как вариант всякие распределенные транзакции и двухфазные Commit. P.S. в этом плане интересны слухи про шардинг в Oracle 12.2 - будет ли там полный ACID? хмм.. вряд ли они сделают полнофункциональное чудо ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2016, 12:48 |
|
А объясните пожалуйста "3 кита" на которых стоит механизм транзакций в кластерах?
|
|||
---|---|---|---|
#18+
ReciprocatedПод кластером я подразумеваю KV-хранилку пошарденную на 10 узлов, например. Допустим, каждый узел у нас: - является "мастером" для 1/10 части пространства ключей (имеет право их менять) - является "репликой" для какой-то части ключей (тупо читая журнал каких-то других нод и вылавливая там то, что реплицируем). Ну, какой-то там коэффициент репликации есть. Интересует возможная физическая реализация транзакции, затрагивающей изменения ключей, мастером для которых являются разные ноды. Читать исходники не предлагать, предлагать презенташки-видосики или лучше краткое изложение ключевого механизма на 1 абзац своими словами. Я понимаю, решений зоопарк (где-то даже свалили всё на клиента). Зоопарк и интересует. Онтология распределённого коммита. Хотя, вроде как в серьёзных местах он сам по себе считается ересью. Но это мои слухи. Можно и короче абзаца. Key: Двухфазный коммит ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2016, 18:36 |
|
А объясните пожалуйста "3 кита" на которых стоит механизм транзакций в кластерах?
|
|||
---|---|---|---|
#18+
Reciprocated, В кассандре нет мастер ноды. Все ноды одинаковые. Dml с клиента приходит на одну из нод. Она будет координатором для этого запроса (отвечает за выполнение дмл). В кластере установлен RF (replication factor) - сколько успешных реплик должно быть, чтобы операция считалась успешно завершенной. Скажем -3. Координатор вычисляет по значению главного ключа номер ноды куда пойдет первая реплика, а по заданной стратегии - номера нод для остальных реплик. Координатор отправляет туда данные и время начала операции и ждет 2 успешных ответа ( > 50%). Если пришло меньше 2 ответов - на клиента отправляется ошибка. Данные не откатываются, потому что ... Правильно - читатель потом разберется. При чтении задается уровень согласованности реплик. Когда клиент отправляет запрос, координатор определяет ноды где лежат реплики и запрашивает данные и время последнего обновления. Если пришло количество реплик с одинаковым временем обновления равное уровню консистентности - то это последняя версия успешно записанных данных. Там еще в бэкграунде бегает процесс который сравнивает времена обновлений колонок и значения от неуспешных операций перезаписывает на успешные. Могут быть неточности - только разбираюсь с этим чудом. Курсы с деталями - https://academy.datastax.com/courses/ds201-cassandra-core-concepts ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2016, 00:54 |
|
А объясните пожалуйста "3 кита" на которых стоит механизм транзакций в кластерах?
|
|||
---|---|---|---|
#18+
АстронавтReciprocated, В кассандре нет мастер ноды. Все ноды одинаковые. Dml с клиента приходит на одну из нод. Она будет координатором для этого запроса (отвечает за выполнение дмл). В кластере установлен RF (replication factor) - сколько успешных реплик должно быть, чтобы операция считалась успешно завершенной. Скажем -3. Координатор вычисляет по значению главного ключа номер ноды куда пойдет первая реплика, а по заданной стратегии - номера нод для остальных реплик. Координатор отправляет туда данные и время начала операции и ждет 2 успешных ответа ( > 50%). Если пришло меньше 2 ответов - на клиента отправляется ошибка. Данные не откатываются, потому что ... Правильно - читатель потом разберется. При чтении задается уровень согласованности реплик. Когда клиент отправляет запрос, координатор определяет ноды где лежат реплики и запрашивает данные и время последнего обновления. Если пришло количество реплик с одинаковым временем обновления равное уровню консистентности - то это последняя версия успешно записанных данных. Там еще в бэкграунде бегает процесс который сравнивает времена обновлений колонок и значения от неуспешных операций перезаписывает на успешные. Могут быть неточности - только разбираюсь с этим чудом. Курсы с деталями - https://academy.datastax.com/courses/ds201-cassandra-core-concepts Одно из решений у кассандры, но свсем не двухфазная транзакция ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2016, 11:23 |
|
А объясните пожалуйста "3 кита" на которых стоит механизм транзакций в кластерах?
|
|||
---|---|---|---|
#18+
АстронавтReciprocated, В кассандре нет мастер ноды. Все ноды одинаковые. Dml с клиента приходит на одну из нод. Она будет координатором для этого запроса (отвечает за выполнение дмл). В кластере установлен RF (replication factor) - сколько успешных реплик должно быть, чтобы операция считалась успешно завершенной. Скажем -3. Координатор вычисляет по значению главного ключа номер ноды куда пойдет первая реплика, а по заданной стратегии - номера нод для остальных реплик. Координатор отправляет туда данные и время начала операции и ждет 2 успешных ответа ( > 50%). Если пришло меньше 2 ответов - на клиента отправляется ошибка. Данные не откатываются, потому что ... Правильно - читатель потом разберется. При чтении задается уровень согласованности реплик. Когда клиент отправляет запрос, координатор определяет ноды где лежат реплики и запрашивает данные и время последнего обновления. Если пришло количество реплик с одинаковым временем обновления равное уровню консистентности - то это последняя версия успешно записанных данных. Там еще в бэкграунде бегает процесс который сравнивает времена обновлений колонок и значения от неуспешных операций перезаписывает на успешные. Могут быть неточности - только разбираюсь с этим чудом. Курсы с деталями - https://academy.datastax.com/courses/ds201-cassandra-core-concepts спасибо за наводку на источник ! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2016, 13:54 |
|
А объясните пожалуйста "3 кита" на которых стоит механизм транзакций в кластерах?
|
|||
---|---|---|---|
#18+
Астронавт на клиента отправляется ошибка. Данные не откатываются, потому что ... Правильно - читатель потом разберется. При чтении задается уровень согласованности реплик. а делиты как? версионируются чтоли?? или там нет делитов? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2016, 12:45 |
|
А объясните пожалуйста "3 кита" на которых стоит механизм транзакций в кластерах?
|
|||
---|---|---|---|
#18+
ReciprocatedПод кластером я подразумеваю KV-хранилку пошарденную на 10 узлов, например. Допустим, каждый узел у нас: - является "мастером" для 1/10 части пространства ключей (имеет право их менять) - является "репликой" для какой-то части ключей (тупо читая журнал каких-то других нод и вылавливая там то, что реплицируем). Ну, какой-то там коэффициент репликации есть. Интересует возможная физическая реализация транзакции, затрагивающей изменения ключей, мастером для которых являются разные ноды. Читать исходники не предлагать, предлагать презенташки-видосики или лучше краткое изложение ключевого механизма на 1 абзац своими словами. Я понимаю, решений зоопарк (где-то даже свалили всё на клиента). Зоопарк и интересует. Онтология распределённого коммита. Хотя, вроде как в серьёзных местах он сам по себе считается ересью. Но это мои слухи. Все так же как при синхронной репликации. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2016, 12:46 |
|
|
start [/forum/topic.php?fid=48&msg=39191035&tid=1856763]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
182ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 292ms |
0 / 0 |