powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Переход с Oracle на Postgress
25 сообщений из 65, страница 1 из 3
Переход с Oracle на Postgress
    #40112224
most23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Долго занимался только Oracle - бэкенд, формсы, репорты.
Вот сейчас возникает возможность перейти на проект, который мигрирует существующее приложение на Oracle в Postgres. Работа предполагается только с серверной частью, фронтендом заниматься не придется. Обязанности DBA тоже выполнять не требуется.
C оракловскими делами, SQL/PLSQL у меня никаких сложностей нету, знаю довольно хорошо.
Новую датабазу готов учить, ничего плохого про Postgres я не слышал.
Кто проходил через подобный процесс, что скажете, каким опытом поделитесь, на что обратить внимание, какие ожидать сложности?
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112234
Misha111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
most23,

по этому вопросу много и-и.
если много серверных процедур - используйте ора2пг для упрощения конвертации кода.
сложность зависит от того сколько фич вы используете на оракле.
у меня основные вопросы были связаны с:
- автономные тр-ии
- джобы (шедулер)
- иерархические запросы
- очереди
- мат вьюхи с фастрефрешем

если проект использует оракл чисто как таблицехранилище, то проблем практически не будет.
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112250
Надфиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Еще есть интересные "мелочи"
1. NULL и '' в ПГ не одно и тоже.
2. Очень надоедает необходимость четко указывать тип (и следить при сравнениях, да и просто при джойнах). само оно и пытаться не будет приравнять 1 к '1', например. в лучшем случае оно скажет об ошибке приведения, в худшем не будет, например, использовать индекс, там, где у ораклиста и вопросов не возникнет)

и таких мелочей там не мало.
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112301
artel.dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Немного офтоп, переписывал ETL с R-project на PL/SQL.

Долго исправлял код, где используется тип Timestamp with time zone.

Оказалось, что если тестовый сервер в РФ, а прод в США - результаты сильно разные.

При сортировке значение NULL сортируется не так как в R-project: у кого-то оказывается в начале, а у кого-то в конце списка.

Пришлось принудительно проставлять NULLS FIRST или NULLS LAST.
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112320
delphinotes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У нас в проекте _слишком_ много pl/sql-кода (легаси почти с 2000 года).
Начитавшись о всяких подводных камнях решили не "переводить", а "выстроить" новый проект, и попутно избавиться от костылей и всякого.

По оракловым фичам:
- от автономных транзакций удалось отказаться без потерь (внушив себе, что автономки сами по себе - костыль.. хотя, конечно, с ними удобнее)
- временные таблицы в PG - их лучше не использовать, лучше создавать unlogged таблицы и эмулировать доступность данных в них по аналогии с временными в оракле
- вместо пакетов использовать схемы
- вместо глобальных переменных - таблицы и контекстные переменные
- джобы заменяются pgagent'ом
- utl_xx, dbms_xx - внешними сервисами
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112420
most23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я с ораклом привык к Toad, уютно как в лаптях. А какой тул используется в Postgres для работы?
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112423
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
most23
я с ораклом привык к Toad, уютно как в лаптях. А какой тул используется в Postgres для работы?


А что такое работа? Если DBA - то только psql command line
если разработка то там много всего понаделали... одно кривее другого.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112424
most23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguk,
выше по контексту вы могли бы понять, что речь идет о работе девелопера.
Вы, видимо, сами не девелопер и не в базах данных. Я полагал, что любой ораклист знает что такое Toad и как он незаменим в ежедневной рутине. Запросы, написание pl/sql кода, анализ схем, вообще все что пожет понадобиться разработчику, в одном пакете, удобно, быстро и надёжно. Хотя и дорого, у Toad цена лицензии существенная. Но я всегда считал если фирма не может обеспечить разработчикам каждому по копии Toad, то и нечего иметь дело с нищебродами.
Я совершенно уверен что существует "куча всего кривого", спасибо, капитан, поэтому я и задал простой (для тех кто в теме) вопрос - в postgres существует аналог Toad? Универсальный, общепринятый, мощный и удобный?
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112428
delphinotes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
most23,

