Active-active системы только для лайков котиков?
От: Finder_b  
Дата: 16.12.19 19:23
Оценка:
Последнее время увлекаюсь системами с одно ранговой репликацией. Например Master-master. К сожалению основными примерами применения таких систем являются Одноклассники, Фесбук, да Твитер. Вроде бы современные алгоритмы, позволяют писать даже финансовый учет. Напрмер гранола и рафт Но при попытке найти примеры использования, создается впечатление что концепция эктив-эктив просто не пригодна для написания хоть сколько сложной бизенс-логики. Все практические применения работают на eventual-consistency, и обеспечивают лайки котиков. О остальных местах, для отказоустойчивости делается холодный резерв, разной степени "холодности". Не ужели active-active не пригоден для таких систем?

Вообще есть хоть одна фирма, со сложной бизнес логикой, использующая Active-Active? Например финансовой сферы? Тема конечно интересная но складывается впечатление, что кроме пары полу-домашних pet-проектов применить ее не где.
Re: Active-active системы только для лайков котиков?
От: wildwind Россия  
Дата: 17.12.19 05:23
Оценка:
Здравствуйте, Finder_b, Вы писали:

F_>Все практические применения работают на eventual-consistency, и обеспечивают лайки котиков.


Так тебе не нравится первое или второе? Какой именно контрпример тебе нужен?
Re: Active-active системы только для лайков котиков?
От: wildwind Россия  
Дата: 17.12.19 05:32
Оценка:
Здравствуйте, Finder_b, Вы писали:

F_>Вообще есть хоть одна фирма, со сложной бизнес логикой, использующая Active-Active? Например финансовой сферы?


https://www.cockroachlabs.com/customers/
Годится?
Re: Active-active системы только для лайков котиков?
От: Ночной Смотрящий Россия  
Дата: 17.12.19 10:05
Оценка: +2
Здравствуйте, Finder_b, Вы писали:

F_>Все практические применения работают на eventual-consistency


САР теорему никто пока не отменял.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[2]: Active-active системы только для лайков котиков?
От: Finder_b  
Дата: 17.12.19 11:58
Оценка:
Здравствуйте, wildwind, Вы писали:

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


F_>>Все практические применения работают на eventual-consistency, и обеспечивают лайки котиков.


W>Так тебе не нравится первое или второе? Какой именно контрпример тебе нужен?

Почему ты так решил? Просто eventual-consistency для лайков котиков — это самый простой алгоритм. И то используется только социальными сетями. Не ужели только социальные сети заботятся о высокой доступности, а остальным плевать на своих клиентов?
Re[2]: Active-active системы только для лайков котиков?
От: Finder_b  
Дата: 17.12.19 12:14
Оценка: -1 :)
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Здравствуйте, Finder_b, Вы писали:


F_>>Все практические применения работают на eventual-consistency


НС>САР теорему никто пока не отменял.

Вообще отменили. Притом, еще до ее появления. Семейство алгоритмов Paxos (я выше приводил пару примеров) именно этим и занимается. Да есть ограничения, напрмер:
  1. При партиционировании доступность будет сохранятся только в большей половине кластера. А если разделить кластер ровно пополам, то не где не будет доступности.
  2. Доступность пропадет при отказе половины нод и больше.
  3. Даже гарантия работоспособности при отказе половины нод, очень трудно достижима. Скорее правильно говорить о любом количестве нод в одном датаценте.
  4. Большинство алгоритмов имеют факториальную сложность. К счастью обычно, это либо факториал от числа датацентров, либо фактриал от числа нод, но только при смене конфигурации кластера.
  5. Если менять конфигурацию кластера во время аварии, то сохранение consistency переходит в разряд черной магии.
  6. И т.д.

Но в целом достигается именно то что нужно. При отказе оборудования, сбоях сети и т.п. для клиентов сервис остается доступным и консистентным. То что это справедливо не для все частей системы, пользователям на это начхать с высокой колокольни.
Отредактировано 17.12.2019 15:12 Finder_b . Предыдущая версия .
Re[3]: Active-active системы только для лайков котиков?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 17.12.19 13:09
Оценка:
Здравствуйте, Finder_b, Вы писали:

F_>>>Все практические применения работают на eventual-consistency

