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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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


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

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


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


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

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

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


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

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

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

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


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