Неадекватные явления в IT
lionet — 24.03.2010 Цитата из DIGG: 4000% PERFORMANCE INCREASE BY SORTING IN PHP RATHER THAN MYSQL:3. Реляционные инструментальные средства не справились с риал-таймом. Инструментальные средства для реляционных баз данных не развиваются. Они не справились с высокими запросами к масштабу, средам реального времени. Создание масштабируемых систем на реляционных базах данных требует шардинга, балансировки нагрузки, решардинга, управления кластером, заботы о консистентности, самостоятельной имплементации распределённых запросов и других программных прослоек, поэтому зачем напрягаться? Cassandra это делает сразу из коробки. Запустили сервер и Cassandra справится с перебалансировкой и маршрутизацией автоматически.
4. Принятые практики масштабирования превращают реляционную базу данных в не-реляционную. Для масштабирования в Digg'е они использовали набор практик, которые были очень похожи на те, которые использовались в eBay. Никаких джойнов, никаких условий на внешние ключи (для масштабирования записи), запросы только по первичным ключам, ограничение запросов на диапазоны, и объединения делались в памяти. Когда программировали систему комментариев (N.B.: то, чем js-kit занимается. Прим. lionet), мы достигли 4000% улучшения производительности просто путём сортировки в PHP вместо MySQL. Все эти усилия, которые требовались для того, чтобы вырастить реляционную базу, по сути означали что мы в любом случае получили не-реляционную базу данных. Поэтому, почему бы просто не использовать не-реляционную базу с самого начала?
7. MySQL нормально работает для определённого набора проблем. Обычно, для сравнительно статических наборов данных, сравнительно низкого количества запросов, и сравнительно низких требований к задержкам.
Забавно читаются комментарии типа следующего (http://plumqqz.livejournal.com/96639.html?thread=970367#t970367) (от hobohabilis):
Примечательно, что любые неадекватные явления в IT непременно притягивают разработчиков, настойчиво плывущих против течения. Я тут на днях заглянул в один блог, а там: "Ба! Все те же лица!". Причем, некоторые флагманы иррационального программирования уже настолько поднатарели в предмете, что вполне уверенно рассуждают о превосходстве одних "NoSQL" над другими.
Может быть, я слишком много о себе думаю, но я явно читаю в «Ба! Все те же лица!» ссылку на мои реплики у alexclear, а под «неадекватными явлениями в IT» подразумеваю NoSQL, функциональное программирование и альтернативные операционные системы.
Ну так действительно, я работаю на Маке (после пятнадцати лет с Windows), использую Haskell, OCaml, Erlang (после пятнадцати лет с C/C++/Perl), и не использую реляционные базы данных (после одного из моих предыдущих стартапов на PHP/MySQL).
Поэтому пусть ёрничают, у них всё впереди. Или наоборот, уже поздно пить боржоми :)