НС>>САР теорему никто пока не отменял.
F_>Вообще отменили. Притом, еще до ее появления. Семейство алгоритмов Paxos (я выше приводил пару примеров) именно этим и занимается. Да есть ограничения, напрмер:
F_>* При позиционировании доступность будет сохранятся только в большей половине кластера. А если разделить кластер ровно пополам, то не где не будет доступности.

Что и требовалось показать.

F_>* Доступность пропадет при отказе половины нод и больше.


Сфероиппологическая доступность — для сферических коней, а не обычных пользователей.

F_>Но в целом достигается именно то что нужно. При отказе оборудования, сбоях сети и т.п. для клиентов сервис остается доступным и консистентным. То что это справедливо не для все частей системы, пользователям на это начхать с высокой колокольни.


Только если они лайкают котиков. Иначе им нужны более осмысленные гарантии.
The God is real, unless declared integer.
Отредактировано 19.12.2019 21:11 netch80 . Предыдущая версия .
Re[3]: Active-active системы только для лайков котиков?
От: wildwind Россия  
Дата: 17.12.19 13:28
Оценка:
Здравствуйте, Finder_b, Вы писали:

F_>Почему ты так решил? Просто eventual-consistency для лайков котиков — это самый простой алгоритм. И то используется только социальными сетями. Не ужели только социальные сети заботятся о высокой доступности, а остальным плевать на своих клиентов?


Твоя постановка вопроса стала еще более непонятной. Попробуй переформулировать.
Re: Active-active системы только для лайков котиков?
От: Qulac Россия  
Дата: 17.12.19 14:42
Оценка: +1
Здравствуйте, Finder_b, Вы писали:

F_>Последнее время увлекаюсь системами с одно ранговой репликацией. Например Master-master. К сожалению основными примерами применения таких систем являются Одноклассники, Фесбук, да Твитер. Вроде бы современные алгоритмы, позволяют писать даже финансовый учет. Напрмер гранола и рафт Но при попытке найти примеры использования, создается впечатление что концепция эктив-эктив просто не пригодна для написания хоть сколько сложной бизенс-логики. Все практические применения работают на eventual-consistency, и обеспечивают лайки котиков. О остальных местах, для отказоустойчивости делается холодный резерв, разной степени "холодности". Не ужели active-active не пригоден для таких систем?


F_>Вообще есть хоть одна фирма, со сложной бизнес логикой, использующая Active-Active? Например финансовой сферы? Тема конечно интересная но складывается впечатление, что кроме пары полу-домашних pet-проектов применить ее не где.


У бизнеса свой взгляд на этот счет. Вот откажет бухгалтерия в местной пятёрочке, на ушах будет стоять только этот магазин, тысячи других продолжат работу, а раз в определенный интервал времени отчеты со всех магазинов собираются в одном месте и анализируются. Смысл в том, что технические отказы неизбежны, нужно минимизировать их стоимость, поэтому супернавороченная система может уступать простой из-за высокой стоимости отказа, стоимости разработки и стоимости обслуживания.

P.S. Как там на самом деле в пятерочках не знаю, привел только для примера того, что бизнес смотрит на эти вещи иначе.
Программа – это мысли спрессованные в код
Re[4]: Active-active системы только для лайков котиков?
От: Finder_b  
Дата: 17.12.19 14:51
Оценка:
Здравствуйте, wildwind, Вы писали:

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


F_>>Почему ты так решил? Просто eventual-consistency для лайков котиков — это самый простой алгоритм. И то используется только социальными сетями. Не ужели только социальные сети заботятся о высокой доступности, а остальным плевать на своих клиентов?


W>Твоя постановка вопроса стала еще более непонятной. Попробуй переформулировать.

Я не помнимаю по чему active-active в режиме чтение-запись, используется только социальными сетями, и не используется в серьезных организациях. Может есть технологические ограничения, о которых я не знаю. Например система получается слишком сложной. Или просто всем безразлично удобство пользователей?
Re[4]: Active-active системы только для лайков котиков?
От: Finder_b  
Дата: 17.12.19 15:01
Оценка:
Здравствуйте, netch80, Вы писали:

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


F_>>>>Все практические применения работают на eventual-consistency

