Курс Миграция базы данных Oracle в Postgresql для администраторов и разработчиков
Ваша корзина пуста
Сумма: 0 руб.

Миграция базы данных Oracle в Postgresql для администраторов и разработчиков

О курсе

Миграция базы данных Oracle в Postgresql для администраторов и разработчиков

  • Номер курса: MDBOPSQL
  • Вендор:

Курс Миграция базы данных Oracle в PostgreSQL

 

Авторский пятидневный курс под руководством инструктора на примерах рассматривает механизм взаимодействия базы данных Postgresql с базой данных Oracle с использованием встроенного языка программирования Python. Изучаются архитектурные особенности сервера Postgresql версии 15.2 и выше

 

Цель курса

показать архитектурные особенности сервера Postgresql версии 15.2 и выше, его тонкую настройку с точки зрения сервера Oracle. Показать отличие механизма хранения данных в Oracle от Postgresql. Изучить правила прозрачного переноса хранимых программных модулей из Oracle в Postgresql. Понять разницу между языком Postgres PLPGSQL и Oracle SQL.

 

Аудитория

• Профессиональные администраторы и разработчики Oracle, переводящие свои данные, приложения, конфигурации сервера Oracle в современную базу данных -Postgresql

 

Предварительная подготовка

• знание основ операционной системы Linux

• желательно знание базовой архитектуры сервера Oracle

• знание основы языков программирования - Oracle PL/SQL

• знание языка запросов SQL, Python, Java

 

После окончания курса выпускники будут

• ориентироваться в вопросе миграции структур данных, данных, программных модулей, конфигураций сервера базы данных Oracle в Postgresql.

• знать правила прозрачного переноса хранимых программных модулей из Oracle в Postgresql

• уметь осуществлять перенос данных и создание программных единиц в Postgresql, подобных тем, что были в базе данных Oracle.

Расписание и цены
Этот курс набирает желающих участников. Отправьте заявку на участие, а когда наберётся достаточное количество, мы с вами свяжемся.
Заказать обучение
Программа курса

Модуль 1

Postgresql и Oracle – интегрированные базы данных.

• Логическая и физическая компоновка баз данных.

• Процессы управления.

• Архитектура табличных пространств.

• Оптимальное использование памяти сервером.

• Основные конфигурационные файлы Postgresql, настройка логирования.

• Общая и рабочая области памяти, серверные процессы.

• Калькулятор настройки производительности сервера Postgresql.

 

Модуль 2

• Утилиты разработчика и администратора для взаимодействия с базой данных Postgresql (psql, pgcli, dbevar, pgadmin)

• Сравнение с популярными в прошлом утилитами: sqlplus, SQLDeveloper, PLSQL Developer, Oracle EnterpriseManager.

 

Модуль 3

• Типы данных данных Postgresql (обзор).

• Рациональное использование табличных пространств для размещения больших объектов.

• Слои хранения данных в табличных пространствах.  

TOAST файлы.

• Использование объектных и агрегатных типов для хранения данных.

• Порядок доступа к объектам базы данных, их размер, страничное хранение.

• Стандартные схемы и каталоги - введение в архитектуру словаря метаданных Postgresql - отличие от словаря Oracle.

• Два каталога словаря метаданных Postgresql.

• Разница между ролями Postgresql и пользователями, и ролями Oracle.

 

Модуль 4

• Расширения базы данных Postgresql для организации наблюдения за распределением памяти и процессом подготовки SQL запросов, страницы в разделяемой памяти,

• подключение дополнительных механизмов логирования приложений (подобные механизмы в Oracle были доступны через представления словаря метаданных)  

 

Модуль 5

• SELECT

• Использование подзапросов во фразе From

• Подзапросы

• Коррелированные подзапросы

• Древовидные структуры

• Конструкции во фразе SELECT. (rollup, cube, case)

• Аналитические функции в запросах. Вложенные таблицы в виде агрегатных типов данных

• Работа со структурами записей, создание сложных типов данных - в сравнении Oracle и Postgresql

• Массивы и особенности их хранения в TOAST файлах

• Особенности хранения больших данных в Postgresql

 

