|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Есть БД на postgreSQL. Стоят на 5 различных серверах..одна мастер, 4 слейв.... для них есть веб аппликейшен на яве. Руководство поставило задачу перевести бд на informix... Вопрос какие может дать преимущества informix по сравнение с postgreSQL и какие проблемы возникнут с переносом... .. по факту есть очень большое количество разных схем с одинаковым контентом (таблица функции).. общий объем баз данных порядка 200 Гб пока что вижу проблемы.. отсутствие подобных PostgreSQL схем в informix. не нашел альтернативы функции dblink. различия в типовых полях проблема тока может быть datatime. Если кто то еще видит проблемы по переводу или же может в чем то меня поправить прошу высказаться. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 16:53 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
VyacheclavРуководство поставило задачу перевести бд на informix... Интересно: чем оно это аргументировало? Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 16:57 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
скажем так есть крупный клиент у него кучу приложений ))))) многое стоит на informix и один вэб аппликейшен на postgreSQL. Они считают что вэб аппликейшен работает медленно и что переход на informix дасть лучшую производительность. Все доводы по оптимизации бд ,явы логики отбрасываются. надо подготовить документ по переход с бд на бд...какие пробелмы будут... что необходимо сделать..какие будут затраты на бд информикс (5 серверов) и т.д. поэтому в первую очередь интересует какие возникнут проблемы при миграции, и какая есть альтернатива у informix функции dblink в postgreSQL ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 17:08 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Vyacheclav, информикс это блокировочник, постгрес версионник. шансы, что апликуха спроектированная под версионник нормально пойдет на блокировочнике не так уж велики. вам придется нехилый анализ каждого запроса провести и вполне вероятно редизайн всей апликухи. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 17:16 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
VyacheclavЕсть БД на postgreSQL. Стоят на 5 различных серверах..одна мастер, 4 слейв.... для них есть веб аппликейшен на яве. Руководство поставило задачу перевести бд на informix... Вопрос какие может дать преимущества informix по сравнение с postgreSQL и какие проблемы возникнут с переносом... .. по факту есть очень большое количество разных схем с одинаковым контентом (таблица функции).. общий объем баз данных порядка 200 Гб пока что вижу проблемы.. отсутствие подобных PostgreSQL схем в informix. не нашел альтернативы функции dblink. различия в типовых полях проблема тока может быть datatime. Если кто то еще видит проблемы по переводу или же может в чем то меня поправить прошу высказаться. То что вы называете схемой в informix эмулируется через database. Коннект между базами осуществляется одниаково ( с точки зрения программера ) не зависимо от того на каком сервере база работает ( у баз должны быть одинаковые внутренние кодировки). Одни сервер ( железяка и ОС ) может тянуть несколько ( кажется до 255 ) инстансов ( с разными параметрами onconfig) , каждый из которых может иметь на борту кучу баз. Есть возможность настроить ER репликацию, все что скажете заедет в одну базу из другой на автомате. Заходите в профильный форум , вам там расскажут. Что касается производительности , то если ваше приложение не будет висеть на блокировках, то выиграш по скорости вы получите 99%. С точки зрения расходования ресурсов - ИМХО очень экономная СУБД. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 17:41 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Vyacheclavесть крупный клиент у него кучу приложений ))))) многое стоит на informix и один вэб аппликейшен на postgreSQL Раз крупный заказчик готов оплатить эту работу, то вопросы излишни - надо переводить, решая возникающие проблемы по мере их возникновения. Вашему приложению всяко будет польза от того, что оно сможет поддерживать несколько СУБД. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 17:45 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Самое главное преймущество , которое бросается в глаза Информикс имеет чесный DIO multiblock read а не через кш ФС как в PG . Что не мешает работать другим приложения рядом, активно использующим кеш ФС. Возможно я отстал от жизни и в PG уже есть чесный multiblock read , когда то это было принципильным вопросом , разработчики не видили смысла его организовывать и полностью полагались на кеш ФС.. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 17:55 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
в прошлом информиксоводVyacheclavЕсть БД на postgreSQL. Стоят на 5 различных серверах..одна мастер, 4 слейв.... для них есть веб аппликейшен на яве. Руководство поставило задачу перевести бд на informix... Вопрос какие может дать преимущества informix по сравнение с postgreSQL и какие проблемы возникнут с переносом... .. по факту есть очень большое количество разных схем с одинаковым контентом (таблица функции).. общий объем баз данных порядка 200 Гб пока что вижу проблемы.. отсутствие подобных PostgreSQL схем в informix. не нашел альтернативы функции dblink. различия в типовых полях проблема тока может быть datatime. Если кто то еще видит проблемы по переводу или же может в чем то меня поправить прошу высказаться. То что вы называете схемой в informix эмулируется через database. Коннект между базами осуществляется одниаково ( с точки зрения программера ) не зависимо от того на каком сервере база работает ( у баз должны быть одинаковые внутренние кодировки). Одни сервер ( железяка и ОС ) может тянуть несколько ( кажется до 255 ) инстансов ( с разными параметрами onconfig) , каждый из которых может иметь на борту кучу баз. Есть возможность настроить ER репликацию, все что скажете заедет в одну базу из другой на автомате. Заходите в профильный форум , вам там расскажут. Что касается производительности , то если ваше приложение не будет висеть на блокировках, то выиграш по скорости вы получите 99%. С точки зрения расходования ресурсов - ИМХО очень экономная СУБД. Хотелось бы уточнить возможно ли в информик делать запросы между database и если да то каким образом для примера. Второе с помошью функиции dblink я мог копировать данные по средства DB с другого сервера не через ява код.... (копирование 500 тысяч строк с другого сервера занимает примерно 7-9 секунд (на моем рабочем компьютере, доступ к серверу я не имею так как он находиться за бугром но там это еще быстрее было ))))) ..в то как через ява когда на это уходили минуты а то и больше .) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 18:09 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Эмуляция через database не совсем наверное подойдет так как в postgreSQL между схемами есть связанные таблицы по FK, триггеры по сохранению целостности, актуальности информации. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 18:19 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
приблизительно так Код: plaintext 1. 2. 3.
Только нужно соотвествующим образом подправиль $INFORMIXDIR/etc/sqlhosts Что бы одни сервер видел другой . ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 18:20 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
VyacheclavЭмуляция через database не совсем наверное подойдет так как в postgreSQL между схемами есть связанные таблицы по FK, триггеры по сохранению целостности, актуальности информации. попробуйте повесть ФК на ПК синонима, я не в курсе уже несколько лет как отошел от дел, попробовать даже негде. Идите в профильный форум. Там на редкость дружелеюбные люди , ввиду того что их круг узок , и залетных тролей нет, ввиду низкого интереса к БД у обывателей. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 18:26 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
VyacheclavЭмуляция через database не совсем наверное подойдет так как в postgreSQL между схемами есть связанные таблицы по FK, триггеры по сохранению целостности, актуальности информации. В Информикс внутри одной базы есть пользователи и гранты. Вам нужно будет избавиться от конфликта имен, которые у вас возможно решаются разнесением по схемам. Это пока единственное ограничение которое я вижу, что бы собрать несколько схем ПГ в одной БД Информикс. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 19:50 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
нашел в документации informix 11.70 следующе Programming > SQL > Guide to SQL: Tutorial > Modify data > Concurrency and locks .... To prevent errors of this kind, the database server imposes a system of locks. A lock is a claim, or reservation, that a program can place on a piece of data. The database server guarantees that, as long as the data is locked, no other program can modify it. When another program requests the data, the database server either makes the program wait or turns it back with an error. ... Так версионник это или блокировочник ? ибо postgreSQL так же может дать обнолвения данных если задействованна блокировка на таблицу (ручками) или же просто вернет актуальные данные на момент запроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 12:34 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Vyacheclavнашел в документации informix 11.70 следующе Programming > SQL > Guide to SQL: Tutorial > Modify data > Concurrency and locks .... To prevent errors of this kind, the database server imposes a system of locks. A lock is a claim, or reservation, that a program can place on a piece of data. The database server guarantees that, as long as the data is locked, no other program can modify it. When another program requests the data, the database server either makes the program wait or turns it back with an error. ... Так версионник это или блокировочник ? ибо postgreSQL так же может дать обнолвения данных если задействованна блокировка на таблицу (ручками) или же просто вернет актуальные данные на момент запроса. не правильно вырозился... postgreSQL так же может не вернуть данных если задействованна блокировка на таблицу (ручками) или же если нет блокировки но идет апдейт просто вернет актуальные данные на момент начало запроса ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 12:37 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Vyacheclav, информикс это классический блокировочник и вот такого "просто вернет актуальные данные на момент запроса" не может, со всеми вытекающими для вашей апликухи. зы. представление о постгесных уровнях изолированности у вас похоже весьма своебразное. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 12:39 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Yo.!Vyacheclav, информикс это классический блокировочник и вот такого "просто вернет актуальные данные на момент запроса" не может, со всеми вытекающими для вашей апликухи. зы. представление о постгесных уровнях изолированности у вас похоже весьма своебразное. Я на уровне БД мало что знаю ибо не администратор БД..потому тут и задал тему что бы хоть какаие то получить разумные для меня объяснения... Смущает следующее the database server either makes the program wait or turns it back with an error. если я правильно понимаю то классический блокировочник должен сделать только he database server either makes the program wait но никак or turns it back with an error (может я не правильно перевел... но или вернет обратно данные с ошибками (тобишь данные до момента начало апдейта) ) Если я что то не понимаю может мне кто даст ссылки на различия блокировочниках и версионниках буду признателен. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 12:50 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Vyacheclavor turns it back with an error (может я не правильно перевел... но или вернет обратно данные с ошибками (тобишь данные до момента начало апдейта) ) Неправильно перевёл. "Будет ждать или вернёт ошибку." А если ты ничего не знаешь о БД, то кто ты тогда в этом проекте? Менеджер? Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 12:54 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Vyacheclav Я на уровне БД мало что знаю ибо не администратор БД..потому тут и задал тему что бы хоть какаие то получить разумные для меня объяснения... Смущает следующее the database server either makes the program wait or turns it back with an error. если я правильно понимаю то классический блокировочник должен сделать только he database server either makes the program wait но никак or turns it back with an error (может я не правильно перевел... но или вернет обратно данные с ошибками (тобишь данные до момента начало апдейта) ) Если я что то не понимаю может мне кто даст ссылки на различия блокировочниках и версионниках буду признателен. or turns it back with an error - тут имеется ввиду, что вернет ошибку. блокировочник при чтении накладывает блокировку и может наткнуться на залоченную запись и начнет ждать пока другая транзакция освободит ему залоченую запись. другая же транзакция может ровно так же остановиться и ожидать когда первая осводит другую запись для редактирования. ситуация патовая, сервер выберет одну из этих транзакций и прихлопнет ее. в результате одна из транзакций завершиться "with an error" почитайте для начала документацию информикса где описываются isolation levels, общих описаний не видел, но по версионности в кратце есть что-то тут http://www.osp.ru/os/2005/01/185218/#top ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 13:07 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Я программист.. но щас вот поставили задачу и сказали обучить, разберись и предоставь план перехода с + и - ))) То есть как я понимаю если в версионнике селект выполнится с данными до транзакции, то информик будет ждать окнчания транзакции или же просто вернет ошибку без данных ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 13:09 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
Yo.!VyacheclavЯ на уровне БД мало что знаю ибо не администратор БД..потому тут и задал тему что бы хоть какаие то получить разумные для меня объяснения... Смущает следующее the database server either makes the program wait or turns it back with an error. если я правильно понимаю то классический блокировочник должен сделать только he database server either makes the program wait но никак or turns it back with an error (может я не правильно перевел... но или вернет обратно данные с ошибками (тобишь данные до момента начало апдейта) ) Если я что то не понимаю может мне кто даст ссылки на различия блокировочниках и версионниках буду признателен. or turns it back with an error - тут имеется ввиду, что вернет ошибку. блокировочник при чтении накладывает блокировку и может наткнуться на залоченную запись и начнет ждать пока другая транзакция освободит ему залоченую запись. другая же транзакция может ровно так же остановиться и ожидать когда первая осводит другую запись для редактирования. ситуация патовая, сервер выберет одну из этих транзакций и прихлопнет ее. в результате одна из транзакций завершиться "with an error" почитайте для начала документацию информикса где описываются isolation levels, общих описаний не видел, но по версионности в кратце есть что-то тут http://www.osp.ru/os/2005/01/185218/#top Большое спасибо !!!!!!!! помог ламеру ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 13:11 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
VyacheclavЯ программист.. но щас вот поставили задачу и сказали обучить, разберись и предоставь план перехода с + и - ))) То есть как я понимаю если в версионнике селект выполнится с данными до транзакции, то информик будет ждать окнчания транзакции или же просто вернет ошибку без данных ? Это как настроите. может ждать пока освободится, , может жать указанное вами время и отдавать ошибку если за это время блокировка не освободилась , может отдавать ошибку сразу. . ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 14:45 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
в прошлом информиксоводVyacheclavЯ программист.. но щас вот поставили задачу и сказали обучить, разберись и предоставь план перехода с + и - ))) То есть как я понимаю если в версионнике селект выполнится с данными до транзакции, то информик будет ждать окнчания транзакции или же просто вернет ошибку без данных ? Это как настроите. может ждать пока освободится, , может жать указанное вами время и отдавать ошибку если за это время блокировка не освободилась , может отдавать ошибку сразу. . В информиксе нету обхода по графу блокировок для поиска дедлоков, т.е. дедлоки исключительно таймаутами выявляются? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 14:54 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
дедлокив прошлом информиксоводпропущено... Это как настроите. может ждать пока освободится, , может жать указанное вами время и отдавать ошибку если за это время блокировка не освободилась , может отдавать ошибку сразу. . В информиксе нету обхода по графу блокировок для поиска дедлоков, т.е. дедлоки исключительно таймаутами выявляются? В моторе есть упреждающий механизм. Внутри одного сервера сервер не должен допускать взаимных блокировок. В всяком случае я не помню явных проблем с попаданием сессий на дедлоки. А между серверами такого механизма нет и нарваться можно. http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.perf.doc/perf242.htm ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 15:04 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
в прошлом информиксоводдедлокипропущено... В информиксе нету обхода по графу блокировок для поиска дедлоков, т.е. дедлоки исключительно таймаутами выявляются? В моторе есть упреждающий механизм. Внутри одного сервера сервер не должен допускать взаимных блокировок. В всяком случае я не помню явных проблем с попаданием сессий на дедлоки. А между серверами такого механизма нет и нарваться можно. http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.perf.doc/perf242.htm Понятно, "использует блокировку таблицы для обнаружения дедлоков автоматически, и остановливает их до их возникновения". Единственно не понятно почему делается упор на "не допустить дедлок". Чем отличается "не должен допускать взаимных блокировок" от "поиска блокировок по графу", не в смысле реализации, а в смысле эффекта? По сути так же выпадает с ошибкой и откатом транзакции. Ситуацию с дедлоком от обычной штатной ситуации отделяет лишь одна блокировка, до которой невозможно предугадать/предотвратить дедлок, а после которой уже поздно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 15:41 |
|
Сравнении PostgreSQl и Informix 11.50
|
|||
---|---|---|---|
#18+
дедлокив прошлом информиксоводпропущено... В моторе есть упреждающий механизм. Внутри одного сервера сервер не должен допускать взаимных блокировок. В всяком случае я не помню явных проблем с попаданием сессий на дедлоки. А между серверами такого механизма нет и нарваться можно. http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.perf.doc/perf242.htm Понятно, "использует блокировку таблицы для обнаружения дедлоков автоматически, и остановливает их до их возникновения". Единственно не понятно почему делается упор на "не допустить дедлок". А где вы нашли информацию о блокировке таблицы? Мне самому стало интересно Или выдумали ? дедлокиЧем отличается "не должен допускать взаимных блокировок" от "поиска блокировок по графу", не в смысле реализации, а в смысле эффекта? По сути так же выпадает с ошибкой и откатом транзакции. Ситуацию с дедлоком от обычной штатной ситуации отделяет лишь одна блокировка, до которой невозможно предугадать/предотвратить дедлок, а после которой уже поздно. Да , а как по другому. Вопрос был про таймауте ожидания на дедлоке. Я вам сказал что их быть не должно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2011, 15:52 |
|
|
start [/forum/topic.php?fid=35&msg=37518842&tid=1552626]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 143ms |
0 / 0 |