НС>>>САР теорему никто пока не отменял.
F_>>Вообще отменили. Притом, еще до ее появления. Семейство алгоритмов Paxos (я выше приводил пару примеров) именно этим и занимается. Да есть ограничения, напрмер:
F_>>1. При позиционировании доступность будет сохранятся только в большей половине кластера. А если разделить кластер ровно пополам, то не где не будет доступности.
N>Что и требовалось показать.
Гм, что именно? Что такую систему нужно разворачивать в нечетном числе датаценторов, чтобы ее не возможно было разделить точно пополам?

F_>>2. Доступность пропадет при отказе половины нод и больше.

N>Сфероиппологическая доступность — для сферических коней, а не обычных пользователей.
Понятие доступность весьма четко определено в сфере ИТ. Или ты разделяеш доступность на сфероиппологическую, и конкретную доступность, для конкретных пацанов?

F_>>Но в целом достигается именно то что нужно. При отказе оборудования, сбоях сети и т.п. для клиентов сервис остается доступным и консистентным. То что это справедливо не для все частей системы, пользователям на это начхать с высокой колокольни.

N>Только если они лайкают котиков. Иначе им нужны более осмысленные гарантии.
А что ты подразумеваеш под осмысленными гарантиями. Раз тебя не устраивать работоспособность после падения половины серверов, то возможно это работоспособность ситемы после падения всех ее серверов?
Отредактировано 17.12.2019 18:09 Finder_b . Предыдущая версия .
Re[2]: Active-active системы только для лайков котиков?
От: Finder_b  
Дата: 17.12.19 18:31
Оценка:
Здравствуйте, Qulac, Вы писали:


F_>>Вообще есть хоть одна фирма, со сложной бизнес логикой, использующая Active-Active? Например финансовой сферы? Тема конечно интересная но складывается впечатление, что кроме пары полу-домашних pet-проектов применить ее не где.

Q>У бизнеса свой взгляд на этот счет. Вот откажет бухгалтерия в местной пятёрочке, на ушах будет стоять только этот магазин, тысячи других продолжат работу, а раз в определенный интервал времени отчеты со всех магазинов собираются в одном месте и анализируются. Смысл в том, что технические отказы неизбежны, нужно минимизировать их стоимость, поэтому супернавороченная система может уступать простой из-за высокой стоимости отказа, стоимости разработки и стоимости обслуживания.
В целом с тобой согласен. Но ведь кроме бухгалтерии, может упасть сервер кассовых апаратов. Покупатели будут очень не довольны. Или сервер кторый обрабатывает транзакции с карт. Или интернет банк. А это потери тысяч клиентов. По чему нет упоминаний об active-active в таких областях?
Re[3]: Active-active системы только для лайков котиков?
От: Qulac Россия  
Дата: 17.12.19 19:32
Оценка:
Здравствуйте, Finder_b, Вы писали:

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



F_>>>Вообще есть хоть одна фирма, со сложной бизнес логикой, использующая Active-Active? Например финансовой сферы? Тема конечно интересная но складывается впечатление, что кроме пары полу-домашних pet-проектов применить ее не где.

Q>>У бизнеса свой взгляд на этот счет. Вот откажет бухгалтерия в местной пятёрочке, на ушах будет стоять только этот магазин, тысячи других продолжат работу, а раз в определенный интервал времени отчеты со всех магазинов собираются в одном месте и анализируются. Смысл в том, что технические отказы неизбежны, нужно минимизировать их стоимость, поэтому супернавороченная система может уступать простой из-за высокой стоимости отказа, стоимости разработки и стоимости обслуживания.
F_>В целом с тобой согласен. Но ведь кроме бухгалтерии, может упасть сервер кассовых апаратов. Покупатели будут очень не довольны. Или сервер кторый обрабатывает транзакции с карт. Или интернет банк. А это потери тысяч клиентов. По чему нет упоминаний об active-active в таких областях?

Там на кассах системник стоит, в нем наверное коды и цены товаров хранятся. Если имеется в виду "горячию" замену серверов при отказе, то наверняка для этого что ни будь используется, только это не относится к архитектуре, просто у нас несколько серверов работают как один, но более надежный, поэтому наверное и не упоминают.
Программа – это мысли спрессованные в код
Re[3]: Active-active системы только для лайков котиков?
От: Cyberax Марс  
Дата: 17.12.19 23:28
Оценка: +1
Здравствуйте, Finder_b, Вы писали:

