у Плахова вопрос - почему их так много, и чем не угодил тарый добрый sql?
http://plakhov.livejournal.com/165139.html?thread=3276307
sql не покрывает одну простую вещь. если нужно столько транзакций, что одна машина, даже очень большая, не справляется, то что делать? делать можно большим числом разных способов, каждый со своими трейдоффами, отсюда много реализаций.
но на самом деле только две системы сделали это правильно, по крайней мере концептуально - кассандра и sql azure. из этих двух - правильнее sql azure, но это не продукт, а сервис.
http://plakhov.livejournal.com/165139.html?thread=3276307
sql не покрывает одну простую вещь. если нужно столько транзакций, что одна машина, даже очень большая, не справляется, то что делать? делать можно большим числом разных способов, каждый со своими трейдоффами, отсюда много реализаций.
но на самом деле только две системы сделали это правильно, по крайней мере концептуально - кассандра и sql azure. из этих двух - правильнее sql azure, но это не продукт, а сервис.
(no subject)
Date: 2011-06-16 09:29 pm (UTC)(no subject)
Date: 2011-06-16 09:47 pm (UTC)(no subject)
Date: 2011-06-16 10:13 pm (UTC)(no subject)
Date: 2011-06-16 10:42 pm (UTC)(no subject)
Date: 2011-06-16 10:19 pm (UTC)...
Cassandra values Availability and Partitioning tolerance (AP). Tradeoffs between consistency and latency are tunable in Cassandra. You can get strong consistency with Cassandra (with an increased latency). But, you can't get row locking: that is a definite win for HBase.
...
т.е. если закрутим до предела C - то молучим коллосальную latency - т.к. будем ждать ACK с большого числа нодов. что там и где опровергается?
(no subject)
Date: 2011-06-16 10:56 pm (UTC)тут важно, что мы рассматриваем node failure events (network-connectivity-related, or otherwise) как независимые события. иначе, конечно, можно питание у топ-левел раутера выдернуть, и клиент может ждать результат до посинения. к CAP это имеет мало отношения.
ну и замисконфигурить систему тоже всегда можно, это не вопрос.
(no subject)
Date: 2011-06-17 10:59 am (UTC)ведь речь не идет о том, что не сущетвует разумного их сочетания, которое удовлетворяло бы условиям задачи. причем для разных задач эти параметры могут довольно сильно различаться.
т.е. на практике CAP теорема особых проблем не создает (если мы готовы уйти от жесткого ACID). но, формально говоря, я не вижу ее опровержения.
ну и да - "старый добрых SQL" традиционно не дает выбора. т.е. в нем ты всегда имеешь CAP на максимальном уровное, а latency получаешь такую, на какую денег хватило (хардвер, сеть, и прочее). :) а всякие NoSQL базки дают возможность выбора.
(no subject)
Date: 2011-06-17 08:26 pm (UTC)эээ, если ты внимательно прочитал то, что я написал, то всё наоборот. чем больше redundancy, тем меньше latency. потому что больше нод, которых можно не ждать.
> т.е. на практике CAP теорема особых проблем не создает (если мы готовы уйти от жесткого ACID). но, формально говоря, я не вижу ее опровержения.
а формального опровержения быть и не может, поскольку у CAP нет формального доказательства - как, например, у теоремы пифагора. опровержение - в смысле того, как обычно понимается вывод из CAP - что мы не можем иметь одновременно consistency, availability и partition tolerance. а на примере как кассандры, так и sql azure мы видим что - нет, можем.
> ну и да - "старый добрых SQL" традиционно не дает выбора.
причём выбора, в первую очередь, в плане scalability. только scale up, никакого scale out.
(no subject)
Date: 2011-06-17 11:00 am (UTC)(no subject)
Date: 2011-06-17 08:17 pm (UTC)(no subject)
Date: 2011-06-18 03:49 am (UTC)Вот, сразу видно человека с нормальным опытом работы, а не идеализирующих теоретиков :)
(no subject)
Date: 2011-06-18 07:43 am (UTC)(no subject)
Date: 2011-06-17 07:16 am (UTC)Ну как что - кровью блевать. Если не хватает денег, то нужны деньги.
Вообще а)одна "машина вообще" может потянуть просто невообразимое количество транзакций - была бы машина б) не вижу проблем поставить две машины. Или три.
(no subject)
Date: 2011-06-17 08:18 pm (UTC)(no subject)
Date: 2011-06-18 05:42 am (UTC)(no subject)
Date: 2011-06-18 07:46 am (UTC)(no subject)
Date: 2011-06-18 10:26 am (UTC)(no subject)
Date: 2011-06-18 10:27 am (UTC)(no subject)
Date: 2011-06-18 06:14 pm (UTC)вообще, я рекомендую прочитать оригинал, чтобы понять, о чём мы тут разговариваем. а то твои комменты очень уж random.
(no subject)
Date: 2011-06-19 07:42 am (UTC)Ну да - когда при переводе со счета на счет блокируется некая сумма, и окончательно списывается при подтверждении - это как раз оно и есть.
Оригинал - это пост или "теорему"? Пост я читал, про "теорему" тоже. Кому как, конечно, но мне доказательство методом "мамой клянусь" не кажутся доказательствами.
А вообще все эти "теоремы" и NoSQLи мне кажутся по большей части плодами размышлений "либо мы дураки, либо это творчество все-таки имеет какой-то смысл, желательно поглубже".