Комментарии 9
Скажите, а на ваших данных SQL-таблицы в Каше насколько быстрее работают аналогичных в MySql?
0
С MySQL не работаю.
Вопрос холиварный: дело ведь не только в скорости, но и в поддерживаемых фичах.
Например, Oracle очень «мудро» поступила, включив поддержку bitmap-индексов и параллельное построение индексов только в Enterprise Edition…
PS: кстати, в MySQL уже появились bitmap-индексы?
Вопрос холиварный: дело ведь не только в скорости, но и в поддерживаемых фичах.
Например, Oracle очень «мудро» поступила, включив поддержку bitmap-индексов и параллельное построение индексов только в Enterprise Edition…
PS: кстати, в MySQL уже появились bitmap-индексы?
0
Я это спрашиваю не для холивара. Просто интересно. Суть вопроса в том, что таблицы эмулируются с помощью глобалов. Т.е. для глобалов это не самый естественный режим работы. Поэтому и интересно.
Если можете сравнить с ораклом, то ещё лучше.
А интересуют меня операции INSERT, SELECT с INNER JOIN, транзакции.
P.S. Ничего не слышал о том, что в mysql повились битмап-индексы. К слову говоря — это ведь не индексы, так как у них скорость работы пропорциональна n, а не log(n).
Если можете сравнить с ораклом, то ещё лучше.
А интересуют меня операции INSERT, SELECT с INNER JOIN, транзакции.
P.S. Ничего не слышал о том, что в mysql повились битмап-индексы. К слову говоря — это ведь не индексы, так как у них скорость работы пропорциональна n, а не log(n).
0
Я это спрашиваю не для холивара. Просто интересно.Если действительно интересно, то можете поискать на sql.ru, где немало было сказано на сей счёт.
Суть вопроса в том, что таблицы эмулируются с помощью глобалов.Если быть точнее, то с помощью регистров процессора.
Т.е. для глобалов это не самый естественный режим работыДа, естественность в наше время сдаёт позиции
Если можете сравнить с ораклом, то ещё лучше.Я не работаю с Oracle.
А интересуют меня операции INSERT, SELECT с INNER JOIN, транзакции.Поищите информацию про проект GAIA. Много ссылок есть как на sql.ru, так и на intersystems.ru, например:
Почитайте ещё «белые книги».
Есть разработчики, которые используют исключительно объекты и SQL, и с глобалами непосредственно не работают, и скорость их вполне устраивает.
Ничего не слышал о том, что в mysql повились битмап-индексыВопрос был риторический: я ведь ссылку не просто так привёл. Сильно сомневаюсь, что Oracle их "просто так" добавит в MySQL.
К слову говоря — это ведь не индексыВам виднее.
0
Ссылка насчёт GAIA интересная, но из неё неясно используется ли SQL-слой для вставки.
То что MUMPS может быстро вставлять записи — известный факт (у меня на домашнем компе, внутри виртуальной машины, 660 000 инсертов в секунду GT.M делает).
В редких БД используется в основном вставка — только во всяких системах логгирования. Для этой задачи, возможно, MUMPS нет равных.
Поэтому мне было интересно как Cache делает SELECT-запросы с джойнами.
В «белых книгах» содержится информация, которая выставляет Cache в хорошем свете, так как всё это размещено на корпоративном сайте Intersystems. И эти книги (про сравнение скоростей) я читал. Мне было интересно ваше мнение как частного лица.
Так что если вы сами не проводили сравнительных тестирований Cache с SQL-базами, то так бы и сказали.
То что MUMPS может быстро вставлять записи — известный факт (у меня на домашнем компе, внутри виртуальной машины, 660 000 инсертов в секунду GT.M делает).
В редких БД используется в основном вставка — только во всяких системах логгирования. Для этой задачи, возможно, MUMPS нет равных.
Поэтому мне было интересно как Cache делает SELECT-запросы с джойнами.
В «белых книгах» содержится информация, которая выставляет Cache в хорошем свете, так как всё это размещено на корпоративном сайте Intersystems. И эти книги (про сравнение скоростей) я читал. Мне было интересно ваше мнение как частного лица.
Так что если вы сами не проводили сравнительных тестирований Cache с SQL-базами, то так бы и сказали.
0
Для проекта Gaia используется Caché Java Extreme технология. Документация об этой штуке.
И да, это без использования SQL напрямую из Java в глобалы.
В принципе можно также работать с Caché и из .NET и из node.js.
И да, это без использования SQL напрямую из Java в глобалы.
В принципе можно также работать с Caché и из .NET и из node.js.
0
Ссылка насчёт GAIA интересная, но из неё неясно используется ли SQL-слой для вставки.Если хорошо поискать, то можно найти, что для вставки использовались Java и Caché eXTreme API.
Поэтому мне было интересно как Cache делает SELECT-запросы с джойнами.К слову, ещё очень популярен вопрос «Почему Caché нет на TPC.org?».
Вы, наверное, знаете, что в Caché встроен BI (DeepSee), позволяющий использовать SQL/MDX на живых данных без необходимости построения отдельного хранилища. Поэтому, непонятно ваше недоумение.
Если грамотно спроектированы классы/таблицы и подобраны индексы, собрана статистика, умело используются подсказки оптимизатору, то скорость ничем не уступает даже прямому доступу. Всё зависит от конкретных данных и конкретного запроса.
Так что если вы сами не проводили сравнительных тестирований Cache с SQL-базами, то так бы и сказали.Я не устаю повторять, что самый лучший способ сравнения — это пилотный проект на реальных данных и железе с реальной бизнес-логикой. Такое сравнение, я конечно же проводил, но для Caché. Со стороны других СУБД это делали другие люди. Вы же согласитесь, что настройкой и оптимизацией должны заниматься специалисты по тому или иному продукту.
0
говоря «Поэтому мне было интересно как Cache делает SELECT-запросы с джойнами» я подразумевал как быстро.
Сравнение можно проводить если есть хотя бы 2 элемента. А смысла сравнивать каше с каше немного.
Я хоть и не являюсь профессионалом MUMPS, тем не менее на скорость вставки сравнение GT.M с MySql провёл.
А вот на SELECT с джойнами нет, т.к. это долго для простого любопытства.
А ведь это очень важный вопрос. По инсертам всё понятно — MUMPS рвёт всех, а вот по SELECT с джойнами для меня пока вопрос открытый.
Такое сравнение, я конечно же проводил, но для Caché.
Сравнение можно проводить если есть хотя бы 2 элемента. А смысла сравнивать каше с каше немного.
Я хоть и не являюсь профессионалом MUMPS, тем не менее на скорость вставки сравнение GT.M с MySql провёл.
А вот на SELECT с джойнами нет, т.к. это долго для простого любопытства.
А ведь это очень важный вопрос. По инсертам всё понятно — MUMPS рвёт всех, а вот по SELECT с джойнами для меня пока вопрос открытый.
0
Если всё-таки хотите немного «синтетики», то могу дать несколько ссылок:
Чтобы корректно сравнивать, нужны соответствующие специалисты, иначе потом появятся лишние вопросы типа «А можно было ещё вот так и этак» или «А почему не использовали то-то?».
В любом случае всё это затратно как по времени так и по средствам.
- Пример №1
- Пример №2
- Улучшенный пример №2
На компетентность оппонента, не делающего поправки на источник хранения данных — RAM или HDD — внимания не обращайте. - Пример №3
- Пример №4
А смысла сравнивать каше с каше немного.Согласен.
Чтобы корректно сравнивать, нужны соответствующие специалисты, иначе потом появятся лишние вопросы типа «А можно было ещё вот так и этак» или «А почему не использовали то-то?».
В любом случае всё это затратно как по времени так и по средствам.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Новое в СУБД Caché 2013.1: добавление и генерация индексов на «живых» классах