W>>Так тебе не нравится первое или второе? Какой именно контрпример тебе нужен?

F_>Почему ты так решил? Просто eventual-consistency для лайков котиков — это самый простой алгоритм. И то используется только социальными сетями. Не ужели только социальные сети заботятся о высокой доступности, а остальным плевать на своих клиентов?
В целом, да.

Там где нужна гарантированная целостность (финансы, логистика, ...), обычно не такой большой объём транзакций.
Sapienti sat!
Re[5]: Active-active системы только для лайков котиков?
От: wildwind Россия  
Дата: 18.12.19 06:59
Оценка:
Здравствуйте, Finder_b, Вы писали:

F_>Я не помнимаю по чему active-active в режиме чтение-запись, используется только социальными сетями, и не используется в серьезных организациях. Может есть технологические ограничения, о которых я не знаю. Например система получается слишком сложной.


Во-первых, не только соцсетями. Я тебе привел ссылку с примерами других систем. Ограничения, конечно, есть, в том числе и сложность. Прежде всего, иметь и поддерживать один узел в прнципе проще, чем несколько. И дешевле. Во многих случаях просто нет большой нужды в распределенности.

F_>Или просто всем безразлично удобство пользователей?


А причем здесь вообще удобство?
и чем так хорош этот active-active?
От: VladCore  
Дата: 21.12.19 21:17
Оценка:
Здравствуйте, Finder_b, Вы писали:

F_>Последнее время увлекаюсь системами с одно ранговой репликацией. Например Master-master. К сожалению основными примерами применения таких систем являются Одноклассники, Фесбук, да Твитер. Вроде бы современные алгоритмы, позволяют писать даже финансовый учет. Напрмер гранола и рафт Но при попытке найти примеры использования, создается впечатление что концепция эктив-эктив просто не пригодна для написания хоть сколько сложной бизенс-логики. Все практические применения работают на eventual-consistency, и обеспечивают лайки котиков. О остальных местах, для отказоустойчивости делается холодный резерв, разной степени "холодности". Не ужели active-active не пригоден для таких систем?


F_>Вообще есть хоть одна фирма, со сложной бизнес логикой, использующая Active-Active? Например финансовой сферы? Тема конечно интересная но складывается впечатление, что кроме пары полу-домашних pet-проектов применить ее не где.


Несколько реплик (slave-вов) с выборами, в случае отвала чего-то, требует, во первых, в миллион раз меньше ресурсов на востановление в случае чего.

Что бы это знать не нужно быть узким специалистом.

А во вторых ты жалуешся на решение проблемы, а проблему так и не описал. чем этот active-active хорош?
Отредактировано 21.12.2019 21:18 VladCore . Предыдущая версия .
Re: Active-active системы только для лайков котиков?
От: Pzz Россия https://github.com/alexpevzner
Дата: 21.12.19 21:53
Оценка:
Здравствуйте, Finder_b, Вы писали:

F_>Вообще есть хоть одна фирма, со сложной бизнес логикой, использующая Active-Active? Например финансовой сферы? Тема конечно интересная но складывается впечатление, что кроме пары полу-домашних pet-проектов применить ее не где.


В целом, какой-нибудь банк имеет с одного пользователя много-много долларов в год, а какой-нибудь фейсбук нет. Поэтому фейсбуку приходится искать экономичное решение, в отличии от. Ну и надо понимать, банки и прочий финансовый сектор — ребята очень консервативные, используют технологии, которые до них уже пару-тройку десятков лет кто-нибудь обкатывал.

Ну а так, Bitcoin вроде попадает под твой вопрос, не?
Re[4]: Active-active системы только для лайков котиков?
От: Pzz Россия https://github.com/alexpevzner
Дата: 21.12.19 21:59
Оценка:
Здравствуйте, netch80, Вы писали:

F_>>Но в целом достигается именно то что нужно. При отказе оборудования, сбоях сети и т.п. для клиентов сервис остается доступным и консистентным. То что это справедливо не для все частей системы, пользователям на это начхать с высокой колокольни.


N>Только если они лайкают котиков. Иначе им нужны более осмысленные гарантии.


