|
Untitled Document
« PL / SQL для АБД Oracle » - долгожданная книга!

|
Аруп Нанда,
Стивен Фейерштейн
Oracle PL / SQL
Для администраторов баз данных
Издательство " Символ-Плюс " ( www.symbol.ru ), СПб:, 2008, 496 стр.; 70x100/16; тир. 2000; ISBN 5-93286-101-1; перевод с англ. П.Шера, научный редактор О.Летаев
Безопасность, планирование, производительность и многое другое
Оригинал: Oracle PL/SQL for DBAs , by Arup Nanda and Steven Feuerstein, O'Reilly Media, Inc, 2006, ISBN: 0-596-00587-3
Все фрагменты кода, использованные в книге, представлены на web-сайте издательства O ' Reilly по адресу http://www.oreilly.com/catalog/oracle plsqdba . |
Категория: базы данных / Oracle
Уровень подготовки читателей: средний |
То, что достаточное знание или углубленное знакомство с языком PL/SQL является обязательным требованием для любого администратора базы данных Oracle, есть чуть ли не самое общее место в профессиональной квалификации практического АБД. И, к сожалению, слишком часто оно звучит примерно так: «АБД должен быть в состоянии дорабатывать и развивать прикладные приложения, используя PL/SQL». Тем самым очень часто, используя необходимое знание АБД языка PL/SQL, полагают, что АБД должен заниматься продвижением приложений, или же, наоборот, администратора промышленной базы данных Oracle можно заменить кем-либо из наиболее продвинутых прикладных программистов-разработчиков. О том, что это разные профессии с разными технологиями деятельности и инструментальными средствами, многие ИТ-руководители часто не задумываются, считая ссылку на нехватку кадров чуть не универсальным выходом из этой проблемы.
Да, конечно, язык PL/SQL, один из основных и самых мощных инструментальных средств разработки Oracle-приложений, администратору знать надо. Но в опрос об уровне профессионального владения АБД языком PL/SQL надо поставить, по нашему мнению, несколько иначе: «Какие конкретные темы и механизмы PL/SQL должен знать и применять АБД Oracle», а также «каким образом АБД должен участвовать в процессах разработки и, главное, сопровождения Oracle-приложений во время их эксплуатации».
На первый вопрос блестяще отвечает рецензируемая книга членов коллегии A CE Oracle (Тузы, или Ассы Oracle) ведущих специалистов в своих направлениях Арупа Нанда, лучший АБД Oracle 2006г . по квалификации журнала «Oracle Magazine», и Стивена Фейерштейна, которого так и называют PL / SQL evangelist (евангелист, первопроповедник PL / SQL ). Ответ же на второй, более разработанный вопрос можно найти в книгах также Ассов Oracle Тома Кайта, Кевина Луни и других Oracle-гуру. А сейчас перед нами « Oracle PL / SQL для АБД» - первая и столь долгожданная книга, посвященная изложению совместного авторитетного мнения ее авторов.
Обычно опытный пользователь-профессионал очень многое о материале, содержащемся в книге, может узнать из ее оглавления, которое, как обычно, мы приводим в приложении к рецензии. Но в данном случае наши авторы явно сэкономили ( J ) на количестве слов в названиях разделов, и мы с удовольствием постараемся представить книгу по главам. Сразу же необходимо отметить очень сжатое, лаконичное изложение темы (в книге менее 500 стр.), что серьезно облегчает задачу читателей, поскольку существенно сокращены общие учебные положения. Книга предназначена для уже состоявшихся специалистов, которым лишь в справочном виде надо коротко повторить и/или напомнить многие уже хорошо известные общие и/или даже специальные сведения. Экономя свое время на отсутствии общеучебных примеров, знакомиться с « PL / SQL для АБД» - просто удовольствие!
Первый взгляд на оглавление этой книги вызывает шокирующее впечатление: «Что?! И это все, что должен знать и чем владеть АБД Oracle, такой таинственный и высокооплачиваемый специалист?!!» Не торопитесь. Во-первых, АБД должен знать не только PL / SQL , а, во-вторых, откроем книгу.
«Введение или что такое PL / SQL » - первая глава начинается с обращения авторов к читателям, которое можно было бы поставить эпиграфом и к этой рецензии, и к книге в целом:
« Мы не надеемся на то, что прочитав эту главу, вы сразу же сможете писать блестящие программы на PL/SQL. Мы лишь хотим быть уверенными в том, что ваших знаний о языке окажется достаточно для понимания и работы с примерами и описаниями функциональности, приводимыми далее в книге.»
Всего на 90 страницах этой самой большой в книге главы нашлось место и для описания основных элементов синтаксиса PL / SQL (что все-таки делает книгу приемлемой и для новичков), и для введения в динамический SQL и динамический PL / SQL ; для описания основных управляющих операторов, циклов, курсоров, обработки исключений и хранимой логики (процедуры, функции, пакеты) до механизмов управления транзакциями в PL / SQL , автономных транзакций и триггеров базы данных. Не забыты и самые любимые темы С. Фейерштейна последнего времени – коллекции и BULK COLLECT .
Глава « Курсоры » включает ответы такие небезразличные для АБД вопросы: «как Oracle принимает решение о совместном использовании [курсоров]», «как использовать литералы при планировании повторного использования курсоров», «проблема выбора между явными и неявными курсорами», «использование курсоров не только для запросов» и др., поскольку во время исполнения программы ее курсоры могут стать предметом администрирования общего функционирования базы данных Oracle.
Глава « Табличные функции » знакомит АБД с применением и распараллеливанием табличных функций, преимуществами параллельных запросов, различными типами секционирования сегментов, что должно помочь АБД как в анализе текущего производственного процесса обработки данных, так и в рекомендациях разработчикам по улучшению структуры их приложений.
Завершают эту главу « Советы по работе с табличными функциями »: «Критика SYS_REFCURSOR», «REF CURSOR и вложение», «Стандартизация имен объектов и коллекций», «Остерегайтесь необработанных исключений», … - наводят на мысль, что этот материал настолько полезен программистам-разработчикам, что они могут стать прямыми конкурентами АБД за право направленности именно к ним этой книги J !
Однако последующие главы, начиная с «Шифрование и хеширование данных» и до конца, обладают все-таки большей АБД-направленностью. Эти пять глав можно условно разделить на две части:
- более специальную («Шифрование и хеширование данных», «Контроль доступа на уровне строк» и «Детальный аудит») - это уже сугубо профессиональный материал, который далеко не всегда понятен и интересен специалистам других направлений. Скажем только, что в таком объеме и на таком уровне изложения в современной компьютерной литературе на русском языке найдется совсем немного источников. Но для администраторов безопасности баз данных и приложений этот материал может быть бесценен; и
- более общую («Генерирование случайных значений» и «Использование планировщика»). В этих главах отметим такие привлекшие внимание темы, как: «Генерирование отрицательных чисел», «Проверка на случайность», «Генерирование случайных строк случайной длины», «Зачем использовать планировщик заданий в Oracle?», «Основы управления заданиями», «Управление приоритетами», «Управление журналированием», и т.п., - как видите, самые обычные, актуальные и, вообще говоря, интересные темы для АБД.
Завершает эту, не побоимся сказать, потрясающую книгу «Краткий справочник» по всем (!!) упомянутым в ней встроенным PL/SQL- пакетам с перечислением столбцов представлений Словаря Данных, связанных с этими пакетами. Не заглянув в « PL / SQL для АБД» , мысленно можно только ужасаться, сколько же объектов хранимой PL/SQL -логики нужно знать и применять АБД Oracle! Но выдающиеся гуру Oracle А. Нанда и С. Фейерштейн назвали всего-навсего шесть пакетов:
- DBMS _ OBFUSCATION _ TOOLKIT – обеспечивает поддержку шифрования, генерации ключей и хеширования.
- DBMS _ CRIPTO – включает программы для шифрования, расшифрования, генерации ключа и вычисления хеш-значений;
- DBMS _ RLS – программы безопасности на уровне строк, позволяя создавать, удалять, активировать, дезактивировать и удалять политики;
- DBMS _ FGA – добавление, удаление, включение и отключение политик детального аудита;
- DBMS _ RANDOM – содержит программы, генерирующие случайные значения (числовые и строковые) и выполняющие другие операции, связанные с рандомизацией;
- DBMS _ SHEDULER – запуск фоновых заданий, выполняемых в определенный момент времени или с заданной периодичностью. В него входят все программы, необходимые для создания и обслуживания заданий, классов заданий, расписаний, программ, окон и групп окон.
Конечно, когда первое ошеломление немного проходит, видно, что приведены только узко специализированные административные пакеты. Если АБД хочет понимать, как работает его промышленная база данных Oracle, конечно, он должен знать и уметь применять много больше общих и специальных средств мониторинга, анализа, сопровождения процесса функционирования базы данных. Но скажем спасибо А. Нанда и С. Фейерштейну за их прекрасную, очень интересную и легко читаемую книгу!
В этой связи необходимо отметить и поблагодарить переводчика этой книги Петра Шера и научного редактора перевода профессионального oracle-иста Олега Летаева, Oracle Certified Professional . Высокий уровень и качество их совместной работы мы уже видели на примере русского издания книги Кэри Миллсап и Джеффа Хольта « Oracle. Оптимизация производительности » (Санкт-Петербург, «Символ-Плюс», 2006, 464 стр.). Можно теперь абсолютно уверенно сказать, что команда П.Шера и О.Летаева (включая, естественно, и литературных редакторов издательства «Символ-Плюс») выдает отличную профессиональную продукцию на российский рынок литературы по Oracle .
Виктор Абрамов,
научный редактор "Oracle Magazine/Русское Издание"
Анатолий Бачин,
главный редактор “Oracle Magazine/Русское Издание”
Приложение 1 .
Оглавление « Oracle PL/SQL для администраторов баз данных »
Предисловие
- Введение в PL/SQL
- Курсоры
- Табличные функции
- Шифрование и хеширование данных
- Контроль доступа на уровне строк
- Детальный аудит
- Генерирование случайных значений
- Использование планировщика
А. Краткий справочник
- DBMS_OBFUSCATION_TOOLKIT
- DBMS_CRIPTO
- DBMS_RLS
- DBMS_FGA
- DBMS_RANDOM
- DBMS_SHEDULER
Алфавитный указатель
Все фрагменты кода, использованные в книге, представлены на web-сайте издательства O ' Reilly по адресу http://www.oreilly.com/catalog/oracle plsqdba .
|