Что за кластер то? Просто HA, или PP? Например мне данный кластер не подходит. Насколько я понял, они говорят про HA. А есть ли кластеры на базе mysql с Parallel Processing, где каждый кусок базы хранится на отдельном сервере, без репликаций. То есть в моем случае важна не сохранность/целостность данных, а чтобы каждый сервер обрабатывал свой маленький кусок базы. Чем больше серверов в кластере - тем быстрее обрабатывается база. Некое подобие SMP.
а на чем же еще может быть подобная штука?
на .NET или C (но тут уже будет привязка к ODBC, а это вот уж точно ну нафиг)
а так секвоя позволяет делать такие штуки, что на разных узлах кластера будут работать разные базы, например на трех Postgres на двух MySQL еще еа пяти Firebird :)
>> на .NET
>Боже упаси! Мне бы хотелось на С, максимум на C++.
>> на разных узлах кластера будут работать разные базы
>Да, именно это и впечатлило. Как фича это очень круто, но мне
>не нужно. Отсюда и JDBC/ODBC - лишнее.
>> В общем аналогов я пока не встречал
>Очень, очень и очень жаль. :-(
А чем жаба не устраивает? Кроме скорости?
Можете попытаться реализовать свой. Перепишите на C.
конечно вспоминал. он входит в oracle standart edition. эта сумма по сравнению со стоимостью софта, который должен крутиться на кластере, и по сравнению со стоимостью данных - не так уж и много.
>Что-то я даже не представляю себе как это сделать на c/c++. Кстати, я подозреваю что для этой задачи overhead javы будет не таким уж большим.
Да, на с++ это зделать уж точно нельзя! Принцыпиально. Чиста убогий язычек патамучта.
>Кстати, я подозреваю что для этой задачи overhead javы будет не таким уж большим.
Канечна. Прикинь вместо скажем ~3 гигов под SGA, делаем 1 гиг патамучта 2 гига заберет жаба. Красата - и никакого оверхеда! Ну разве что мир иногда буде останавливаться секунд на 300 - это когда гц начнет хип компактить - но нам жабазилэтам это никак не оверхед.
Небезызвестный Google, проводящий свой конкурс программистов, принимает заявки только с использованием Java/C#/C++, так что язык нормальный. Так что кончайте нести всякий бред... Тема про MySQL, а не про то, сколько жрёт памяти Java.
> Канечна. Прикинь вместо скажем ~3 гигов под SGA, делаем 1 гиг патамучта 2 гига заберет жаба. Красата - и никакого оверхеда! Ну разве что мир иногда буде останавливаться секунд на 300 - это когда гц начнет хип компактить - но нам жабазилэтам это никак не оверхед.
Чувак тебе лечиться надо! Отреж и выбраси свой язык или отреж свои пальцы чтоб к клавиатуре не подходить
Товарищи быдло-жаберы и быдло-майкрософт-подельники, я вас не спрашивал втирать мне про эти быдло-языки. То чем вам промыли мозги, я могу прочитать сам на сайте sun.com и microsoft.com.
На счет невозможности написать PP кластер на С/С++... ну чтож, мозгов у вас не хватит, это точно. Свою же задачу я уже давно решил, на С++. В данном треде я искал альтернативные (лучшие) решения. Не нашел, очень жаль.
> Что за кластер то? Просто HA, или PP?
Некое PP есть. Во-первых, см. картинку на
http://dev.mysql.com/doc/refman/5.0/en/mysql-cluster-overview.html -
несколько экземпляров mysqld могут быть запущены на разных компах и могут исполнять разные запросы над одними и теми же данными параллельно.
Во-вторых, при выполнении одного запроса один mysqld может тянуть данные с нескольких ndbd, при этом простые предикаты фильтрации будут выполняться на этих нескольких ndbd одновременно. Эта фича правда весьма ограничена.
> А есть ли кластеры на базе mysql с Parallel Processing, где каждый
> кусок базы хранится на отдельном сервере, без репликаций.
кластерные таблицы поддерживают table partitioning, может быть это даст возможность разложить куски таблицы по разным серверам. Врать не буду, сам не пробовал.
> То есть в
> моем случае важна не сохранность/целостность данных, а чтобы каждый
> сервер обрабатывал свой маленький кусок базы.
Ну, HA и PP не являются абсолютно ортогональными целями - если мы поддерживаем много копий данных, то как минимум можем очень просто разспаллелить выполнение нескольких SELECT'ов :-)
> кластерные таблицы поддерживают table partitioning, может быть это даст
> возможность разложить куски таблицы по Врать не буду, сам не пробовал.
Я говорю про случай, когда вся база физически может не поместиться на один сервер. То есть в моем варианте база разбита на несколько серверов и единой базы нету и быть не может (она слишком большая). Think google.
> Я говорю про случай, когда вся база физически может не поместиться на один сервер. То есть в моем варианте база разбита на несколько серверов и единой базы нету и быть не может (она слишком большая). Think google.
Не уверен что в этом случае "просто используй MySQL Cluster" будет подходящим решением - он in-memory database (в последней версии - кроме блобов). Пробежался быстро по мануалу и не нашел как можно задать число копий/способ раскладки таблиц/partition'ов по нодам.
Для очень большой базы может быть можно в MySQL сделать partitioned table или view поверх federated таблиц плюс настроить хитрую репликацию но это уже будет ближе к деланию кластера самостоятельно :-)
> конечно вспоминал. он входит в oracle standart edition. эта сумма по сравнению со стоимостью софта, который должен крутиться на кластере, и по сравнению со стоимостью данных - не так уж и много.
А если ещё вспомнить про то, что под RAC требуется не меньше 2 CPU на каждом узле, а у Standard Edition ограничение в 4 CPU, то кластер на Standard Edition получается хреновенький - двухнодовый ;-)