28 сент. 2014 г.

Oracle Open World 2014. Что сказал Ларри

Начался новый OOW, как всегда много народа, будет куча презентаций и демонстраций (выбрать сложно)
Открыл OOW как всегда Ларри (после коротких выступлений маркетинга, Сафры и тетки из Intel)и сказал следующее:
Сначала долго говорил про наши апсы в публичном облаке Oracle, их там уже сотни и прибавляются все новые, мы переди планеты всей, в день заходят более 40 млн пользователей, все построено на единой облачной платформе, включающей СУБД, WebLogic + Social, Mobility, IDM. Т к Бд содержит Multitennant, In-Memory, надежность, безопасность и т д, то и все приложения это имеют в облаке. Кроме, того, в отличие от конкурентов эти приложения можно развивать используя возможности платформы. Простор для ISV. Короче все потихоньку идет в облако

Наконец сделали в публ облаке нормальный DBaaS и Web Logic. Я подозреваю, что это вирт машины с СУБД или WL, но во всяком случае это не схема в БД, как раньше, а полноценная БД и сервер приложений. Пользователь может их сам администрировать (будут тулзы) или отдать администрирование в Oracle. При заказе БД можно выбрать разные наборы опций, с стендбаем или без, с RAC (будет позже) Т е есть набор стандартных сервисов с разной ценой
Ларри много раз повторил, что теперь одной кнопкой можно перенести БД или приложение Java или любое приложение в облако или из облака в свой ЦОД. Где та кнопка я не знаю, может сделают инструмент. Переносить БД и Java можно т к теперь в облаке та же полноценная СУБД и WL что и в ЦОД, а под переносом любых других приложений он понимает IaaS (называется compute service) Т е заказываем вирт машину из шаблона, а в нее ставим что хотим

Анонсы Ларри оставил на закуску

Запускается ZDLRA - Zero data loss and recovery appliance - устройство для бэкапирования и восст БД. В отличие от других средств он не файлы бэкапит, а знает структуру БД.На самом деле используется тот же механизм, что и для Standby - передаются только Redo entry и копятся на этом appliance в ячейках Exadata. В любой момент можно попросить бэкап на любой момент времени в прошлом и Appliance его реконструирует из копии Бд и этих redo. Один appliance для бэкапирования всех БД организации. Трафик минимальный, восстановления на произвольный момент (а не на прошлый бэкап как сейчас)

В Exalitics поставили БД 12С с inmemory

Главное - в след году выйдут процы М7 с встроенными в железо (силикон) командами БД Соответств енно производительность БД опять взлетит. 12с будет поддерживать. В М7 зашиты команды для ускорения работы СУБД (какие не ясно, но как минимум работа по сканированию колонок in-memory), декомпресия сжатых данных, безопасность Впервые в мире на уровне железа будут проверять доступ к областям памяти. Если это не память этого приложения, то туда не пустят, не дадут испортить данные или их считать Ларри показал select count(*) с несколькими условиями и сказал, что он весь будет выполняться на процессоре

Да, еще запускают какую то стойку SAN с SSD дисками. Называется FS1 Дешевле и быстрее, чем EMC

Ну вот, то что вспомнил, остальное см прессрелизы (еще BI для Hadoop будет, BI в облаке, улучшения в RAT, In-memory adviser и т д и т п)

The same code for Oracle 11g and 12c

В настоящий момент некоторые компании-разработчики объявили о поддержке Oracle Database 12c в своих приложениях.
Мне довелось принять участие в конференции, посвященной этой грядущей поддержке в решениях компании ЦФТ: Миграция банковских комплексов ЦФТ на СУБД Oracle 12с.

В ходе последующего общения с разработчиками ЦФТ возник вопрос о сложности сопровождения кода в промежуточный период: когда будет необходимо поддерживать одновременно и Oracle 11g и Oracle 12c.

В решении этой задачи, на мой взгляд, может помочь условная компиляция PL/SQL. C помощью определенных в стандартном встроенном PL/SQL-пакете DBMS_DB_VERSION символов условной компиляции (логических констант), мы можем указывать части кода которые будут работоспособны только в Oracle 12c.
В этом пакете есть логическая константа VER_LE_11_2, истинное значение которой указывает на то, что компиляция кода производится в версии не более чем Oracle 11g Release 2.