похоже что нет. Я долго искал, много чего перепробовал, всё оно к разработке подходит с какого-то другого боку.

Тем не менее, я остановился на двух утилитах.
1. Это dbeaver, у него есть бесплатная редакция. Такой, вполне себе простенький тул, чем-то мне напомнил SQLTools для ораклы.

2. datagrip, там есть студенческие лицензии, либо для индивидуального девелопера не так уж и дорого, при этом у него куча настроек (вполне под себя можно настроить) и куча плюшек, типа прозрачной интеграции с GIT, интуитивное ведение проекта (когда проект - это каталог в файловой системе, и дальше все файлы и подкаталоги видны) и много всякого именно для разработки (закладки, избранное, TODO..).
В ПГ нет пакетов как в оракле, но можно функции объединять в схемы, и в этом случае все функции схемы я сохраняю в единый файл (а не каждую функцию в отдельный файл) - датагрип умеет в отдельной панели отображать структуру файла (с сортировкой по именам) для быстрой навигации.. вполне юзабельно.
Но надо быть готовым к тому, что придётся потратить время на настройку. По началу датагрип тормозной (постоянно парсит исходники, у него куча помощников надоедливых), он кэширует метаданные (что мешает при параллельной разработке и приходится этот кэш сбрасывать), автоматически сохраняет _все_ файлы не спрашивая...
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112431
delphinotes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, ещё такие "беды" в ПГ есть (я относительно 12й версии ПГ пишу, с другими не работал).

1. ПГ не умеет строить зависимости по процедурам. Зависимости видны только по форейн-ключам таблиц, по вьюхам и триггерам.

2. Процедурный код при "компиляции" проверяется только на синтаксис. Т.е. оно даже не компилируется... хотя утверждать не буду, возможно какое-то дерево исполнения строится заранее (а может и на лету).
Ошибки (ну например банальная опечатка в коде) будут при исполнении, причём только если исполнение дошло до этой строки (ну if-then-else блоки).
Поэтому каждую функцию надо тестировать. Ну и датагрип тут помогает, он опечатки подсвечивает (да, рефакторинг в нём достаточно удобный).

3. Для вьюх зависимости ПГ строит, но они больше мешают, чем помогают. Например, если поверх таблицы есть вью, то изменить тип поля в столбце (или переименовать столбец, что нормально именно на стадии черновой разработки) уже становится проблемой - все зависимые представления надо будет удалять, а потом создавать заново. Поэтому надо сразу отделять таблицы от всего остального, а всё остальное хранить отдельно и в репозитории.

Вообще следуют сразу строго настрого запретить разработчикам менять код непосредственно в БД, т.е. мы делаем так:
- сначала создаётся файл (со вьюхой, или группой вьюх, или процедурами)
- файл накатывается на БД для разработки (я забил на общую БД, развернул у себя на локальном компе, это тупо быстрее), тестируется и т.п.
- файл комитится в GIT
- из GIT'а (пока ещё не сделали, но будет, что-то типа git-flow или пайплайны) оно автоматически накатывается на отдельный инстанс и там тестируется
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112436
most23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
delphinotes,
спасибо за толковый и дружелюбный ответ.
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112448
Надфиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
most23
я с ораклом привык к Toad, уютно как в лаптях. А какой тул используется в Postgres для работы?

тоад божественен, это, кажется, единственная тулза из нормальных где хорошо сделаны параметры для запросов.
есть тоад для ПГ, но он откровенно убог.

последнее время datagrip используем, после рассмотрения 10ка альтернатив, даже купили лицензии.он прожорлив но в принципе норм.
и в нем нет пока дебага для ПГ. с этим вообще беда в ПГ.
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112550
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надфиль

и в нем нет пока дебага для ПГ. с этим вообще беда в ПГ.


