|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Долго занимался только Oracle - бэкенд, формсы, репорты. Вот сейчас возникает возможность перейти на проект, который мигрирует существующее приложение на Oracle в Postgres. Работа предполагается только с серверной частью, фронтендом заниматься не придется. Обязанности DBA тоже выполнять не требуется. C оракловскими делами, SQL/PLSQL у меня никаких сложностей нету, знаю довольно хорошо. Новую датабазу готов учить, ничего плохого про Postgres я не слышал. Кто проходил через подобный процесс, что скажете, каким опытом поделитесь, на что обратить внимание, какие ожидать сложности? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2021, 01:06 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23, по этому вопросу много и-и. если много серверных процедур - используйте ора2пг для упрощения конвертации кода. сложность зависит от того сколько фич вы используете на оракле. у меня основные вопросы были связаны с: - автономные тр-ии - джобы (шедулер) - иерархические запросы - очереди - мат вьюхи с фастрефрешем если проект использует оракл чисто как таблицехранилище, то проблем практически не будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2021, 08:39 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Еще есть интересные "мелочи" 1. NULL и '' в ПГ не одно и тоже. 2. Очень надоедает необходимость четко указывать тип (и следить при сравнениях, да и просто при джойнах). само оно и пытаться не будет приравнять 1 к '1', например. в лучшем случае оно скажет об ошибке приведения, в худшем не будет, например, использовать индекс, там, где у ораклиста и вопросов не возникнет) и таких мелочей там не мало. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2021, 10:06 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Немного офтоп, переписывал ETL с R-project на PL/SQL. Долго исправлял код, где используется тип Timestamp with time zone. Оказалось, что если тестовый сервер в РФ, а прод в США - результаты сильно разные. При сортировке значение NULL сортируется не так как в R-project: у кого-то оказывается в начале, а у кого-то в конце списка. Пришлось принудительно проставлять NULLS FIRST или NULLS LAST. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2021, 12:32 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
У нас в проекте _слишком_ много pl/sql-кода (легаси почти с 2000 года). Начитавшись о всяких подводных камнях решили не "переводить", а "выстроить" новый проект, и попутно избавиться от костылей и всякого. По оракловым фичам: - от автономных транзакций удалось отказаться без потерь (внушив себе, что автономки сами по себе - костыль.. хотя, конечно, с ними удобнее) - временные таблицы в PG - их лучше не использовать, лучше создавать unlogged таблицы и эмулировать доступность данных в них по аналогии с временными в оракле - вместо пакетов использовать схемы - вместо глобальных переменных - таблицы и контекстные переменные - джобы заменяются pgagent'ом - utl_xx, dbms_xx - внешними сервисами ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2021, 13:38 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
я с ораклом привык к Toad, уютно как в лаптях. А какой тул используется в Postgres для работы? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2021, 23:08 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23 я с ораклом привык к Toad, уютно как в лаптях. А какой тул используется в Postgres для работы? А что такое работа? Если DBA - то только psql command line если разработка то там много всего понаделали... одно кривее другого. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2021, 23:30 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Maxim Boguk, выше по контексту вы могли бы понять, что речь идет о работе девелопера. Вы, видимо, сами не девелопер и не в базах данных. Я полагал, что любой ораклист знает что такое Toad и как он незаменим в ежедневной рутине. Запросы, написание pl/sql кода, анализ схем, вообще все что пожет понадобиться разработчику, в одном пакете, удобно, быстро и надёжно. Хотя и дорого, у Toad цена лицензии существенная. Но я всегда считал если фирма не может обеспечить разработчикам каждому по копии Toad, то и нечего иметь дело с нищебродами. Я совершенно уверен что существует "куча всего кривого", спасибо, капитан, поэтому я и задал простой (для тех кто в теме) вопрос - в postgres существует аналог Toad? Универсальный, общепринятый, мощный и удобный? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2021, 23:36 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23, похоже что нет. Я долго искал, много чего перепробовал, всё оно к разработке подходит с какого-то другого боку. Тем не менее, я остановился на двух утилитах. 1. Это dbeaver, у него есть бесплатная редакция. Такой, вполне себе простенький тул, чем-то мне напомнил SQLTools для ораклы. 2. datagrip, там есть студенческие лицензии, либо для индивидуального девелопера не так уж и дорого, при этом у него куча настроек (вполне под себя можно настроить) и куча плюшек, типа прозрачной интеграции с GIT, интуитивное ведение проекта (когда проект - это каталог в файловой системе, и дальше все файлы и подкаталоги видны) и много всякого именно для разработки (закладки, избранное, TODO..). В ПГ нет пакетов как в оракле, но можно функции объединять в схемы, и в этом случае все функции схемы я сохраняю в единый файл (а не каждую функцию в отдельный файл) - датагрип умеет в отдельной панели отображать структуру файла (с сортировкой по именам) для быстрой навигации.. вполне юзабельно. Но надо быть готовым к тому, что придётся потратить время на настройку. По началу датагрип тормозной (постоянно парсит исходники, у него куча помощников надоедливых), он кэширует метаданные (что мешает при параллельной разработке и приходится этот кэш сбрасывать), автоматически сохраняет _все_ файлы не спрашивая... ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2021, 00:34 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Да, ещё такие "беды" в ПГ есть (я относительно 12й версии ПГ пишу, с другими не работал). 1. ПГ не умеет строить зависимости по процедурам. Зависимости видны только по форейн-ключам таблиц, по вьюхам и триггерам. 2. Процедурный код при "компиляции" проверяется только на синтаксис. Т.е. оно даже не компилируется... хотя утверждать не буду, возможно какое-то дерево исполнения строится заранее (а может и на лету). Ошибки (ну например банальная опечатка в коде) будут при исполнении, причём только если исполнение дошло до этой строки (ну if-then-else блоки). Поэтому каждую функцию надо тестировать. Ну и датагрип тут помогает, он опечатки подсвечивает (да, рефакторинг в нём достаточно удобный). 3. Для вьюх зависимости ПГ строит, но они больше мешают, чем помогают. Например, если поверх таблицы есть вью, то изменить тип поля в столбце (или переименовать столбец, что нормально именно на стадии черновой разработки) уже становится проблемой - все зависимые представления надо будет удалять, а потом создавать заново. Поэтому надо сразу отделять таблицы от всего остального, а всё остальное хранить отдельно и в репозитории. Вообще следуют сразу строго настрого запретить разработчикам менять код непосредственно в БД, т.е. мы делаем так: - сначала создаётся файл (со вьюхой, или группой вьюх, или процедурами) - файл накатывается на БД для разработки (я забил на общую БД, развернул у себя на локальном компе, это тупо быстрее), тестируется и т.п. - файл комитится в GIT - из GIT'а (пока ещё не сделали, но будет, что-то типа git-flow или пайплайны) оно автоматически накатывается на отдельный инстанс и там тестируется ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2021, 00:54 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
delphinotes, спасибо за толковый и дружелюбный ответ. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2021, 01:45 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23 я с ораклом привык к Toad, уютно как в лаптях. А какой тул используется в Postgres для работы? тоад божественен, это, кажется, единственная тулза из нормальных где хорошо сделаны параметры для запросов. есть тоад для ПГ, но он откровенно убог. последнее время datagrip используем, после рассмотрения 10ка альтернатив, даже купили лицензии.он прожорлив но в принципе норм. и в нем нет пока дебага для ПГ. с этим вообще беда в ПГ. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2021, 09:16 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Надфиль и в нем нет пока дебага для ПГ. с этим вообще беда в ПГ. Ну дык правильно. PL/pgSQL это по факту "левая приблуда" для PostgreSQL, наравне с каким-нибудь PL/PHP. Родные ХП для PG это просто SQL-запросы с параметрами. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2021, 14:00 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
ну что, подписал оффер. Открыл Postgres Tutorial. После четырёх месяцев еботни с дебильным Jdeveloper ADF, ощущение что пересел с кокпита Boing 777 на велосипед. Трёхколесный. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2021, 02:22 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
EMS Manager меня всем устраивает. И параметры для запросов с историей и дебаггер импорт - экспорт почти из всего и во всё ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2021, 18:49 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23, Слово не прозвучало про pgadmin, не тоад конечно Но что-то в нем делать можно. Постепенно его развивают. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 17:41 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23, Ты это, тему не забрасывай, изучай, спрашивай, доки, тулзы и тд В следующем году тоже с оракла начнём съезжать на постгри просто ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2021, 14:25 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
_avz EMS Manager меня всем устраивает. И параметры для запросов с историей и дебаггер импорт - экспорт почти из всего и во всё он не бесплатный ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2021, 16:04 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Народ, а что насчет книг, порекомендуйте? Я знаю что ничего подобного по качеству как книги Кайта или Фернстейна по PG не существует, но все же тыщщи их, чтобы не копаться, поделитесь какие вам особенно понравились? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2021, 00:04 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23 Долго занимался только Oracle - бэкенд, формсы, репорты. Вот сейчас возникает возможность перейти на проект, который мигрирует существующее приложение на Oracle в Postgres. Работа предполагается только с серверной частью, фронтендом заниматься не придется. Обязанности DBA тоже выполнять не требуется. C оракловскими делами, SQL/PLSQL у меня никаких сложностей нету, знаю довольно хорошо. Новую датабазу готов учить, ничего плохого про Postgres я не слышал. Кто проходил через подобный процесс, что скажете, каким опытом поделитесь, на что обратить внимание, какие ожидать сложности? А почему оракал не продолжаете использовать? Просто оставайтесь на нем, в чем проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2021, 09:38 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23, начинал с "Салахалдин Джуба, Андрей Волков - Изучаем PostgreSQL". потом дока. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2021, 09:46 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23 Народ, а что насчет книг, порекомендуйте? Я знаю что ничего подобного по качеству как книги Кайта или Фернстейна по PG не существует, но все же тыщщи их, чтобы не копаться, поделитесь какие вам особенно понравились? https://tapoueh.org/about/ ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2021, 15:29 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23 Народ, а что насчет книг, порекомендуйте? Я знаю что ничего подобного по качеству как книги Кайта или Фернстейна по PG не существует, но все же тыщщи их, чтобы не копаться, поделитесь какие вам особенно понравились? Оптимизация запросов PostgreSQL, Домбровская Г., Новиков Б., Бейликова А. Основы технологий баз данных, Новиков Б. PostgreSQL изнутри, Рогов Е. (будет доступна где-то в течение месяца здесь ) Как читавший книги упомянутых оракловых авторов могу уверенно сказать, что вот эти постгресовые ни в чем не уступают. Разумеется imho. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2021, 15:49 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Хм...а что нибудь переводное или на английском? Я не знаю _ни одной_ толковой книги по программированию русскоязычных авторов (ну, кроме Фигурнова:) (и Фараонова:) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2021, 01:54 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23 Хм...а что нибудь переводное или на английском? Я не знаю _ни одной_ толковой книги по программированию русскоязычных авторов (ну, кроме Фигурнова:) (и Фараонова:) Прекрасная возможность познакомиться )) Первая книга в оригинале на английском. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2021, 11:02 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Павел Лузанов Будет ли в бумаге? Как бы подписаться, чтоб не пропустить? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2021, 11:11 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Курю родные мануалы. копаю тему про создание функций, возвращающих refcursor. полнейшая неразбериха, нигде внятно не объясняются все варианты. Обнаружил что в нашем приложении вообще используется вариант, который нигде не описан, но он работает. Это п-ц, товарищи! ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2021, 11:28 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Guzya Павел Лузанов Будет ли в бумаге? Как бы подписаться, чтоб не пропустить? В бумаге будет. За деньги. На сайте pdf - бесплатно. Как подписаться не знаю. Но январь, максимум февраль. Так что ждать недолго. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2021, 17:35 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23, Всю ветку читать было лень, проходил это много раз. NVL - переписать на Coalesce. Вернее, создать функцию. И вообще от сахарка избавиться в телах функций. NVL - Не есть ANSI Дата + 1 (Numeric) - посгря позволяет как С++ перегружать операторы. основной синтаксис тот же. Пэкэджи можно в схемы оформить, можно нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2021, 00:39 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
...Вот посгря при этом не компилируемая, как оракл. И позднее связывание, как в M$$QL Так что ошибку мы выловим на этапе исполнения. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2021, 00:51 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
мой первый ассайнмент на новой работе: сравнить время выполнения хранимых процедур Oracle и PG. Для большей точности одна и та же процедура вызывается по циклу 1000 раз. Ну чо, сравним. Только собираюсь заменить запросы с параметрами у рефкурсорных функций на NDS. чтобы, значить, заставить их репарсить при вызове по циклу. Народ местный удивился - "а что, так можно было?" Я также слегка обалдел удивился обнаружив в частной беседе что цель менеджера проекта (и моего начальника) отбиться от PG потому что он должен быть будет медленный. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2021, 04:07 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23 мой первый ассайнмент на новой работе: сравнить время выполнения хранимых процедур Oracle и PG. Для большей точности одна и та же процедура вызывается по циклу 1000 раз. Ну чо, сравним. Только собираюсь заменить запросы с параметрами у рефкурсорных функций на NDS. чтобы, значить, заставить их репарсить при вызове по циклу. Народ местный удивился - "а что, так можно было?" Я также слегка обалдел удивился обнаружив в частной беседе что цель менеджера проекта (и моего начальника) отбиться от PG потому что он должен быть будет медленный. Фирма солидная, международная, большая, как раз на днях её съела купила еще более большая фирма из GB Новые хозяева уже добавили всем 10 персональных больничных дней в год, но запретили ранее действующее разрешение переносить неиспользованый отпуск на 3 месяца в следующий год. У кучи народа расчитывающих на это отпуска погорели. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2021, 04:10 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
delphinotes, Вы пишите: > Ошибки (ну например банальная опечатка в коде) будут при исполнении, > причём только если исполнение дошло до этой строки (ну if-then-else блоки). То есть что, все хранимые нужно тестировать со всеми вариантами входных параметров, чтобы пробежалось по всем кусочкам кода? Заглянуть в каждый иф, в каждый кейс... Как Вы это делаете? Это же всё страшно ненадежно! Может быть есть методика, кроме "не нравится - не программируй"? Я не ёрничаю. Я реально в ужасе от таких перспектив. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2021, 19:48 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
muller, Элементарно, Ватсон, деплоишь в продакшен и ждешь жалоб от юзеров. Патанатом лучший диагност! Юзер лучший тестировщик! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2021, 21:20 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
muller, Да, простой тест: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
функция test.f1() существует, поэтому вызов select test.main(true) отработает, второй функции нет - вызов select test.main(false) завершится ошибкой: Код: sql 1.
С другой стороны, я вижу в этом возможность обхода отсутствия условной компиляции. В Oracle оно есть: Код: sql 1.
Используем для реализации, так сказать, client specific логики. Ну а в целом, такие особенности вынуждают писать код более прямолинейным и чистым... и практика показывает, что это возможно, но требует бОльших усилий (особенно тяжело новичкам). Насчёт тестирования - использую такой подход, при котором не создаётся больших (по кол-ву кода) процедур. Если процедура делает много чего, то каждый кусочек выделяется в отдельную процедуру, которая и тестируется. При написании кода с нуля, тут ничего такого нет, только рутина. Ежели брать Oracle легаси (у нас до дури plsql-кода с использованием сомнительных практик)... я даже не знаю, отказался я от этой идеи. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2021, 21:56 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Кстати недавно наткнулся на такое (при работе со структурными типами). Вот так писать нельзя (PG 12): Код: sql 1.
вместо этого надо: Код: sql 1.
Это работает как plpgsql, так и в sql. см. здесь ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2021, 21:59 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Да, и ещё одна особенность: null в уникальном индексе не работает. Т.е. если хоть одно из полей составного индекса из null, то уникальность не работает. Варианты обхода: а) использовать where б) приводить к not null с помощью coalesce Эта проблема уже несколько раз на этом форме поднималась, например вот: Как создать уникальный составной индекс, который может содержать null значение ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2021, 22:06 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
muller delphinotes, Вы пишите: > Ошибки (ну например банальная опечатка в коде) будут при исполнении, > причём только если исполнение дошло до этой строки (ну if-then-else блоки). То есть что, все хранимые нужно тестировать со всеми вариантами входных параметров, чтобы пробежалось по всем кусочкам кода? Заглянуть в каждый иф, в каждый кейс... https://github.com/okbob/plpgsql_check вот эта штука сильно помогает найти грубые ошибки и опечатки, которые только в рантайм вылезут. не логические, конечно, но, тем не менее,мне сильно помогло. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2021, 09:49 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
delphinotes Да, и ещё одна особенность: null в уникальном индексе не работает. Т.е. если хоть одно из полей составного индекса из null, то уникальность не работает. По ясному требованию стандарта null не равен null, поэтому совершенно логично уникальный индекс следует этому правилу. А оракл пользуется другой альтернативной логикой. При том, напрямую не противоречащей sql spec. Передаём привет sql spec, недостаточно явно описывающему многие нюансы. delphinotes Вот так писать нельзя (PG 12): можно. Но документацию читать надо. Там описано, как считается is null над композитами. По рантайм ошибкам - плюсую plpgsql_check. Весьма хороший штук. muller Может быть есть методика, кроме "не нравится - не программируй"? Я не ёрничаю. Я реально в ужасе от таких перспектив. Ну самые обычные впечатления, когда переходишь с компилируемого языка на интерпретируемый. С go на python, например, или подобное. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2021, 10:31 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
delphinotes, Душевно признателен за подробный ответ! И вот у меня система на Оракле. Двухзвенка. Бизнес логика на сервере. То есть огромное количество хранимых в пакетах с процедурами, подпроцедурами, с бешенным количеством параметров, и эти параметры зачастую %rowtype а то и коллекции %rowtype. Допустим, я получаю распоряжение: Отказаться от Оракла. Переехать на Постгресс. И, судя по Вашему ответу, хренушки у меня получиться эффективно сохранить архитектуру. Проще фигню какую-то намутить, используя Постгресс только как хранилище. Ну что ... новые вызовы. Ещё раз спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2021, 11:27 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
muller И вот у меня система на Оракле. Двухзвенка. Бизнес логика на сервере. То есть огромное количество хранимых в пакетах с процедурами, подпроцедурами, с бешенным количеством параметров, и эти параметры зачастую %rowtype а то и коллекции %rowtype. это, как показывает практика, так себе решение. доходит иногда до смешного, поменял комментарий у поля и пару тысяч invalid объектов в базе. и тут начинается веселье) правда в оракле есть шаред пул) по идее на ПГ должно быть все проще с изменениями в структуре таблиц) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2021, 13:10 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
muller, Тоже имеем подобную архитектуру. При переходе частично код менялся регулярками, создавались функции заглушки от которых потом уже избавлялись (самое распространенная это строковая_переменная is null заменялась регуляркой на isNull(строковая_переменная) ult где дополнительно проверялась на пустую строку для сохранения логики Oracle). %rowtype просто удалялись, коллекции сложных типов пришлось заменить на массивы (с изменением кода, частично регулярками), более сложные случаи заменили на работу с JSONB. Так что даже если безнеслогика заложена в БД, то вполне возможно перенести на ПГ. Ну и потом расширение plpgsql_check просто обязано быть. У ИК есть конвертер, который отрабатывает львиную часть изменений, можете попробовать связаться с ними. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2021, 17:55 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Swa111, Благодарю за советы, если прижмут к реке, то буду использовать. Но чето оптимизма поубавилось... воистину знания умножают скорбь. Ну ... авось вывернусь, не впервОй. ЗЫ. И да, лучше всё станет инвалидным из-за мелочи где-нибудь на тестовом контуре, чем (обычно под новый, особливо високосный год такое бывает) система вывалится с неопознанным эксепшеном на проде. Никому такого в Новом году! ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2021, 18:33 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
muller Swa111, Благодарю за советы, если прижмут к реке, то буду использовать. Но чето оптимизма поубавилось... воистину знания умножают скорбь. Ну ... авось вывернусь, не впервОй. ЗЫ. И да, лучше всё станет инвалидным из-за мелочи где-нибудь на тестовом контуре, чем (обычно под новый, особливо високосный год такое бывает ) система вывалится с неопознанным эксепшеном на проде. Никому такого в Новом году! а какой это у нас вдруг вискокосный год? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2021, 19:04 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Ролг Хупин, у нас 2024 ближайший вроде как, а у Вас? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2021, 22:53 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
muller ... если прижмут к реке, то буду использовать. Но чето оптимизма поубавилось... ... Какие ужасы вы пишите. Аж кровь стынет. Вот эти те, которые заставляют вас лоб морщить над такими вопросами, что они вообще себе, и о себе тоже, думают? Где, интересно, они насмотрелись работы с биржей на Postgress. И даже, если на самом деле где-то насмотрелись, понимают ли, что платить за такой Postgress все равно придется вполне полновесно. Поверить не могу, что о такой безнадеге вас заставляют думать существующие клиенты. А про будущих хорошо знать вот что: статистически они не всегда отчетливо и детально понимают, чего точно хотят. Слишком много глубоких мыслей в их хотелках намазано. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.01.2022, 15:08 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
booby, когда я был маленький, то огорчался, что придется менять инструментарий с борландовского на оракловый ... теперь вот так ... жизнь - боль. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2022, 12:47 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
booby, freeware многие используют не потому что дешевле, а потому что появляется уверенность, что заказанная разработка через 3 года не превратится в "тыкву" из - за смены "Концепции" у продавца инструментария. Или из-за того что он банально разорится. просто для сравнения какая может быть поддержка: поддержка PG Чтобы получить такую у oracle нужно быть американской компанией из top10 Про политическую составляющую я даже не заикаюсь. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2022, 13:44 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
muller ... когда я был маленький, то огорчался... Смена платформы всегда в той или иной степени болезненна. Истории про "когда я был маленький" могут оправдываться тем, что при всяком былом переходе система в целом, как бы ни был болезнен переход, всегда получала в техническом отношении такое новое качество, про которое можно было сказать - вот ради этого стоило затевать всю эту затею. Одно дело, когда речь идет о том, что нам надо обрабатывать больше данных за то же время. Другое дело, когда кто-то думает, что клиенту система вот на такой-то платформе будет дешевле обходиться. Ладно, прошу прощения за реплику. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2022, 22:29 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Vadim Lejnin, среди наших клиентов есть минимум один, который не может купить себе свежий оракл, и минимум один не может официально докупить себе виндус -лицензий для рабочих станций, потому что оба-два под санкциями с разными предлогами. Приходится задумываться. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2022, 23:20 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
booby muller ... когда я был маленький, то огорчался... Смена платформы всегда в той или иной степени болезненна. Истории про "когда я был маленький" могут оправдываться тем, что при всяком былом переходе система в целом, как бы ни был болезнен переход, всегда получала в техническом отношении такое новое качество, про которое можно было сказать - вот ради этого стоило затевать всю эту затею. Одно дело, когда речь идет о том, что нам надо обрабатывать больше данных за то же время. Другое дело, когда кто-то думает, что клиенту система вот на такой-то платформе будет дешевле обходиться. Ладно, прошу прощения за реплику. Таки для многих проектов цена оракловой лицензии автоматически запретительная. Да и крупному бизу тоже полезно расходы на лицензии считать (деньги не казённые таки). А тут бесплатный Pg - вне конкуренции (особенно на средних-мелких проектах). -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 01:11 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Максим, я вполне с уважением отношусь к Postgress. Дело вовсе не в том - лучше Postgress, дороже ли Oracle или как лежали санкции.. В проектах начиная даже со средней сложности просто "заменить хранилище" уже не так просто. И чем больше сотен человеко-лет в проект вложено, тем болезненней для всех становится история. По ресурсам это может быть сопоставимо с написанием проекта с нуля. Теоретическая польза от этого может быть. Но с учетом того, что часть компетенций оказываются лишними, а другую необходимо компенсировать - хлопать себя восторженно по ляжкам, с разбегу, причин не так уж и много. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 01:27 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
booby Максим, я вполне с уважением отношусь к Postgress. Дело вовсе не в том - лучше Postgress, дороже ли Oracle или как лежали санкции.. В проектах начиная даже со средней сложности просто "заменить хранилище" уже не так просто. И чем больше сотен человеко-лет в проект вложено, тем болезненней для всех становится история. По ресурсам это может быть сопоставимо с написанием проекта с нуля. Теоретическая польза от этого может быть. Но с учетом того, что часть компетенций оказываются лишними, а другую необходимо компенсировать - хлопать себя восторженно по ляжкам, с разбегу, причин не так уж и много. Миграция старых СЛОЖНЫХ проектов с Oracle на Pg экономически действительно малооправдана (если политику убрать из уравнения). А вот запуск новых сразу на Pg с нуля - вполне логичен (и как итог реальных спецов по Pg с рынка вымело, их вообще не так много было и есть на сейчас). -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 01:47 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Maxim Boguk, я например не могу убрать политику из уравнения, тк именно она требует от меня отказа от оракла. В остальном всё всех устраивало, в том числе цена за лицензию. Но вывод Ваш я считаю правильным. Будем думать про новый проект. Нахрен миграцию. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2022, 19:44 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
у меня есть подозрение, что в большинстве проектов где переводят большое приложение на другую платформу, именно политика является определяющим фактором такого решения. Я лично участвовал в 3х таких проектах (foxPro(!!!)=>oracle=>MySQL, Oracle Forms => Java/ADF, Oracle=>Postgres) и все три были мотивированы не объективной необходимостью, а "политикой" включая и политику 'job security', т.е. делать что-нибудь чтобы выглядеть занятыми и сохранять зарплаты и большой штат(чем больше размер IT группы, тем больше зарплата у менеджера) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 03:27 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23 у меня есть подозрение, что в большинстве проектов где переводят большое приложение на другую платформу, именно политика является определяющим фактором такого решения. Я лично участвовал в 3х таких проектах (foxPro(!!!)=>oracle=>MySQL, Oracle Forms => Java/ADF, Oracle=>Postgres) и все три были мотивированы не объективной необходимостью, а "политикой" включая и политику 'job security', т.е. делать что-нибудь чтобы выглядеть занятыми и сохранять зарплаты и большой штат(чем больше размер IT группы, тем больше зарплата у менеджера) К сожалению, если остаться на старье, то всего через 15 лет не найдешь концов, управление проектом будет потеряно Сам принимал участие в проектах миграции,когда разработчиков уже давно нет, документация утрачена военно морским способом, даже дистрибутивов в доступе не наблюдается. В частности, sql*forms 3.0 не смогли получтить даже от Oracle. Дистрибутив hp-ux древней версии и формы нашлись в пыли в подвале. DAT ленты прочитать смогли только на старичке HP, который тоже пылился в подвале. Из-за отсутствия исходников, нужно было точно выдержать исходную версию forms, но на эту версию требовался rowid патч, поэтому нужны были исходные дистрибутивы... После плясок с бубнами, смогли поднять копию системы на Oracle 9i после миграции Oracle 7.3.4 Только после этого, смогли начать проект по миграции, последовательно перенося отдельные подсистемы на новые решения. Система начала 90-х, мигрировалась в 2004 году Другой пример, миграция postgres 9.3 + postgis2.1.1 - postgres11+postgis-2.5.1 всего-то 5 лет после пуска. но там была astra с ограничениям ее дистрибутивов, пока нащупал путь, чтобы на наступить на баги, проклял все. p.s. в unix конфе sql.ru сейчас страдает бедалага с SunFire490, у которого вылетел диск. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 12:46 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Vadim Lejnin, вы для собственного удобства рассуждаете не о миграции как таковой, а об _upgrade_. Для вас замечу, что нынешняя версия Oracle ERP 12c работает на Forms 10(на самом деле 9i) (выпущеных, напомню, 17(!!) лет назад. И не жужжит, и будет их использовать еще лет 5-10. Я не сомневаюсь что есть случаи апгрейда на новые версии чего угодно, и наверное встречаются случаи обоснованой миграции на другую платформу. Это никак не влияет на мои наблюдения о ведущей роли принципа job security во многих коммерческих больших фирмах. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2022, 05:17 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
most23, Нынешняя версия Oracle eBS 12 работает как на Oracle Forms 10 через java-аплеты в интернет-браузерах, где такая поддержка сохранилась, либо через Java WebStart, так и на специфичном для OEBS но тоже устаревшем java-фреймворке OAF, генерирующие HTML-интерфейс, и с каждой новой минорной версией OEBS применение OAF расширяется, хотя OEBS 12 - это последняя версия, после которой ничего не будет. Также есть интеграция с современным Oracle Apex, генерируюшим Web-интерыейс. Но Forms и OAF - то всего лишь интерфейс просмотра и ввода данных, бизнес-логика и обработка транзакций написаны на PL/SQL, что более важно, и в некоторых модулях их можно использовать из других сред разработки, например, как выше упоминалось, APEX. А вот для поддержки функционала OEBS на Forms хотя бы ещё на 5 лет, заказчикам придется сидеть на старых версиях Windows и Java (с поддержкой аплетов) либо требовать от Oracle полностью HTML- интерфейс, чего не будет конечно же, так как этот интерфейс у нового поколения облачной Oracle ERP, куда заманивают заказчиков, но не слишком успешно. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2022, 21:35 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Спасибо, капитан. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2022, 22:32 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Павел Лузанов Guzya пропущено... Будет ли в бумаге? Как бы подписаться, чтоб не пропустить? В бумаге будет. За деньги. На сайте pdf - бесплатно. Как подписаться не знаю. Но январь, максимум февраль. Так что ждать недолго. Опубликовано:
... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2022, 15:47 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Павел Лузанов, спасибо! Уже заказал. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2022, 16:08 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Павел Лузанов, спасибо. судя по оглавлению, этот цикл статей выходил на хабре. сильно отличается? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2022, 07:38 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
РядомСтоял судя по оглавлению, этот цикл статей выходил на хабре. сильно отличается? Статьи с хабра взяты за основу. Тем не менее, работа над книгой заняла год. Пользуясь случаем приглашаю на pgconf.ru (28.02-01.03). У Егора есть идея сделать доклад о процессе создания книги. Так что всё можно будет узнать у автора. Не получится поучаствовать - доклады обычно публикуются на сайте конференции для всех желающих, через какое-то время. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2022, 14:55 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Maxim Boguk booby Максим, я вполне с уважением отношусь к Postgress. Дело вовсе не в том - лучше Postgress, дороже ли Oracle или как лежали санкции.. В проектах начиная даже со средней сложности просто "заменить хранилище" уже не так просто. И чем больше сотен человеко-лет в проект вложено, тем болезненней для всех становится история. По ресурсам это может быть сопоставимо с написанием проекта с нуля. Теоретическая польза от этого может быть. Но с учетом того, что часть компетенций оказываются лишними, а другую необходимо компенсировать - хлопать себя восторженно по ляжкам, с разбегу, причин не так уж и много. Миграция старых СЛОЖНЫХ проектов с Oracle на Pg экономически действительно малооправдана (если политику убрать из уравнения). А вот запуск новых сразу на Pg с нуля - вполне логичен (и как итог реальных спецов по Pg с рынка вымело, их вообще не так много было и есть на сейчас). -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru Oracle побыстрее PG будет... При наличии Сеньоров в программировании логики. Но PG при этом "Бесплатный, модный, молодёжный", и импортозамещательный. По производительности именно реляционок, я бы ему поставил третье место после Оракла, и M$$QL ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2022, 20:21 |
|
Переход с Oracle на Postgress
|
|||
---|---|---|---|
#18+
Makar4ik Oracle побыстрее PG будет... По производительности именно реляционок, я бы ему поставил третье место после Оракла, и M$$QL с моей точки зрения, именно соображения про побыстрее вообще значения не имеют. Третий к двум первым, по некоторым существенным основаниям может пристегиваться, но они не в самую первую очередь к "побыстрее" отношение имеют. Среди версионников никто вменяемо и неоспоримо Oracle не обогнал толком до сих пор. Так уже давно случилось , лет уже больше, чем двадцать пять как назад, то есть - в районе трех-четырех поколений смены архитектуры железа и представлений, как правильно писать ПО, что рассказывать об Oracle в стиле "побыстрее будет" среди версионников - это произносить скучные и не интересные банальности. И до сих пор, среди классических версионников, ориентированных на OLTP с полной поддержкой ACID, никто его толком не обогнал, не взирая ни на что, даже на образование, модные методы поддержки concurrency, и суперсовременные (спасибо бабушке Лисков за идеи) методы организации и поддержки коммита в распределенной системе. От того, что оракл побыстрее, "ванильный" Postgress не становится менее интересным. И, как оказывается в истории (Hekaton), у MS SQL Postgress тоже может найти, чему с пользой поучиться. У Postgress весьма приличная как университетская (академическая), так и среди промышленных заинтерессантов поддержка. В целом он более-менее уверенно сохраняет позиции на переднем крае исследований и пониманий того, кто такая СУБД вообще, и с какой стороны ее есть. В комбинации с его открытостью в части кода, это хорошая основа, при определенной склонности к неспешному обдумыванию наблюдённого, как для самообразования в области субд-строительства, так и место, глядя в которое, при желании можно увидеть вполне пристойные реализации вполне пристойных идей. Мне кажется главная его ценность именно в этом. А уж кто там, зачем и почему собрался на него с Oracle мигрировать, ровно на столько же не имеет значения, насколько Oracle быстрее Postgress. Имхо. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2022, 01:01 |
|
|
start [/forum/topic.php?all=1&fid=53&tid=1993674]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
26ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
99ms |
get tp. blocked users: |
1ms |
others: | 11ms |
total: | 185ms |
0 / 0 |