>> Верно понимаю, что разделяя шардинг в таком стиле, по факту получаем на выходе Key-Value хранилище? Если у вас блог-платформа и посты пользователей хранятся в табличке posts, вы можете поднять несколько мастер-серверов и раскидывать между ними посты по user_id. Аналогично комментарии можно раскидывать по post_id.
>> Реляционная модель становится больше не применима(ибо неполна), joint-ы больше не работают, так? В общем случае - да, целостность внешних ключей проверять приходится вручную. Делать джоины тоже. С другой стороны, в примере с блог-платформой можно размещать блог и комментарии на одном сервере, тогда будет и целостность и джоины. >> Тогда может NoSQL? В новых приложениях может иметь смысл рассмотреть этот вариант. 6 марта 2012 г. 10:02 пользователь Dmitry Karpich <[email protected]>написал: > > On Mar 6, 2012, at 1:56 AM, Alexandr Gomoliako wrote: > > > On Mon, Mar 5, 2012 at 3:33 AM, Alexandr Alexeev <[email protected]> > wrote: > >> Как я понял, этот модуль представляет собой уровень абстракции над > репликами > >> и шардингами. В гугле можно найти упоминания DBIx::DBCluster, но его > нет ни > >> на CPAN, ни на metacpan. Не знает ли уважаемый All, что с ним случилось > и > >> есть ли ему замена? > > > > Шардинг можно за 5 минут сделать самому. Например: > > > > # Список нод для шард от 0 до F > > %SHARDS = ( '0' => ['192.168.0.2:8000'], ... 'f' => ['192.168.0.2:8001'] > ); > > > > $key = '/hello'; > > Я не большой спец в данной теме, но решение выглядит несколько странно. > Такое, в стиле Why?SQL > > Верно понимаю, что разделяя шардинг в таком стиле, по факту получаем на > выходе Key-Value хранилище? > Реляционная модель становится больше не применима(ибо неполна), joint-ы > больше не работают, так? > > Тогда может NoSQL ? > > Из серии тех, что хорошо делят нагрузку, их ноне немало. > > Или что-то упустил по незнанию? > > > $nodes = $SHARDS{ substr md5_hex($key), 0, 1 }; > > > > Можно и по репликам сразу распределить, если надо: > > > > $node = $nodes->[ hex (substr md5_hex($key), 9, 1) % @$nodes ]; > > > > Я не думаю, что кто-то осмелится надеяться на чужие модули для этого :) > > Да и о фейловере надо самому заботиться, особенно, если блокирующее > > приложение. Ему же надо как-то узнать, что какая-то нода упала. > > -- > > Moscow.pm mailing list > > [email protected] | http://moscow.pm.org > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > -- С уважением, Александр Личный блог: http://eax.me/ Мой форум: http://it-talk.org/ Мой Twitter: http://twitter.com/afiskon
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
