Карма блога:
[+] [0] [-]

Блог «Базы данных»

Всё о хранилищах данных.
Первоначально целью исследовния NoSQL систем был выбор быстрой на вставку и выборку небольших объемов данных: альтернативы MySQL. Из прошлонедельного обзора стало ясно, что подходят две СУБД: MongoDB и CouchDB. Сегодняшнее исследование должно было окончательно определить систему которую я буду использовать в проекте. Но при ближайшем рассмотрении CouchDB оказалось, что она очень сильно проигрывает по скорости вставки, да и часть функционала вроде ревизий и Map/Reduce практически не использовалась бы. Поэтому в результате изыскания свелись к тестированию производительности MongoDB по сравненю с MySQL — это позволило выделить сильные и слабые стороны обеих систем.
MongoDB или MySQL?

Я некоторое время обдумывал какие данные использовать для замеров и решил, что это будет словарь лексем Зализняка, который я применял в своем проекте поиска опечаток. Это также дало возможность проверить производительность операции выборки по диапазону, которая является весьма критичной для меня. Для взаимодействия с обеими базами использовался Perl, для MongoDB одноименный модуль, а для MySQL модуль DBI. Словарь содержит более 90 000 слов. Структура таблицы/коллекции была проста: кроме первичного индекса я записывал туда само слово и его длину. Процесс заполнения базы данными и стал первым испытанием.
Читать дальше →
738 просмотров
нет комментариев
NoSQLСейчас, когда говорят база данных, то подразумевают реляционные БД, я уверен, что редкий программист не слышал акроним SQL, именно этот язык запросов используется для работы с реляционной моделью данных и часто обыгрывается в названии СУБД, например: MySQL, PostgreSQL, MSSQL, SQLite и многие другие. Реляционная модель имеет много положительных сторон: целостность, не избыточность, предсказуемость. Но это в теории, на практике же часто приходится поступаться этими принципами в угоду производительности.

Кроме этого существуют серьезные проблемы с масштабированием реляционных БД, для этого используют различные репликации, но это скорее костыль чем решение. Именно поэтому, чаще всего узким местом веб-проектов являются базы данных. Современные высоконагруженные сайты, справляются с этой проблемой с помощью кэширования — связка memcached+mysql уже стала стандартом де факто. Вполне предсказуемо, что появились новые модели данных, которые проектировались с целью избавиться от проблем реляционной модели.

Читать дальше →
653 просмотра
5 комментариев
© sontan.name, 2008–2010