Блог

    CUBRID — полноценная система управления реляционными базами данных (СУБД) с открытым кодом, оптимизированная для веб-приложений, в частности для обработки большого количества данных и одновременных запросов.

    CUBRID разрабатывается самой крупной IT компанией Южной Кореи NHN, которая является главным конкурентом Google, обладая 74% местного поискового рынка, в то время как Google — 4%.

    Впервые разработка СУБД CUBRID началась в 2006 году, первый стабильный релиз которого состоялся через два года в октбре 2008 г. А в ноябре того же года CUBRID был аннонсирован как первый СУБД с открытым кодом Южной Кореи.

Последние записи


Теги

Информация

Новый CUBRID 8.4.1 — на 70% быстрее

добавлено: 29 фев 12
понравилось:0
просмотров: 1960
комментов: 5

теги:

Автор: CUBRID RDBMS

Мы ждали этого дня довольно долго. Исходя из политики выпуска новых версий, новый релиз СУБД CUBRID выходит каждые пол года. Вот и свершилось! От имени разработчиков я рад сообщить о новом выпуске CUBRID версии 8.4.1 с повышенной производительностью в 70%.

Скачать CUBRID 8.4.1 можно прямо сейчас с официального сайта!

Разработчики CUBRID проделали очень большую работу по улучшению производительности и стабильности СУБД. По результатам тестов оценки качества производительность INSERT и UPDATE операций выросла на более чем 70% (см. таблицу ниже).

Также, благодаря многочисленным просьбам, мы добавили много новых функций и поддержку дополнительного SQL ситаксиса для еще большей совместимости с MySQL. Кроме этого в новую версию СУБД добавлена поддержка регулярных выражений в оператор WHERE для более четкого объявления условий поиска, а также новые параметры брокера и улучшенный мониторинг системы. В общей сложности в новой версии были исправлены около 50 ошибок.

Ниже я приведу список главных нововведений в версии 8.4.1.

Улучшенная производительность INSERT и UPDATE операций на 70%


Улучшенная производительность INSERT и UPDATE операций на 70%
(по оси y — количество запросов в секунду)

В этой версии CUBRID 8.4.1 мы улучшили внутреннюю реализацию движка базы данных, чтобы повысить производительность всей системы во время параллельной обработки логов транзакций, записи буфера памяти на диск, а также исполнения репликации в среде Высокой Доступности.

В результате всего этого производительность операций INSERT и UPDATE в версии 8.4.1 резко увеличилась на более чем 70% по сравнению с предыдущей версией 8.4.0.

В следующей таблице указаны выходные данные оценки качества, полученные в результате тестов, проведенных над версиями 8.4.0 и 8.4.1.
Пропускная способность (опер/сек) Задержка 99-й процентиль (мс)
Операции R4.0 P2 R4.1 Коеффициент производительности R4.0 P2 R4.1 Коеффициент производительности
Insert 4085 7090 174% 33 11 167%
Select 24477 24739 101% 3 3 100%
Update 4556 8274 182% 28 13 154%
Mix 3929 4402 112% 223 218 102%

Тест был проведен на большом количестве транзакций, используя YCSB (Yahoo Cloud Serving Benchmark). Более подробную информацию об этом тесте Вы можете найти в Отчёте о завершении оценки качества CUBRID 8.4.1 (англ.).

Новые SQL функции и поддержка регулярных выражений

  • Новые SQL функции в версии 8.4.1: ADDTIME, ASCII, BIN, CONV, FIND_IN_SET, HEX, и SERIAL_NEXT_VALUE (serial_name, number).
  • Добавлен оператор REGEXP для уточнения критерий поиска в условиях WHERE.
  • Типы данных, такие как DATE, DATETIME и TIMESTAMP, теперь поддерживают минимальные значения '0000-00-00', '0000-00-00 00:00:00', что дает разработчикам приложений более гладкий переход с MySQL на CUBRID.

Дополнительные возможности

Список дополнительных изменений Вы можете найти в Замечаниях к текущей версии (англ.).