Ну в принципе, надо сказать, если мне банкомат выдал меньше бумажек, чем обещал (и списал со счета), то мне, по большому счету, все равно, CAP теорема в этом виновата, или вожделенная бумажка механически застряла внутри банкомата.

Жене однажды банкомат недосыпал денег. Заявление в банк она писала, получила ответ, что банкомат инкассировали, и бесхозных денег в нем не нашли, так что она со своими претензиями может пойти, куда подальше.
Re[5]: Active-active системы только для лайков котиков?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 22.12.19 06:46
Оценка:
Здравствуйте, Pzz, Вы писали:

F_>>>Но в целом достигается именно то что нужно. При отказе оборудования, сбоях сети и т.п. для клиентов сервис остается доступным и консистентным. То что это справедливо не для все частей системы, пользователям на это начхать с высокой колокольни.

N>>Только если они лайкают котиков. Иначе им нужны более осмысленные гарантии.
Pzz>Ну в принципе, надо сказать, если мне банкомат выдал меньше бумажек, чем обещал (и списал со счета), то мне, по большому счету, все равно, CAP теорема в этом виновата, или вожделенная бумажка механически застряла внутри банкомата.

В случае банкомата, скорее всего, начальное списание делается жёстко онлайн (если пропала связь, то он прерывает пробу), но с момента подтверждения блоком выдачи, что у него сформирован пакет бумажек на выдачу — то в нём ставится факт выдачи в очередь, которая фиксируется на диск и потом при подъёме связи досинхронизуется.

Связи между системами, в пределах которых проходят транзакции — между банками, а часто и между их частями — делаются аналогично: постоянный канал обмена сообщениями, уникальные идентификаторы, статусы частично выполненных операций и обновление статусов по приходу квитанций от удалённого исполнителя.

Pzz>Жене однажды банкомат недосыпал денег. Заявление в банк она писала, получила ответ, что банкомат инкассировали, и бесхозных денег в нем не нашли, так что она со своими претензиями может пойти, куда подальше.


Не выдали совсем или выдали меньше?
Это вообще отдельная тема: могла и секьюрити смошенничать, часть могла застрять и быть довыданным кому-то ещё, могли внешние мошенники поставить блокировку на лоток (работает со многими старыми исполнениями).
The God is real, unless declared integer.
Re[5]: Active-active системы только для лайков котиков?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 22.12.19 07:10
Оценка: +1
Здравствуйте, Finder_b, Вы писали:

F_>>>>>Все практические применения работают на eventual-consistency

НС>>>>САР теорему никто пока не отменял.
F_>>>Вообще отменили. Притом, еще до ее появления. Семейство алгоритмов Paxos (я выше приводил пару примеров) именно этим и занимается. Да есть ограничения, напрмер:
F_>>>1. При позиционировании доступность будет сохранятся только в большей половине кластера. А если разделить кластер ровно пополам, то не где не будет доступности.
N>>Что и требовалось показать.
F_>Гм, что именно? Что такую систему нужно разворачивать в нечетном числе датаценторов, чтобы ее не возможно было разделить точно пополам?предпа

В первую очередь, что возможен такой уровень потери доступности, при котором система перестаёт работать, несмотря на доступность части узлов (включая тот, через который конкретный клиент входит в неё).

Во вторую очередь — то, что в Paxos есть только гарантия "сойтись когда-нибудь в будущем", без конкретики, в то время как любые реальные задачи предполагают конкретное фиксированное ограничение времени, в течение которого запрошенное изменение должно быть финализировано у всех.

Здесь уже было несколько обширных серьёзных обсуждений CAP, и одним из ключевых аспектов интерпретации было как раз то, что делать с "eventual consistency" при отсутствии внятных гарантированных ограничений на сходимость.

И это ещё не начали вспоминать проблему транзакционности групповых изменений: все осмысленные теоретические результаты сейчас строятся в таких изменениях, которые для ACID-like транзакционности или имеют размер добавления/изменения/удаления одного ключа, или могут зафейлиться на заметной части участников просто из-за нормального конкурирующего изменения (например, где мы условием ставим что какой-нибудь sum() по подвыборке равен конкретному значению, это равенство не выполняется нигде, кроме ближайшего узла).

Это ответ и на остаток твоего сообщения.
The God is real, unless declared integer.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.