Рассмотрим в качестве примера одну из новых технологий Oracle 12c - возможность определять UDF-функции, и тем самым значительно снижать затраты на переключение контекста в SQL-запросах.
Идея очень проста: директиву компиляции UDF мы обрамляем в символ условной компиляции.
CREATE OR REPLACE FUNCTION inc_amount(v_pValue in number) RETURN number is
  $if not dbms_db_version.ver_le_11_2 $then
PRAGMA UDF;
  $end
  v_xValue number(9);
BEGIN
  v_xValue := v_pValue;
  
  return v_xValue+10;
END;
Далее, в момент компиляции этого кода, исходный текст будет препроцессирован. Если текущая версия БД - Oracle 12c, в код, который в итоге будет скомпилирован, попадет UDF-прагма PL/SQL-компилятора. Если БД имеет версии ниже, чем Oracle 12c - перед компиляцией, из исходного текста будет удалена строка с определением прагмы.

Важно отметить, что нам не нужно обрабатывать версию СУБД на уровне патчера нашего приложения и проводить собственный препроцессинг: компиляция этого кода на обеих версиях БД проходит без ошибок.
Компилируем код в Oracle 11.2:
-bash-4.1$ sqlplus scott/tiger

SQL*Plus: Release 11.2.0.4.0 Production on Sun Sep 28 20:06:36 2014

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning and Real Application Testing options

SQL> CREATE OR REPLACE FUNCTION inc_amount(v_pValue in number) RETURN number is
  $if not dbms_db_version.ver_le_11_2 $then
    PRAGMA UDF;
  $end
  v_xValue number(9);
BEGIN
  v_xValue := v_pValue;
  
  return v_xValue+10;
END;
/

Function created.

SQL> 
Теперь тот же самый код компилируем в Oracle 12c R1:
[oracle@localhost Desktop]$ sqlplus scott/tiger

SQL*Plus: Release 12.1.0.2.0 Production on Sun Sep 28 20:10:13 2014

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Last Successful login time: Sun Sep 28 2014 19:35:23 +04:00

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> CREATE OR REPLACE FUNCTION inc_amount(v_pValue in number) RETURN number is
  $if not dbms_db_version.ver_le_11_2 $then
    PRAGMA UDF;
  $end
  v_xValue number(9);
BEGIN
  v_xValue := v_pValue;
  
  return v_xValue+10;
END;
/

Function created.

SQL> 
Таким образом, мы имеем единую версию исходных текстов нашего приложения, который работоспособен сразу в нескольких версиях СУБД, получая преимущества от использования новых версий!

18 сент. 2014 г.

Материалы семинара "Новые возможности Oracle Database 12с для обеспечения высокой доступности"

Материалы семинара "Новые возможности Oracle Database 12с для обеспечения высокой доступности", который прошел сегодня 18 сентября 2014 года в Санкт-Петербурге можно скачать по этой ссылке (архив zip, 5Mb).

Архив включает в себя все презентации и описание демонстрации технологии Application Continuity, включая исходный код демонстрационного приложения.

11 сент. 2014 г.

"Новые возможности Oracle Database 12с для обеспечения высокой доступности: - Санкт-Петербург 18 сентября 2014 года





Компания Oracle совместно со своим партнером компанией COMPAREX приглашают Вас посетить БЕСПЛАТНУЮ конференцию: «Новые возможности Oracle Database 12с для обеспечения высокой доступности».Вы узнаете о последних достижениях компании Oracle в области СУБД Oracle 12c. Презентации будут сопровождаться демонстрациями технологий Oracle.

Мероприятие пройдет 18 сентября 2014 года, г. Санкт-Петербург, с 10:00 до 15:30
Мероприятие будет интересно: администраторам баз данных, техническим специалистам.





Программа семинара:
Время
Тема выступления
10:00 – 10:30
     Регистрация, приветственный кофе
10:30 – 11:15
·        Увеличие производительности и масштабируемости системы благодаря технология Flex RAC для построения кластера. Новая архитектура Oracle RAC 12c: Flex Cluster, Flex ASM.
11:15 – 12:00
·        Решение проблем сбоя БД во время транзакции при помощи Transaction Guard и Application Continuity
12:00 – 13:00
     Ланч
13:00 – 13:45
·        Global Data Services. Технология «Данные как сервис» в новой версии СУБД.
13:45 – 14:30
·        Обзор технологии Active Data Guard 12с для разгрузки первого сервера от работы с отчетами.
14:30 – 15:30
·        Сессия вопросов и ответов. Кулуарное общение.

Участие в семинаре бесплатное.
Регистрация на мероприятие является обязательной!
Количество мест ограничено!