Комментарии


  • 01 марта 2012, 19:56 SomewhereSomehow

    Я прочитал ваш блог-пост "Первое знакомство с CUBRID — СУБД оптимизированная для Веб приложений", был на вашем сайте http://www.cubrid.org/, но нигде не слышал про то чтобы использовалась эта субд, пока она не на слуху. По этому, когда говорится что она стала на 70% быстрее, непонятно, на 70% быстрее от чего, я не вижу отправной точки.

    Также сейчас много устоявшихся брендов субд, если вы делаете новую, значит вас чем-то не устраивают старые. По этому, хотелось бы видеть список сравнительных характеристик популярных субд и вашей. В виде таблицы например. Я понимаю, т.к. многие субд развиваются десятилетиями, а ваша относительно молода, то многое может быть не реализовано, тогда отметьте это в таблице как "планируется реализовать-срок" или "нет-и почему".

    Далее если, эта субд применяется на каких-то популярных сайтах (ведь она веб), то хотелось бы знать на каких, если нет, то где может быть применена и почему она там будет эффективнее существующих.

    Короче, когда говорится об улучшении, требуется выставить ее на шкалу со всеми остальными, чтобы понимать, на каком абсолютном делении шкалы она находится ( а то "относительные" 70% ни о чем, я тоже могу с велосипеда пересесть на мопед и сказать что я увеличил скорость вдвое, тактично умалчивая что мопед проигрывает в скорости прочим мотоциклам - это не в обида, а как пример трудно понимаемого сравнения ).

    Повторюсь, что я был на вашем сайте и там много информации, но читать столько много нет времени, а понять хотелось бы. Как говорится в одном афоризме: "Если профессор не может объяснить пятилетнему ребенку, чем он занимается – гоните его, он шарлатан." По этому, хотелось бы чтобы вы предоставили в доступной, краткой форме сравнительный анализ, преимущества и недостатки а так же перспективы и области применения вашей субд.
    Я думаю, это будет даже более полезна вам, в качестве создания узнаваемого бренда, чем мне как разработчику.
    С уважением.

  • 01 марта 2012, 19:58 SomewhereSomehow

    Извиняюсь за опечатки.

  • Спасибо большое за Ваш отзыв. Для пользователя, который впервые видит продукт (неважно какой), 70% повышение производительности ничего не объясняет. Это правильно. Но ведь эта статья написана не (только) для таких пользователей, но и для тех, которые хорошо уже знают о CUBRID.

    Кто не понимает сути и насколько важны такие сравнения, которые указаны в этой статье, должны "исследовать" этот же самый продукт. На то и создаются разные алтернативы, чтобы их изучали и определяли насколько они подходят для тех или иных задач. Конечно, не у всех есть время, как у Вас, например. Мы обязательно еще напишем очень краткий сравнительный анализ того, чем CUBRID отличается от других подобных СУБД. Но это тоже много не даст Вам. Вы ведь не решаете, какой продукт использовать, на основании всего лишь лаконичного и краткого сравнения на двух страницах.

    Если Вы хотите узнать продукт лучше, надо исследовать, надо читать, а не ждать, когда Вам все пережуют и подадут на ложечке. Конечно, это преимущество, если разработчики продукта смогут это сделать. Но как Вы правильно заметили, CUBRID - довольно молодой продукт, но мы делаем все возможное, чтобы восполнить все пробелы (поэтому такие отзывы очень Важны для нас).

    Чтобы понять значение 70%, надо посмотреть насколько был быстрым предыдущий движок. CUBRID 8.4.0, например, обходит MySQL 5.1 на высоких нагрузках SNS Веб сервисов. Из этого надо оценивать 70% прирост производительности.

    Опять повторюсь, что ждать, что все Вам разжуют, не надо. Потому что, вероятней всего, кому-то уже все разжевали. Надо просто поискать и почитать. Гугл Вам даст довольно много результатов, если поискать "CUBRID vs. MySQL".

    Так как СУБД CUBRID разрабатывается в Южной Корее, то почти все корпоративные (акцент!) пользователи находятся в этой стране. Например, самый крупный Веб сервис по всей Корее Naver.com (то же самое, что и Яндекс.ру в России) использует CUBRID в разных своих сервисах: в мониторингах, в хранилищах, в облачных сервисах и т. п. Конечно, это что-то уже говорит. Небольшой список уже опубликован на сайте проекта http://www.cubrid.org/powered_by_cubrid.

    Что касается, что реализовано в CUBRID, а что - нет, то в CUBRID есть практически все, что есть в MySQL Enterprise (кроме плагина для NoSQL), заметьте - не просто в опен сорс версии. Отличие в том, что у CUBRID нет коммерческой версии. Перечислите все, что Вам нужно для разработки. Я уверен, все Вы сможете найти это все в CUBRID. Поэтому таких больших "планируется реализовать-срок" фичей - нет. CUBRID - это полнофункциональная СУБД с родной функцией Высокой Доступности, балансировки нагрузки, пула соединений, горячего бэкапа (чего нет в MySQL CE), и даже (скоро) шардинг (чего нет вообще в других реляционных СУБД). Очень много Веб сервисов работающие на MySQL и Oracle используют Брокер CUBRID для реализации пулинга соединений вместо DBCP, потому что Брокер CUBRID раз в 8 больше экономит ресурсов и более устойчивый. Что касается поддержки SQL, то CUBRID поддерживает более 90% SQL синтаксиса MySQL. С каждой новой версией CUBRID все больше и больше расширений добавляются. Практически все API CUBRID полностью совместимы с функциями MySQL, за исключением того, что необходимо менять префиксы mysql_ на cubrid_.

    Что касается небольших "планируется реализовать-срок" фичей, то в новой версии CUBRID 8.4.1 еще нет таких типов данных, как enum, мы не разрабатываем версию сервера для Mac OS X, также нет R-/R+ индексов. Дело в том, что единицы из пользователей других СУБД используют это все. Мы не предоставляем Mac OS X версию CUBRID, потому что никто серьезно не использует этот ОС в серверах. Нет R-/R+ индексов, потому что B+tree индекс CUBRID само собой намного "умнее" индексов MySQL. Поэтому производительность SELECT запросов в CUBRID быстрее, чем в MySQL, а SELECT запросы составляют более 90% всех запросов почти всех Веб приложений, кроме SNS. Поэтому большинство разработчиков и пользователей СУБД не почувствуют большой разницы.

    Перечислять можно долго, и сравнивать друг с другом можно вечно. Но чтобы понять и оценить продукт, надо читать, надо пробовать, задавать вопросы на сайте проекта, и, таким образом, Вы поймете подходит ли CUBRID для Вас или нет.

    Я буду очень рад ответить на Ваши вопросы, если у Вас есть что-то конкретное, что Вы хотите узнать. Например, на прошлой неделе пользователь с Хабрахабр на несколько часов засыпал вопросами о том, как настроить CUBRID для Высокой Доступности. Поэтому если у Вас есть вопросы, пожалуйста, задавайте, но старайтесь, чтобы они были конкретными. Я буду рад Вам ответить.

  • Смущает то, что система бесплатна, при вложении массы трудов... Что Вы можете сказать?

  • Это такой стереотип, который каждый должны в конце концов сломать у себя в голове. А по делу, то все обстоит так.

    Фирма довольно долгое время тратила около 2 миллионов долларов на продление лицензий Oracle серверов (как и Enterprise, так и Standard), чуть более этой суммы также для работы с MySQL Enterprise. А после нескольких лет разработки CUBRID, многие Веб сервисы в NHN работают на CUBRID. Прикиньте какая сумма экономится ежегодно. А теперь, если посмотреть, сколько денег фирма заработала бы, если бы она продавала CUBRID, то далеко не столько, сколько она экономит. Поэтому NHN и разрабатывает, и оптимизирует CUBRID для Веб сервисов.

    В то же время, если посмотреть на фирму Oracle, то они живут на том, что продают свою работу. У них нет никаких Веб сервисов, как у NHN. Эта разного типа бизнес организации. На то они и выкупили Sun, чтобы зарабатывать на их активах.

    NHN - это корейский Google. Google не продает свой Big Table, потому что они знают, что это капля в море. Их стихия в другом - в поисковике. Точно также и NHN - поисковый монополист Кореи. Поэтому CUBRID бесплатен. Для NHN гараздо важнее, чтобы пользователи по всему миру пользовались движком, находили и сообщали о багах, запрашивали новые функции для улучшения всей системы. Чем больше пользователей и чем больше NHN отдает, тем больше пользы (в виде стабильности продукта) он получит в результате для своих же сервисов.

    Поэтому то, что продукт бесплатный или платный, не об этом надо замарачиваться. Бизнес модель у CUBRID другая, даже если у остальных похожая.



Необходимо войти на сайт, чтобы оставлять комментарии