Ну дык правильно. PL/pgSQL это по факту "левая приблуда" для PostgreSQL, наравне с каким-нибудь PL/PHP.
Родные ХП для PG это просто SQL-запросы с параметрами.
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112710
most23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну что, подписал оффер.
Открыл Postgres Tutorial.
После четырёх месяцев еботни с дебильным Jdeveloper ADF, ощущение что пересел с кокпита Boing 777 на велосипед. Трёхколесный.
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40112961
Фотография _avz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EMS Manager меня всем устраивает.
И параметры для запросов с историей
и дебаггер
импорт - экспорт почти из всего и во всё
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40114266
olegeos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
most23,
Слово не прозвучало про pgadmin, не тоад конечно Но что-то в нем делать можно. Постепенно его развивают.
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40115676
alex722
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
most23,

Ты это, тему не забрасывай, изучай, спрашивай, доки, тулзы и тд
В следующем году тоже с оракла начнём съезжать на постгри просто ;)
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40115702
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_avz
EMS Manager меня всем устраивает.
И параметры для запросов с историей
и дебаггер
импорт - экспорт почти из всего и во всё


он не бесплатный
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40120121
most23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ, а что насчет книг, порекомендуйте?
Я знаю что ничего подобного по качеству как книги Кайта или Фернстейна по PG не существует,
но все же тыщщи их, чтобы не копаться, поделитесь какие вам особенно понравились?
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40120155
К.К2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
most23
Долго занимался только Oracle - бэкенд, формсы, репорты.
Вот сейчас возникает возможность перейти на проект, который мигрирует существующее приложение на Oracle в Postgres. Работа предполагается только с серверной частью, фронтендом заниматься не придется. Обязанности DBA тоже выполнять не требуется.
C оракловскими делами, SQL/PLSQL у меня никаких сложностей нету, знаю довольно хорошо.
Новую датабазу готов учить, ничего плохого про Postgres я не слышал.
Кто проходил через подобный процесс, что скажете, каким опытом поделитесь, на что обратить внимание, какие ожидать сложности?


А почему оракал не продолжаете использовать?

Просто оставайтесь на нем, в чем проблема?
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40120156
Misha111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
most23,

начинал с "Салахалдин Джуба, Андрей Волков - Изучаем PostgreSQL".
потом дока.
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40120263
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
most23
Народ, а что насчет книг, порекомендуйте?
Я знаю что ничего подобного по качеству как книги Кайта или Фернстейна по PG не существует,
но все же тыщщи их, чтобы не копаться, поделитесь какие вам особенно понравились?


https://tapoueh.org/about/
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40120278
Павел Лузанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
most23
Народ, а что насчет книг, порекомендуйте?
Я знаю что ничего подобного по качеству как книги Кайта или Фернстейна по PG не существует,
но все же тыщщи их, чтобы не копаться, поделитесь какие вам особенно понравились?

Оптимизация запросов PostgreSQL, Домбровская Г., Новиков Б., Бейликова А.
Основы технологий баз данных, Новиков Б.
PostgreSQL изнутри, Рогов Е. (будет доступна где-то в течение месяца здесь )

Как читавший книги упомянутых оракловых авторов могу уверенно сказать, что вот эти постгресовые ни в чем не уступают. Разумеется imho.
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40120458
most23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хм...а что нибудь переводное или на английском?
Я не знаю _ни одной_ толковой книги по программированию русскоязычных авторов
(ну, кроме Фигурнова:) (и Фараонова:)
...
Рейтинг: 0 / 0
Переход с Oracle на Postgress
    #40120532
Павел Лузанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
most23
Хм...а что нибудь переводное или на английском?
Я не знаю _ни одной_ толковой книги по программированию русскоязычных авторов
(ну, кроме Фигурнова:) (и Фараонова:)

Прекрасная возможность познакомиться ))
Первая книга в оригинале на английском.
...
Рейтинг: 0 / 0
25 сообщений из 65, страница 1 из 3
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Переход с Oracle на Postgress
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]