|
Apache Cassandra
|
|||
---|---|---|---|
#18+
Использование в новом проекте noSql субд Apache Cassandra. За и против? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 11:19 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
vieИспользование в новом проекте noSql субд Apache Cassandra. За и против?а в тестах гонял? почему планируете noSql, а не РСУБД? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 11:51 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
Вот здесь хорошее обсуждение. http://rsdn.ru/forum/db/3952099.aspx Для начала действительно стоит задуматься а все ли ваши задачи ложатся на NoSQL базу. А так же действительно ли вы ожидаете от своего проекта на столько большие нагрузки, что RDBMS не справится? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 12:56 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
на хабре есть статьи/обзоры. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 13:19 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
VoDA, тесты гонял на Thrift клиенте, но с небольшими обьемами тестовых данных на одной FamilyColumn. На таких данных не видно преимущество с реляционкой. Выбрал кассандру, тк проект не с нуля. Есть асу одной гос организации, которая разрабатывалась лет 25 назад на языке clipper и до сих пор работает. Обьемы данных порядка нескольких миллионов записей. Оптимизирована она под поиск по различным параметрам. Вот ее и надо переписать, а поскольку бизнес логика по большей части известна, и изменяться координально не будет, решил попробовать column oriented субд. Из наиболее известных и развивающихся считаю именно апачевский продукт. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 13:56 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
Blazkowicz, По нагрузкам конечно рсубд вполне справится но приоритет стоит на скорости поиска. Судя по обзорам, у column-oriented субд здесь преимущество ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 13:59 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
ТимоНна хабре есть статьи/обзоры.ага, читал. сложилось мнение, что неудобства noSql начинают окупаться когда количество железных серверов на которых крутятся данные переваливает за 3-5 штук, т.е. обработка не может уложиться в 1-2-3 сервера СУБД. а пока влезает - проще и дешевле использовать РСУБД. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 14:49 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
vieВот ее и надо переписать, а поскольку бизнес логика по большей части известна, и изменяться координально не будет, решил попробовать column oriented субд. Из наиболее известных и развивающихся считаю именно апачевский продукт.А как планируете бороться с неконсистентностью данных? Cassandra - Eventually‐consistent СУБД, что может вносит некоторые нюансы или у вас бизнес-логика толерантна к временной неконсистентности в данных? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 14:54 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
vieBlazkowicz, По нагрузкам конечно рсубд вполне справится но приоритет стоит на скорости поиска. Судя по обзорам, у column-oriented субд здесь преимуществоони выигрывают по поиску по ключу? а как там с поиском по внутренним данным лежащим в value? в РСУБД можно кластеризовать таблицу по текстовому полю - насколько noSql будет быстрее в этом случае? и за счет чего? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 14:58 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
vieПо нагрузкам конечно рсубд вполне справится но приоритет стоит на скорости поиска. Судя по обзорам, у column-oriented субд здесь преимущество Ой ли? http://rsdn.ru/forum/db/3955442.aspx ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 14:58 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
VoDA, Логично было бы контролировать целостность данных либо в dao слое приложения, либо в некоем Persistence Api, работающем с trift-ом. Ничего другого в голову не приходит ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 15:05 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
VoDA, http://github.com/tjake/Lucandra, не? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 15:40 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
VoDAvieBlazkowicz, По нагрузкам конечно рсубд вполне справится но приоритет стоит на скорости поиска. Судя по обзорам, у column-oriented субд здесь преимуществоони выигрывают по поиску по ключу? а как там с поиском по внутренним данным лежащим в value? в РСУБД можно кластеризовать таблицу по текстовому полю - насколько noSql будет быстрее в этом случае? и за счет чего? имеетя ввиду что для облегчения индексирования есть надстройка Lucene над кассандрой: http://github.com/tjake/Lucandra ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 15:44 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
vieVoDA, Логично было бы контролировать целостность данных либо в dao слое приложения, либо в некоем Persistence Api, работающем с trift-ом. Ничего другого в голову не приходитПерефразирую: >> Как вы планируете гарантировать транзакционную целостностность в MySQL/MYISAM? > Логично было бы контролировать тразакции либо в dao слое приложения, либо в некоем Persistence Api о_О только мне это кажется слегка проблемным? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 15:53 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
vieVoDAони выигрывают по поиску по ключу? а как там с поиском по внутренним данным лежащим в value? в РСУБД можно кластеризовать таблицу по текстовому полю - насколько noSql будет быстрее в этом случае? и за счет чего? имеетя ввиду что для облегчения индексирования есть надстройка Lucene над кассандрой: http://github.com/tjake/LucandraLucene - полнотекстовый поиск. Lucandra это использование Saccandra в качестве хранилища. Зададимся вопросом ЗАЧЕМ? Из доки Lucandra: Initially we implemented Lucene support with supercolumn as described but ran into a scaling issue when we tried to index all of wikipedia . Да, если проиндексировать настолько много, то в одну железку данные не влезут - тут и помогает костыль распределенных noSql. они проще размазываются на нескольким железкам. Дальше стоит учесть, что малая неконсистентность данных поискового индекса на wikipedia приемлема. Некоторая степень неконсистентности приемлема для любой соц-сети или соц-системы, но часто не подходит для систем уровня предприятия. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 16:08 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
VoDA >> Как вы планируете гарантировать транзакционную целостностность в MySQL/MYISAM? Причем здесь MySQL/MYISAM? Как можно еще гарантировать целостность без поддержки внешних ключей и транзакций в субд, кроме как самому ставить блокировки/очереди и последовательно изменять данные? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 16:11 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
VoDA Дальше стоит учесть, что малая неконсистентность данных поискового индекса на wikipedia приемлема. Некоторая степень неконсистентности приемлема для любой соц-сети или соц-системы, но часто не подходит для систем уровня предприятия. Поясните пожалуйста на примере ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 16:15 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
VoDAvieВот ее и надо переписать, а поскольку бизнес логика по большей части известна, и изменяться координально не будет, решил попробовать column oriented субд. Из наиболее известных и развивающихся считаю именно апачевский продукт.А как планируете бороться с неконсистентностью данных? Cassandra - Eventually‐consistent СУБД, что может вносит некоторые нюансы или у вас бизнес-логика толерантна к временной неконсистентности в данных? Кстати вот нашел готовое решение для связки cassandra + hadoop: http://ria101.wordpress.com/2010/05/12/locking-and-transactions-over-cassandra-using-cages/ ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 16:39 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
vieVoDA >> Как вы планируете гарантировать транзакционную целостностность в MySQL/MYISAM? Причем здесь MySQL/MYISAM? Как можно еще гарантировать целостность без поддержки внешних ключей и транзакций в субд, кроме как самому ставить блокировки/очереди и последовательно изменять данные?Пытаюсь показать на ином примере. Так вот система которая "самому ставить блокировки/очереди и последовательно изменять данные" и есть СУБД. Т.е. ваш dao слой приложения или Persistence Api получится ОЧЕНЬ сложным. проще взять СУБД которая уже это умеет ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 17:04 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
vieVoDA Дальше стоит учесть, что малая неконсистентность данных поискового индекса на wikipedia приемлема. Некоторая степень неконсистентности приемлема для любой соц-сети или соц-системы, но часто не подходит для систем уровня предприятия.Поясните пожалуйста на примере ОК. есть сайт вконтакте. если пользователь Вася послал сообщение Пете, в тот же момент Петя проверяет входящие, но сообщения там нет. Даже если сообщение не дойдет до Пети он продолжит пользоваться вконтактом. Еще википедия. Даже если одна из страниц была проиндексированна, но не попала в поиск википедии, этим проектов не прекратят пользоваться. Для предприятий ситуация может быть иной. Если есть проводка или другой официальный документ, то он должен попасть в поиск в любом случае. Либо есть либо система не работает и заменяется на другую. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 17:13 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
VoDA, Ок, т.е вы считаете, что неудобство работы с данной субд превышает ее преимущества перед реляционными субд? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 17:28 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
vieVoDA, Ок, т.е вы считаете, что неудобство работы с данной субд превышает ее преимущества перед реляционными субд?я не могу судить - не применял, только читал про особенности. А также кто создал и для каких целей. Cassandra была создана для того чтобы заменить ферму разрозненных MySQL + memcached в единую систему с возможностью автоматической баллансировки, прозрачного добавления нод и т.п. Создал ее Facebook (довольно таки большая соц-сеть) для своих очень специфичных нужд. Подойдет ли Cassandra для вашего проекта - решать не мне. Я бы хотел, чтобы ты его применил и рассказал о преимуществах / недостатках на реальном проекте =))) но стараюсь быть объективным и указать что знаю и помочь разобраться ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 18:23 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
vie, если использовать кластерный индекс, то у нее нет основного преимущества - скорости. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 18:35 |
|
Apache Cassandra
|
|||
---|---|---|---|
#18+
В общем пока проект на стадии проектирования модели данных, до сих пор еще не решил, кассандра или оракл. Построю модель, залью данные и буду тестировать. В любом случае проект не будет зависеть от конкретно бд, только в дао слое. Как будут результаты, отпишусь что и как ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2010, 19:18 |
|
|
start [/forum/topic.php?fid=48&msg=36874333&tid=1857020]: |
0ms |
get settings: |
24ms |
get forum list: |
27ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
46ms |
get topic data: |
15ms |
get forum data: |
3ms |
get page messages: |
463ms |
get tp. blocked users: |
2ms |
others: | 321ms |
total: | 909ms |
0 / 0 |