Сервер ORACLE (техническая презентация) Марк Ривкин Российское представительство

Скачать презентацию Сервер ORACLE (техническая ) Марк Ривкин Российское представительство Скачать презентацию Сервер ORACLE (техническая ) Марк Ривкин Российское представительство

3338-mar_ser_tech1.ppt

  • Количество слайдов: 63

>Сервер ORACLE  (техническая презентация)         Сервер ORACLE (техническая презентация) Марк Ривкин Российское представительство Oracle

>Программа Cервер Oracle Архитектура сервера Oracle Распределенные БД и репликация Networking и защита данных Программа Cервер Oracle Архитектура сервера Oracle Распределенные БД и репликация Networking и защита данных VLDB, DataWarehouse High Availability Универсальная СУБД Internet/Intranet

>Oracle Universal Server  Объектно-Реляционная Эволюция Реляционная СУБД (OLTP + DSS) Универсальная БД (текст, Oracle Universal Server Объектно-Реляционная Эволюция Реляционная СУБД (OLTP + DSS) Универсальная БД (текст, видео, аудио, гео, изображения, временные ряды, документы, Web cтраницы, файлы ….) Объектно-реляционная СУБД Интернет платформа 9i – OLAP (многомерная) и DataMining Платформа для e-business Oracle Universal Server

>Oracle - > 50 %  рынка СУБД Высокая надежность  Поддержка 24х-часовой работы Oracle - > 50 % рынка СУБД Высокая надежность Поддержка 24х-часовой работы Большое число пользователей (от 1000-ч до 10000-ч ) VLDB 512 pb Высокая производительность Надежная система защиты Тиражирование данных Различные архитектуры Клиент/сервер, NCA, терминалы

>Сетевые протоколы TCP/IP LU6.2 SPX/IPX OSI DECnet Другие Независимость от платформ Оконные менеджеры MS Сетевые протоколы 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 Другие

>Независимость от архитектуры Один Процессор Симметричная многопроцес-сорная архи-тектура (SMP)  Слабо сцепленные  процессоры Независимость от архитектуры Один Процессор Симметричная многопроцес-сорная архи-тектура (SMP) Слабо сцепленные процессоры (кластер) Массивно параллельный компьютер (MPP) Можно использовать любые вычислительные архитектуры.

>Соглашения по стандартам Комитеты ANSI X3H2 X3H2.1 RDA SQL Access Group OMG Стандарты баз Соглашения по стандартам Комитеты ANSI X3H2 X3H2.1 RDA SQL Access Group OMG Стандарты баз данных FIPS 127-2 ANSI X3-135.1992 Стандарты защиты данных Текущее состояние: NCSC TDI C2, B1 ITSEC F-C2/E3, F-B1/E3 Сетевые стандарты OSI DNSIX (MaxSix) Межоперабельность IDAPI, ODBC TSIG X/Open DCE DDE

>Старые  приложения Шлюзы Шлюзы по данным (Informix, Sybase, MS SQL Server,Ingress, ......) Процедурные Старые приложения Шлюзы Шлюзы по данным (Informix, Sybase, MS SQL Server,Ingress, ......) Процедурные шлюзы Клиент Oracle Сервер Oracle Шлюзы по данным Процедур- ные шлюзы APPC DB2 SQL/ DS Нетабличные данные SQL/ 400 DRDA RDB

>Архитектура сервера Oracle Архитектура сервера Oracle

>Пользовательский процесс Серверный процесс PGA База данных и instance Экземпляр SGA Разделяемый пул DBWR Пользовательский процесс Серверный процесс PGA База данных и instance Экземпляр SGA Разделяемый пул DBWR LGWR База данных

>SGA и процессы SVRMGR> CONNECT / AS SYSDBA SVRMGR> STARTUP PFILE=/DISK1/initU15.ora initU15.ora Экземпляр SGA SGA и процессы SVRMGR> CONNECT / AS SYSDBA SVRMGR> STARTUP PFILE=/DISK1/initU15.ora initU15.ora Экземпляр SGA Разделяемый пул Библиотечный кеш Журнальный буфер PMON DBWR SMON LGWR CKPT ARCH Кеш буферов БД Кеш словря данных

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

>Логическая Физическая База данных Табличное пространство Файл данных Блок ОС Блок Oracle Сегмент Экстент Логическая Физическая База данных Табличное пространство Файл данных Блок ОС Блок Oracle Сегмент Экстент Структура базы данных

>Объекты и понятия БД Таблицы (partitions) Индексы Индексные таблицы  View Sequence Программные единицы Объекты и понятия БД Таблицы (partitions) Индексы Индексные таблицы View Sequence Программные единицы (proc, func, pack) Триггеры Ограничения Синонимы Кластер Database link Rollback сегменты Временные сегменты Сегменты LOB Вложенные таблицы Массивы Пользовательские типы данных Материализованные view Иерархии Dimension Пользователи Привилегии Роли

>Типы данных Oracle CHAR(N), NCHAR(N) VARCHAR2(N), NVARCHAR2(N) NUMBER(P,S) DATE RAW(N) BLOB, CLOB, NCLOB, BFILE Типы данных 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 Тип данных Встроенный Пользовательский Скалярный Ссылки Коллекция

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

>Типы данных для хранения больших объектов LONG, LONG RAW Один столбец в таблице До Типы данных для хранения больших объектов LONG, LONG RAW Один столбец в таблице До 2 гигабайтов SELECT возвращает данные Внутреннее хранение данных Нет поддержки объектов Последовательный доступ LOB Несколько столбцов в таблице До 4 гигабайтов SELECT возвращает указатель Внутреннее или внешнее хранение данных Поддержка объектных типов Произвольный доступ

>Garbage In Garbage Out Ограничения целостности Декларативный синтаксис Ссылочная целостность  Каскадное удаление Enable/Disable Garbage In Garbage Out Ограничения целостности Декларативный синтаксис Ссылочная целостность Каскадное удаление Enable/Disable Exception Reporting

>Программируемость Database Triggers Определенные точки срабатывания Enable/Disable Create or Replace Множество триггеров одного типа Программируемость Database Triggers Определенные точки срабатывания Enable/Disable Create or Replace Множество триггеров одного типа Доступ к “:old” & “:new” значениям Хранятся в откомпилированном виде Before Statement Before Row After Row After Statement Implicit Operations

>Новые типы событий Trigger Новые триггеры STARTUP SHUTDOWN SERVERERROR LOGON LOGOFF CREATE ALTER DROP Новые типы событий Trigger Новые триггеры STARTUP SHUTDOWN SERVERERROR LOGON LOGOFF CREATE ALTER DROP Новый уровень триггеров База данных Схема CREATE TRIGGER register_open ON DATABASE STARTUP BEGIN … dbms_aq.enqueue(...); … END;

>Программируемость Ship Check       Status Cancel Хранимые процедуры Пакеты Программируемость Ship Check Status Cancel Хранимые процедуры Пакеты Функции Полномасштабный язык Return Cursor Exception Handlers SQL3 Syntax Persistent Variables Overloading Encapsulation Dependency Tracking Wrappers Server Side File I/O Application Partitioning

>Java VM Почему Java в БД ? Производительность, масштабиру-емость, переносимость, управля-емость, безопасность The Oracle Java VM Почему Java в БД ? Производительность, масштабиру-емость, переносимость, управля-емость, безопасность The Oracle Java VM Масштабируемость: 50 - 150K байт/ сессия vs 3-6M на JDK Быстрее: скомпилированный код выполняется в 40 раз быстрее, чем интерпретируемый код Интегрирован с SQL, PL/SQL Стандартизация 100% Java, JDK 2, standard API Servlet 2.2, JSP 1.1, EJB 1.1, JNDI Shared memory RDBMS libraries Class Loader Native Compiler JDK libraries, APIs Oracle9i Oracle9i : интегрированная виртуальная Java машина

>23 Enterprise Java Engine  Поддержка различных сервисов Java JNDI, JTA, Java 2 Security, 23 Enterprise Java Engine Поддержка различных сервисов Java JNDI, JTA, Java 2 Security, SSL, JMS, RMI/IIOP, Persistence Оптимизация производительности времени выполнения Bytecode Accelerator (компиляция) Web контейнеры Servlet 2.2, Java Server Pages 1.1 Масштабируемый EJB 1.1 контейнер (Entity EJB, XML descriptors) JDBC 2.0 драйверы

>Indexing h(n) = [n /C] mod B     Standard B-Tree Hash Indexing h(n) = [n /C] mod B Standard B-Tree Hash Cluster 101101 Bit Mapped 011011 101100 110001 111101 001011 B-Tree Cluster B-Tree индексы можно строить Online & in Parallel Hashing позволяет доступ к строке по хэш алгоритму Многотабличный кластер позволяет заранее соединить данные Bit Map индехы хороши для запросов к колонкам с низкой кардинальностью Индексы можно перестроить на базе существующих

>Индексы Индексные таблицы Пользовательские индексы (R*Tree) Перестройка индекса на лету Индекс от функции Индексы Индексные таблицы Пользовательские индексы (R*Tree) Перестройка индекса на лету Индекс от функции

>Масштабируемость Масштабируемые серверы Запросы не  блокируют друг друга Блокировка на уровне записи при Масштабируемость Масштабируемые серверы Запросы не блокируют друг друга Блокировка на уровне записи при обновлении Масштабируемая архитектура и производительность Минимизированный ввод/вывод

>Concurrency & Consistency Rollback Segment Multi-version Read Consistency Non-Blocking Reads Row Level блокировки без Concurrency & Consistency Rollback Segment Multi-version Read Consistency Non-Blocking Reads Row Level блокировки без эскалации Не надо жертвовать многопольз работой ради consistency Блокировки - это атрибут данных, а не ресурсов

>Неблокирующее консистентное чтение “Писатели” не блокируют “читателей”  “Читатели” не блокируют “писателей”  Запросы Неблокирующее консистентное чтение “Писатели” не блокируют “читателей” “Читатели” не блокируют “писателей” Запросы всегда дают согласованный результат Начало чтения Кто-то другой изменяет 2 записи Чтение через “снимок” Продолжение чтения

>System Global Area SQL SQL Optimization Shared SQL Cost Based Optimizer Optimizer с гистограммами System Global Area SQL SQL Optimization Shared SQL Cost Based Optimizer Optimizer с гистограммами SQL User Profiles Shared Pool Buffer Cache SQL Ограничение ресурсов (profiles)

>Parallel Query Coordinator C P U C P U C P U C P Parallel Query Coordinator C P U C P U C P U C P U C P U C P U SQL SQL Scan Scan Scan Sort Sort Sort Inter-Operator параллелизм (Сортировка сканируемых строк) Intra-Operator параллелизм (распараллеливание сканирования) Динамический Partitioning (Параллелизм не зависит от размещения данных) Распараллеливание пользовательских функций (PL/SQL in parallel) Optimizer Hints (Администратор имеет контроль) Read Consistency (Обеспечивает согласованный результат) Parallel-Aware Query Optimizer Степень параллелизма меняется для задач/пользоват./времени

>Rules Based Publish/Subscribe Messaging и Advanced Queuing Опубликовать  сообщение Publisher Подписчики Подписка Подписаться Rules Based Publish/Subscribe Messaging и Advanced Queuing Опубликовать сообщение Publisher Подписчики Подписка Подписаться Очередь Выбрать Shipping Content-based публикация и подписка Подписчики регистрируют свой интерес к сообщениям очереди Машина правил определяет соответствующих подписчиков Машина правил Manufact. Invoicing

>Распределенные БД и Репликация Распределенные БД и Репликация

>Почему нужны распределенные БД? Данные естественно распределены DB Объемы Доступ к старым системам Владение Почему нужны распределенные БД? Данные естественно распределены DB Объемы Доступ к старым системам Владение данными DB DB DB DB DB DB DB DB Vs. DB HQ Региональные отделы Новая система Существую- щая система Существую- щая система HR Opera- tions Finance

>Распределенная БД Schema Object Database Scott.Emp@NY Emp Прозрачность размещения Распределенные транзакции Наименование, Networking, Кодирование Распределенная БД Schema Object Database Scott.Emp@NY Emp Прозрачность размещения Распределенные транзакции Наименование, Networking, Кодирование Репликация Protected by 2PC Primary Site - Symmetric

>Почему нужна репликация? Warehouse Публикация Производительность Динамич передача владения  Доступность Local Remote Консолидация/распределение Почему нужна репликация? Warehouse Публикация Производительность Динамич передача владения Доступность Local Remote Консолидация/распределение Сбой Продажа Отгрузка Тех поддержка

>Репликация Синхронная Ассинхронная • Обновление в реальном времени • Обновления на базе Two-Phase Commit Репликация Синхронная Ассинхронная • Обновление в реальном времени • Обновления на базе Two-Phase Commit • Нет конфликтов • Не проходит при сбое связи • Обновления сохраняются, а затем выполняются • Возможны конфликты • Не зависит от наличия связи Store & Forward 2PC

>Replica Master Replica Replica Репликация Каждая ночь в 3:00  Каждые 30 сек По Replica Master Replica Replica Репликация Каждая ночь в 3:00 Каждые 30 сек По тре-бованию

>Репликация   (Декларативный синтаксис) SQL> Create Snapshot Dept10 refresh fast  start with Репликация (Декларативный синтаксис) SQL> Create Snapshot Dept10 refresh fast start with sysdate next sysdate + 1/24 as select * from Employees@Server_A where deptno = 10; SQL> Create Snapshot Log on Employees 00AB.01.01, NULL, I Мастер таблица Копия (Snapshot)

>Разрешение конфликтов Product     Qty. Product     Qty. Разрешение конфликтов Product Qty. Product Qty. New York San Francisco -30 -50 -50 -30 Последний по времени Максимум Первый по времени Перекрыть Приоритет группы Отказаться Приоритет сайта Среднее Минимум Суммировать

>Динамическая передача прав  (без конфликтов) Sales Shipping Support C1    Динамическая передача прав (без конфликтов) Sales Shipping Support C1 C2 C3 Owner C1 C2 C3 Owner C1 C2 C3 Owner Заказ продуктов Отгрузка продуктов Тех поддержка N-WAY N-WAY

>Networking и защита данных Networking и защита данных

>Подробнее о безопасности эти 13 слайдов вместо следующих 3 слайдов Подробнее о безопасности эти 13 слайдов вместо следующих 3 слайдов

>Уровни защиты информации согласно “Оранжевой книге” D: Минимальная защита C1: Разграничение доступа C2: Контролируемый Уровни защиты информации согласно “Оранжевой книге” D: Минимальная защита C1: Разграничение доступа C2: Контролируемый доступ B1: Защита с помощью меток секретности B2: Структурированная защита B2: Домены секретности A1: Контролируемая разработка

>Проблемы защиты информации в сети Перехват паролей Перехват данных Модификация  данных PWD Проблемы защиты информации в сети Перехват паролей Перехват данных Модификация данных PWD

>Функциональность и механизмы   Identification & Authentication   Access Control  Функциональность и механизмы Identification & Authentication Access Control Audit & Accountability Network Encryption Администрирование системы Аспекты защиты БД Server Enterprise Network Host-based System

>Идентификация пользователей Варианты идентификации пользователей в Oracle: Oracle passwords Биометрические устройства и ключи Единый Идентификация пользователей Варианты идентификации пользователей в Oracle: Oracle passwords Биометрические устройства и ключи Единый пароль в централизованной системе Единый пароль в распределенной системе

>Дискретизация доступа: Системные привилегии   Около 80 различных привилегий   Предоставлять только Дискретизация доступа: Системные привилегии Около 80 различных привилегий Предоставлять только необходимые привилегии Разделять обязанности CREATE SESSION DROP USER CREATE TABLE FORCE TRANSACTION AUDIT ANY INSERT ANY TABLE CREATE ANY SNAPSHOT SELECT ANY TABLE DROP CLUSTER CREATE VIEW

>Дискретизация доступа: привилегии на доступ к объектам GRANT select   ON emp Дискретизация доступа: привилегии на доступ к объектам GRANT select ON emp TO Scott Scott select

>Дискретизация доступа к объектам Необходимые транзакции инкапсулируются в хранимые процедуры, функции и пакеты Not Дискретизация доступа к объектам Необходимые транзакции инкапсулируются в хранимые процедуры, функции и пакеты Not Necessary Clerk Execute Privilege Insert Privilege Insert Privilege EMP Table

>Дискретизация доступа - Roles Обеспечивает эффективное управление   Облегчает администрирование   Обеспечивает Дискретизация доступа - Roles Обеспечивает эффективное управление Облегчает администрирование Обеспечивает разделение функций Позволяет связать доступ к данным с приложениями Privileges Users Roles Create Session Clerks Manager Select Update Insert Delete Select Update Personnel Clerk Personnel Manager

>Oracle Enterprise User Management Solution Set Oracle Wallet Manager Oracle Certificate Authority Oracle Secure Oracle Enterprise User Management Solution Set Oracle Wallet Manager Oracle Certificate Authority Oracle Secure Directory Oracle Enterprise Security Manager LDAP v3 integration into Oracle8i Supports authentication and authorization of global users server-to-server mutual authentication via privileged database links Oracle Secure Directory Oracle Certificate Authority Oracle Wallet Manager

>Аудит системы Поддерживается ответственным  администратором...   Гибкость и дискретность аудита  Аудит Аудит системы Поддерживается ответственным администратором... Гибкость и дискретность аудита Аудит пользователей, операций, обращений к объектам, привилегий ... Более 200 событий, подлежащих аудиту Эффективная реализация в Oracle Server реализована на уровне ядра системы Анализ с помощью стандартного SQL

>Шифрование данных средствами Oracle Шифрование обеспечивает Конфиденциальность всех данных в сети Целостность данных Ключи Шифрование данных средствами Oracle Шифрование обеспечивает Конфиденциальность всех данных в сети Целостность данных Ключи генерируются автоматически для каждой сессии NETWORK

>Протоколы шифрования Confidentiality Algorithms DES and DES40 Fortezza (in 1996) Integrity Algorithms seed= ABCD Протоколы шифрования Confidentiality Algorithms DES and DES40 Fortezza (in 1996) Integrity Algorithms seed= ABCD Secure Automatic Key Management using Diffie-Hellman seed= 5678 Key Generator Key Generator Fortezza SHA (in 1996) Выбор алгоритма при выполнении соединения

>SQL*Net SPX/IPX TCP/IP LU6.2 NetBIOS  Global Name Server Определение повисших связей Альтернативный Routings SQL*Net SPX/IPX TCP/IP LU6.2 NetBIOS Global Name Server Определение повисших связей Альтернативный Routings Графический инструмент (Network Manager) Open API Single Logon Протоколы OSI DECnet

>Oracle и Net : больше многоуровневых клиентов Концентратор представляет нескольких клиентов как одно соединение Oracle и Net : больше многоуровневых клиентов Концентратор представляет нескольких клиентов как одно соединение Разделяемые соединения Сервер-Сервер Масштабируемый, безопасный доступ к распределенным данным Клиенты Концентратор (Connection Managers pooling) Мультеплексирование Мультиплексирование соединений Connected Users Concurrent Users Application Scalability Database Scalability

>Сопровождение паролей Сопровождение паролей

>Секретность Роль Роль Привилегии DES40 DES56 RSA SSL Пользователи Шифрование Идентификация через OS & Секретность Роль Роль Привилегии DES40 DES56 RSA SSL Пользователи Шифрование Идентификация через OS & DB Гранулированный доступ Сертификат C2 Advanced Security Select Execute Insert Update Create Роль Роль

>Advance Security Option Полное кодирование потока DES 40 и 56,  RSA,  SSL Advance Security Option Полное кодирование потока DES 40 и 56, RSA, SSL MD5 контрольное суммирование Biometric Support Интеграция с Kerberos for Single Signon Интеграция с SmartCard Technology Sesame, DCE, Token-Based, Entrust/PKI Единый вход, Enterprise User l~aj987&^(*y02(&=94?7N9%7yq}3 Scott/tiger Jones 54000 Smith 4900 Without ASO With ASO

>Fine-grained Access Control Упрощает реализацию row-level безопасности Безопасность ассоциируется с таблицей или представлением Доступ Fine-grained Access Control Упрощает реализацию row-level безопасности Безопасность ассоциируется с таблицей или представлением Доступ не может быть передан другому Проще чем представления Ограничивает возвращаемые данные добавлением слова WHERE Приложение может использовать переменную сессии Cust_id, например SELECT * FROM ORDERS; SELECT * FROM ORDERS where cust_id = 123 Orders Table Обычный SQL Security Policy добавляет критерий WHERE

>Resource Management Plans Приоритеты для пользователей Группы потребителей пользователь может быть членом нескольких групп Resource Management Plans Приоритеты для пользователей Группы потребителей пользователь может быть членом нескольких групп только одна группа активна во время сеанса группа по умолчанию назначается пользователю при соединении с БД Методы выделения ресурсов: % использования CPU ограничение степени параллелизма Планы можно менять не останавливая Oracle NIGHT_PLAN WEEKDAY_PLAN

>62 Автоматическое тонкое управление ресурсами Контроль максималь- ного числа активных сеансов Оценка времени выполнения 62 Автоматическое тонкое управление ресурсами Контроль максималь- ного числа активных сеансов Оценка времени выполнения запроса Квота на Undo pool для consumer groups. Автоматическое переключение сеансов между consumer group Web based Order Entry Shipping Billing OLTP updates и длинные запросы: Высокий приоритет OLTP updates и короткие запросы: Средний приоритет Ночные изменеия и запросы: Высокий приоритет только ночью

>63 Security Мощная 3x уровневая безопасность (Application role, через iAS, легковесные сессии от iAS) 63 Security Мощная 3x уровневая безопасность (Application role, через iAS, легковесные сессии от iAS) Зашита для hosting (для компаний контекст и пуллинг) Public Key Infrastructure (PKI) (PKCS#12, SSL hardware ускорение) Улучшенное управление пользователями и policy (GUI) Кодирование данных (JCA/JCE) и Label security