|
|
|||||||||||||||||||||||||||||
|
Курс "Миграция базы данных Oracle в PostgreSQL для администраторов и разработчиков"Код: EDU-PSQL-05
Продолжительность - 5 дней
Задача курса «Миграция базы данных Oracle в PostgreSQL для администраторов и разработчиков» показать архитектурные особенности сервера PostgreSQL версии 15.2 и выше, его тонкую настройку с точки зрения сервера Oracle, отличие механизма хранения данных в Oracle от PostgreSQL, правила прозрачного переноса хранимых программных модулей из Oracle в PostgreSQL, разница между языком Postgres PLPGSQL и Oracle SQL. Также на примерах будет рассмотрен механизм взаимодействия базы данных PostgreSQL с базой данных Oracle с использованием встроенного языка программирования Python. Аудитория: Профессиональные администраторы и разработчики Oracle, переводящие свои данные, приложения, конфигурации сервера Oracle в современную базу данных PostgreSQL. Необходимая подготовка: основы операционной системы Linux, желательно знание базовой архитектуры сервера Oracle, основы языков программирования - Oracle PL/SQL, языка запросов SQL, Python, Java. Цель: по окончанию курса слушатели смогут ориентироваться в вопросе миграции структур данных, данных, программных модулей, конфигураций сервера базы данных 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. Тригеры объектные и системные. 17. Расширения для PostgreSQL. Использование Hints в PostgreSQL. Аналогии с базой данных Oracle. Управление планом выполнения запросов через через подсказки и сревнение с параметрами сессии. Заморозка планов выполнения запросов в PostgreSQL. В конце обучения на курсе проводится итоговая аттестация в виде теста или на основании оценок за практические работы, выполненных в процессе обучения. В современном мире сложно обойтись без информационных технологий и их производных - компьютеров, мобильных телефонов, интернета и т.д., особенно в крупных компаниях и государственных организациях, работающих с большим количеством людей, а не только с парой VIP-клиентов, как это может быть в случае небольшой компании. А там, где есть большое количество контрагентов, заявителей и т.д. - не обойтись без баз данных, необходимых для обработки информации. Естественно, что времена гроссбухов и карточек, памятных многим по библиотекам, давно прошли, сегодня используются персональные компьютеры и электронные базы данных. Сегодня невозможно представить работу крупнейших компаний, банков или государственных организаций без использования баз данных и средств Business Intelligence. Базы данных позволяют нам хранить и получать доступ к большим объемам информации, а система управления базами данных (СУБД) — осуществлять менеджмент доступных хранилищ информации. В Учебном центре « Интерфейс» Вы научитесь эффективно использовать системы управления базами данных: быстро находить нужную информацию, ориентироваться в схеме базы данных, создавать запросы, осуществлять разработку и создание баз данных. Обучение позволит Вам не только получить знания и навыки, но и подтвердить их, сдав соответствующие экзамены на статус сертифицированного специалиста . Опытные специалисты по СУБД Microsoft SQL Server или Oracle могут быть заинтересованы в изучении систем бизнес-аналитики. Это задачи достаточно сложные, использующие громоздкий математический аппарат, но они позволяют не только анализировать происходящие процессы, но и делать прогнозы на будущее, что востребовано крупными компаниями. Именно поэтому специалисты по бизнес-аналитике востребованы на рынке, а уровень оплаты их труда весьма и весьма достойный, хотя и квалифицированным специалистам по базам данных, администраторам и разработчикам, жаловаться на низкий уровень дохода тоже не приходится. Приходите к нам на курсы и получайте востребованную и высокооплачиваемую профессию. Мы ждем Вас! В конце обучения на курсах проводится итоговая аттестация в виде теста или путём выставления оценки преподавателем за весь курс обучения на Учебный центр "Интерфейс" оказывает консалтинговые услуги по построению моделей бизнес-процессов, проектированию информационных систем, разработке структуры баз данных и т.д.
|
|