Модуль 6

• Язык манипулирования данными DML

• Команды копирования данных - вместо INSERT

• Загрузка и выгрузка данных - по аналогии с утилитами импорта и экспорта в Oracle.

• Доступ из базы данных Postgresql к внешним данным, по аналогии с внешними таблицами в Oracle

 

Модуль 7

• Оптимизация SQL запросов: Настройка производительности приложения.

• Разделяемый пул и рабочая область. Оптимизатор. Команда Analyze.  

• Организация и планирование сбора статистики по объектам. Вакуум.

• Ранжирование методов доступа.

• Анализ запросов с целью повышения скорости их выполнения.

• Команда Explain и алгоритмы её использования.

• Правила оптимизации запросов и их оценка.

• Практические примеры оптимизации.  Автоматический сбор статистики по таблицам и параметры конфигурации сервера.

• Отсутствие возможности в Postgresql управлением планом запросов с помощью подсказок (Oracle Hints), чем заменить?

 

Модуль 8

• Язык DDL. Создание и изменение таблиц (DDL).

• Команда Create Table. Определение параметров хранения таблиц на физическом уровне.

• Структура записи в Postgresql, отличия.

• Отсутствие привязки к текущему времени (Oracle SCN), отсутствие ретроспективных запросов.

• Введение в WAL журналирование.

• Основные параметры WAL и VACUUM, контрольные точки и производительность, сравнение с параметром Oracle - fast_start_mttr_target 

 

Модуль 9

• Транзакции

• Конкуренция параллельность и согласованность

• Транзакции и взаимовлияние

• Наблюдение за активными запросами и сессиями в Postgresql

 

Модуль 10

• Создание временных транзакционных и сессионных таблиц

• Использование временных таблиц (Postgresql) для эмуляции работы пакетных переменных (Oracle), использование CTE таблиц в запросах, создание структур данных в памяти, без хранения их на диске в Postgresql

• Разница в использовании временных табличных пространств в Oracle и Postgresql

 

Модуль 11

• Создание таблиц с разбивкой на партиции

Ссылочные партиционные таблицы

• Примеры использования партиционных таблиц с различными типами разбивки

• Индексные таблицы

• Доступ к данным в индексных таблицах, проблемы обновления данных

• Особенности размещения индексных таблиц в физических блоках дисковой памяти

• Отсутствие отдельного функционала в Postgres и способы обхода

 

Модуль 12

• Другие объекты.

• Представления. Материализованные представления данных в Postgresql.

• Принудительное обновление данных. Расширение DBLINK в Postgresql, создание соединений с другими базами данных Postgresql.

• Расширение plpython3u. Создание соединений из Postgres с Oracle c использованием языка Python - перенос данных из Oracle .

 

Модуль 13

• Взаимодействие Python в Postgresql взаимодействовать с любыми серверами: SQL, NoSQL, серверами сообщений, LDAP и прочими - на примерах (Kafka, ActiveMQ).

• Взаимодействие сервера Postgresql с микросервисной архитектурой предприятия на примере Spring или JakartaEE приложения. Использование в Postgresql типа данных JSON.

 

Модуль 14

• Особенности миграции PL/SQL модулей Oracle в Postgresql

• Два языка программирования модулей - sql и plpgsql.

• Отсутствие пакетов в стандартной версии Postgresql, механизм обхода этой проблемы с помощью схем и временных транзакционных таблиц.

• Особенности размещения модулей в базе данных Postgresql - компиляция?

• Обработка исключительных ситуаций. Повторное возбуждение исключений.

• Перехват ошибок.

• Создание логера приложения с возможностью записи сообщений в отдельный файл операционной системы.

 

Модуль 15

• Использование программных модулей в SQL запросах. Транзакционные, волотильные и стабильные модули в сравнении с модулями Oracle, описанными прагмами.

• Модули, вложенные друг в друга, особенности повторной «компиляции» и определения пространства имён переменных в модулях.

• Переменные и курсорные ссылочные переменные - в сравнении.

 

Модуль 16

• Тригеры объектные и системные.
Документы об окончании