MemSQL, сравнение с MySQL |
Здравствуйте, гость ( Вход | Регистрация )
MemSQL, сравнение с MySQL |
Iron Bug |
16.4.2014, 14:10
Сообщение
#1
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
Я тут по работе искала шуструю БД и занималась прогонкой тестов на разных базах.
Я нашла базу MemSQL (2.6) и сравнила её с работой MySQL (5.5), запущенной на базе в tmpfs (база вместо винта находится в памяти). Результат: на простых insert'ах и select'ах в одном потоке MemSQL быстрее в среднем в два раза. На select'ах даже чуть больше, примерно 2.2. Я прогоняла выборки на миллионе записей, на машине с Intel® Core™ i5-2300 CPU @ 2.80GHz × 4 и 16Gb RAM. Я собираюсь прогнать более сложные тесты, с многопоточным обращением и случайными update'ами и select'ами. Но пока что результат меня весьма впечатлил. MemSQL практически полностью совместима с MySQL (садится на порт и принимает команды того же формата, с очень малым количеством незначительных отличий). То есть, для большинства приложений можно просто вместо MySQL подсунуть MemSQL и всё будет работать. MemSQL в основном работает в памяти, но сохраняет данные базы на винт в виде снапшотов. Пока не исследовала вопросы восстановления после падений, но для чисто рабочей базы, данные в которой не так страшно потерять, это идеальное решение. Правда, я не совсем поняла, платная ли база MemSQL. Она не опенсорцная, код закрытый (бинарник под линь 64). Её можно скачать с сайта, заполнив информацию о себе. В лицензии, которая прилагается к скачиваемым файлам, ничего не сказано про ограничения. Я написала им письмо с вопросом по этому поводу, чтобы выяснить этот вопрос. |
|
|
Iron Bug |
16.4.2014, 15:20
Сообщение
#2
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
Да, нашла у них же интересную тулзовину:
Workload Simulator Тулзовина позволяет быстро и без особого напряга устраивать нагрузочные тесты на SQL-ные базы. Однако, сама при работе жрёт немало проца, поэтому лучше её запускать на отдельной от базы машине. В общем, при тестировании обращения многих потоков с insert, update, select MemSQL достигал 65k операций в секунду, а MySQL (база в tmpfs) - около 40k операций в секунду. Итого, производительность MemSQL 2.6 по сравнению с MySQL 5.5 в tmpfs при многопоточном и разнообразном обращении к базе выше примерно в полтора раза. |
|
|
Алексей1153 |
18.4.2014, 13:44
Сообщение
#3
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
обязательно должен быть подвох
|
|
|
Iron Bug |
18.4.2014, 21:36
Сообщение
#4
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
Да, подвох есть.
1. База платная. Правда, сколько стоит - они мне так и не сообщили. Написали, что это зависит от размера базы и лицензия даётся на 12 месяцев (то есть, каждый год им отстёгивать бабло нужно). Я пытаюсь выяснить, какова цена. Если цена запредельная - то нафиг нада, мы мускуль подрядим. Но их менеджер зачем-то настаивает на звонке (у нас с ними почти 12 часов разница во времени, какие звонки? зачем? ) 2. Скачиваемая с сайта версия не имеет ограничений по производительности, но будет работать только 30 дней (чота я сразу такой инфы не видела, может, пропустила чего...). Вот, дождусь ответа от них про цены. Нам базу-то мелкую надо - всего гигабайт, не больше. Если цена адекватная - нас бы это устроило. Правда, ежегодная оплата как-то напрягает. Но компания большая, так что если надо будет - купят. Надо только провести сравнение и обосновать необходимость покупки. А я не могу сравнить выгоды разных баз, не имея на руках цен на инсталляцию. А ещё у меня возникла идея... Я же сто лет программирую на С и С++. Чего я только не писала! Идея реализации компилируемых зпросов мне понятна. Вот бы сделать такое же, но опенсорцное! P.S. Кстати, к нам тут приходил на собеседование человек, работавший в Яндексе. Рассказал, что у них нет баз данных, они самописной системой пользуются. Этот факт меня заставил задуматься о некоторых вещах. Сообщение отредактировал Iron Bug - 18.4.2014, 21:45 |
|
|
Litkevich Yuriy |
6.5.2014, 3:38
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Яна, как эта БД себя ведёт, если хитрые индексы делать, типа уникальных состоящих из нескольких полей?
Вставки при этом обычно сильно затормаживаются, особенно, если они идут часто и не в одной транзакции. И ещё интересно, если есть тригер, который чистит устаревшие записи в таблице, не возникает тормозов и как дела с размером БД? Например для FireBird-а это сильно неприятная штука. |
|
|
Iron Bug |
6.5.2014, 20:30
Сообщение
#6
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
у меня не было цели использовать хитрые индексы. я тестировала такие запросы, которые нам были нужны, а это были очень простые таблицы, просто большие. а сейчас тестовый период, наверное, уже закончился.
стоит она, кстати, полторы штуки баксов в год, в минимальной комплектации (на десять гигов). мы к сведению это приняли, но покупать пока не торопимся. можешь качнуть с их сайта, если интересно. тестовый образец даётся на 30 дней, бесплатно. работает без ограничений, как они сказали. Сообщение отредактировал Iron Bug - 6.5.2014, 20:31 |
|
|
Текстовая версия | Сейчас: 1.12.2024, 6:40 |