Upgrade to Pro — share decks privately, control downloads, hide ads and more …

СУБД Oracle [TechWeek #1 Development Day]

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on. →

СУБД Oracle [TechWeek #1 Development Day]

Presentation by Vasily Koncevoy at TeamsPark TechWeek.

Avatar for TeamsPark

TeamsPark

March 25, 2015

More Decks by TeamsPark

Other Decks in Technology

Transcript

  1. Oracle Universal Server Oracle Universal Server • Реляционная СУБД (OLTP

    Online Transaction Processing + DSS Decision Support System) • Универсальная БД (текст, видео, аудио, гео, изображения, временные ряды, документы, Web cтраницы, файлы, XML, семантические сети ….) • Объектно-реляционная СУБД • Интернет платформа • OLAP (многомерная) и DataMining • Платформа для e-business • Платформа для GRID
  2. Oracle занимает почти половину мирового рынка СУБД • Высокая надежность

    • Поддержка 24х-часовой работы • Большое число пользователей (от 1000-ч до 10000-ч ) • размер экземпляра базы данных Oracle до 8 экзабайт (10^18) • Высокая производительность • Надежная система защиты • Различные архитектуры Клиент/сервер, 3х- уровневая, кластер, GRID • Многосерверные архитектуры • Многоплатформенность • Все типы данных • Различные приложения (OLTP, DSS, DW, OLAP, Mining) • Управляемость (EM)
  3. Сетевые протоколы • TCP/IP • LU6.2 • SPX/IPX • OSI

    • DECnet • Другие Независимость от платформ Оконные менеджеры • MS Windows • X Motif • Macintosh • Character Mode • Block Mode • Другие Оборудование • Compaq • Sun • HP • IBM • Mac • Другие • NCR • Pyramid • Sequent • Sun • Intel Операционные системы • OS/390 • TRU64 • Solaris • AIX • HP Unix • NT • Linux • Другие
  4. Независимость от архитектуры Независимость от архитектуры Один Процессор Симметричная многопроцес-

    сорная архи- тектура (SMP) Слабо сцепленные процессоры (кластер) Массивно параллельный компьютер (MPP) Можно использовать любые вычислительные архитектуры.
  5. Различные типы приложений • OLTP • DSS • DW •

    OLAP • Mining • Облачные решения
  6. Пользовательский процесс Серверный процесс PGA База данных и instance База

    данных и instance Экземпляр SGA Разделяемый пул DBWR LGWR База данных Управляющие файлы Файлы данных Файлы журнала Файл паролей Архив журнальных файлов Файл параметров
  7. Файлы операционной системы Существуют следующие основные группы файлов на диске,

    составляющие базу данных: 1. Файлы базы данных - *dbf 2. Управляющие файлы - control file 3. Журнальные файлы - redo & arch 4. Файл настроек oracle - init.ora 5. Файл паролей - orapw
  8. Серверные процессы • Сейчас процессов больше • Типовые процессы ora_ckpt_SMAP

    - процесс отвечающий за то, чтобы все изменения данных в памяти были записаны на диск; ora_pmon_SMAP - обеспечивает наблюдение за пользовательскими процессами и высвобождение ресурсов по их завершении; ora_smon_SMAP - обеспечивает дефрагментацию места в БД; ora_reco_SMAP - отвечает за распределенные транзакции; ora_dbw0_SMAP - отвечает за сохранение измененных данных на диск; ora_lgwr_SMAP - отвечает за запись в redo log файлы. ora_arc_SMAP - отвечает за архивирование redo log файлов Процесс обеспечивающий подключение по сети: LISTENER
  9. Журналирование и Rollback Журналирование и Rollback DB Block Buffers Log

    Buffer System Global Area Rollback Redo Redo Log Files Журналы используются только для восстановления БД (redo) Rollback отделены от Log Транзакции могут использовать > 1 журнала Rollback хранятся в Rollback Segments (Undo Tablespace) Rollback Segments используются для Undo (отката) и Multi-Version Read Consistency DB Log Log User
  10. • В одной БД могут быть tablespaces с разными размерами

    блока • Схема и пользователь • Все объекты в схемах
  11. Объекты и понятия БД Объекты и понятия БД • Таблицы

    (partitions) • Индексы • Индексные таблицы • View • Sequence • Программные единицы (proc, func, pack) • Триггеры • Ограничения • Синонимы • Кластер • Database link • Rollback сегменты • Временные сегменты • Сегменты LOB • Вложенные таблицы • Массивы • Пользовательские типы данных • Материализованные view • Иерархии • Dimension • Пользователи • Привилегии • Роли
  12. Типы данных Oracle Типы данных Oracle CHAR(N), NCHAR(N) VARCHAR2(N), NVARCHAR2(N)

    NUMBER(P,S) DATE RAW(N) BLOB, CLOB, NCLOB, BFILE LONG, LONG RAW ROWID VARRAY TABLE REF Тип данных Встроенный Пользовательский Скалярный Ссылки Коллекция
  13. Массивы и Встроенные таблицы • Массивы • Массивы с переменной

    длиной: VARRAY • Обеспечивают упорядоченные 1-to-many отношения • Набор скалярных величин или ADT • Доступны через PL/SQL • Встроенные таблицы (Nested Tables) • Обеспечивают неупорядоченные 1-to-many отношения • Набор скалярных величин или ADT • Доступ через SQL DML
  14. Типы данных для хранения больших объектов Типы данных для хранения

    больших объектов LONG, LONG RAW Один столбец в таблице До 2 гигабайтов SELECT возвращает данные Внутреннее хранение данных Нет поддержки объектов Последовательный доступ LOB Несколько столбцов в таблице До 4 гигабайтов SELECT возвращает указатель Внутреннее или внешнее хранение данных Поддержка объектных типов Произвольный доступ
  15. Индексы Индексы • Индексные таблицы • Пользовательские индексы (R*Tree) •

    Перестройка индекса на лету • Индекс от функции
  16. Программируемость Программируемость Ship Check Status Cancel Хранимые процедуры Пакеты Функции

    Полномасштабный язык Return Cursor Exception Handlers SQL3 Syntax Persistent Variables Overloading Encapsulation Dependency Tracking Wrappers Server Side File I/O Application Partitioning PL/SQL и Java
  17. Пример процедуры на PL/SQL begin for i in 1 ..

    10 loop insert into t values ( i ); if ( mod(i, 100) = 0) then commit; end if; end loop; end; /