Содержание Oracle Magazine/Russian Edition ╧1/1997


От редактра

1 Время приложений (Алексей Резниченко)

Новости

3-4 Дни Oracle в Санкт-Петербурге

Результаты корпорации Oracle в 3-м квартале 1997 г.

Деловые новости Oracle

Oracle в сфере культуры и образования

Конференция "Корпоративные системы 97"

Технические новости Oracle

7 Использование Oracle в Internet

14 Новости Книжной лавки ЕАГПО

64 Вести из Oracle-клуба

Общие вопросы

5 Будущее определяют приложения (Стив Бобровски)

8 Обзор прессы (Алексей Резниченко)

10 При исследовании Oracle обнаружено, что ................. (Владимир Пржиялковский)

Тема номера - Приложения

11 БОСС-КОРПОРАЦИЯ - российская система управления предприятием (Александр Миронов, Тагир Яппаров)

13 Каталог российских приложений клиент-сервер (Галина Антипина, Булат Гайфулин)

15 Нешто новый проект начать, или старый закончить? (Владимир Пржиялковский)

Oracle в работе

17 Особенности использования Oracle в АСУ металлургическим предприятием (Борис Финкельберг)

20 Применение СУБД Oracle и WWW в библиотечной поисковой системе Каталог (Вадим Калайда, Евгений Смоляр)

Партнеры

22 Bradmark

25 Sequent

Методология

28 От xBase к Oracle (Алексей Ярцев)

Мастерская разработчика

33 Генератор форм Designer/2000 - миф и реальность (Ольга Горчинская, Ольга Морозова)

37 Новые возможности второй версии Designer/2000 (Ольга Горчинская)

38 "Подземелья" Oracle Express (Станислав Сидоров)

42 Оптимизация SQL (Виктор Абрамов)

48 DBMS_UTILITY: встроенный пакет функций общего назначения (Стивен Фейрстайн)

50 Несколько примеров применения пакетов DBMS_JOB и DBMS_PIPE (Алексей Данченков)

Кабинет Администратора

54 Современные задачи администрирования баз данных Oracle (Анатолий Бачин)

55 Минимизация возможных потерь данных в ORACLE (Александр Любушкин)

59 Наиболее важные аспекты управления транзакциями и сегментами отката (Ленг Ленг Тан)

Техническая Поддержка

64 FAQ: отвечают службы технической поддержки


Время приложений

Открыть свою страничку я хочу сообщением о том, что в редакцию нашего журнала в качестве научного редактора по CASE- и OLAP-технологиям вошла Ольга Горчинская, которую сообществу специалистов по Oracle в СНГ представлять не нужно. Анатолий Бачин (тематика АБД), Виктор Абрамов (SQL, PL/SQL, средства разработки) и я желаем Ольге успехов!

А теперь о теме номера. После падения социализма и ЕС ЭВМ основу информационных систем в странах СНГ составляют западные технологии и продукты. Вполне естественно, что их освоение идет по принципу "от простого к сложному" и/или, что, возможно, более верно, "от дешевого к дорогому": сначала автономные ПК, затем локальные сети на их основе плюс соответствующий программный инструментарий. Результатом является множество приложений для среды файл-сервер, которые во многих случаях вполне удовлетворяют потребности малых и средних предприятий. Но архитектура файл-сервер имеет очевидные ограничения, которые не позволяют создавать эффективные приложения масштаба предприятия и корпорации/ведомства (группы предприятий).

Уже не только исследования аналитиков, но и обширная мировая практика однозначно указывает на архитектуру клиент-сервер (в различных вариациях: двух-, трехзвенная схема, на основе стандартов и технологии Internet, других стандартов), как на наиболее эффективную архитектуру построения и функционирования этого типа приложений, о которых еще говорят - крупные, большие приложения. Если говорить о количественных (по сути дела все-таки формальных) критериях "крупности", то применительно к западным большим приложениям называют сотни-тысячи клиентских рабочих мест, базы данных размером десятки-сотни гигабайт, десятки-сотни человеко-лет, вложенных в разработку. По очевидным причинам прикладных систем такого масштаба в России пока раз, два............ По сути дела важнее качественные характеристики - обеспечение интеграции данных предприятия и параллельной работы с ними многих пользователей при гарантированном уровне надежности и защищенности. Российские предприятия, приходящие к созданию приложений архитектуры клиент-сервер, как правило, уже имеют немалый задел в виде приложений, разработанных для среды файл-сервер с применением "настольных" СУБД, поддерживающих формат xBase. Естественно, они заинтересованы в таком переходе к среде клиент-сервер, при котором максимально сохраняются ранее сделанные инвестиции и статья Алексея Ярцева поможет специалистам этих предприятий принять оптимальное решение. Интеграция данных предприятия в среде клиент-сервер позволяет повысить эффективность оперативной обработки данных (OLTP), но наибольший эффект от интеграции данных достигается при применении оперативной аналитической обработки данных (OLAP), "выжимающей" из базы данных информацию и даже знание, которые могут быть использованы конечными пользователями непосредственно в своей деятельности. Статья Станислава Сидорова рассказывает об опыте разработки одного из первых российских приложений этого класса. При разработке больших приложений ключевое значение приобретает этап проектирования, квалификация проектировщиков. При почти полном отсутствии в последние годы компьютерной литературы на русском языке по "неписишным" темам, подготовка таких специалистов и поддержание уровня их квалификации становится серьезной проблемой и предложения Владимира Пржиялковского могут в какой-то степени помочь ее решению. Разработка приложений архитектуры клиент-сервер сложнее и дороже разработки приложений для среды файл-сервер и многим организациям имеет смысл оценить возможность приобретения уже готовых приложений. Каталог приложений, о котором пишут в своей статье Галина Антипина и Булат Гайфулин, может помочь этим организациям определиться с узким кругом приложений-"кандидатов".

Специалисты многих российских организаций-пользователей Oracle уже достаточно хорошо освоили инструментарий корпорации Oracle и других компаний для разработки приложений архитектуры клиент-сервер в среде СУБД Oracle, накоплен немалый опыт - и это плюс нарастающие требования большей отдачи от информационных систем (время легких денег в торгово-финансовом секторе заканчивается, да и в целом руководство организаций самых разных сфер осознает, пусть и не так быстро как хотелось бы, значение эффективной информационной системы в условиях рыночной экономики) дает основания говорить о наступающем времени приложений, ведь именно приложения, в конечном счете, определяют ценность информационной системы.

Главная тема следующего номера нашего журнала - Oracle8. Но тема разработки, внедрения и сопровождения приложений всегда будет присутствовать в OM/RE. Так что пишите о своем опыте, делая рекламу своей фирме, а себе приобретая славу и гонорар. Впервые в нашем журнале напечатаны статьи авторов из Санкт-Петербурга и Казани; специалистам Екатеринбурга, Омска и других городов также есть чем поделиться со своими коллегами и мы ждем от них статей. Наши требования: статья должна иметь четкий адрес - одну из категорий наших читателей (потенциальных, начинающих и опытных пользователей Oracle; разработчиков, АБД, проектировщиков, аналитиков, руководителей), т.е. авторы должны представлять для кого они пишут: для начинающего АБД, опытного разработчика, руководителя/аналитика организации, которая может быть пользователем Oracle, и т.д., и в каком разделе журнала их статья должна быть напечатана. Если же статья интересна и читателям других категорий - это плюс!

Если Вы хотите бесплатно получить в 1997 г. следующие номера OM/RE, заполните, пожалуйста, анкету на третьей странице обложки. По всем вопросам, относящимся к OM/RE, просьба обращаться в Oracle СНГ.

С уважением, Алексей Резниченко


Новости

Oracle на Комтек97

В программе конференций Комтек97 корпорация Oracle представит два доклада "Управление проектами в среде клиент/сервер" (22.04.97, 12.40-13.25), "Решения Oracle для интрасетей" (24.04.97, 16.15-17.00).

24.04.97 в 12.00-13.00 в пресс-зале Конгресс-центра пройдет преcc-конференция руководства Oracle СНГ.

Oracle для детей Чернобыля

21.04.97 на стенде корпорации Oracle (павильон 2, зал 2, ╧2311) для детей-жертв Чернобыльской аварии, лечащихся в Республиканском детском нучно-практическом центре противорадиационной защиты, будет проведен показ достижений информационных технологий.

Oracle в сфере культуры и образования

Корпорация Oracle предоставила Министерство культуры России на льготных условиях генеральную лицензию на ПО Oracle Universal Server, которое будет широко использоваться в учреждениях этого министерства.

Корпорация Oracle и Министерство образования России заключили соглашение об использовании ПО корпорации Oracle в ВУЗах России. По этому соглашению ПО Oracle признается приоритетным для российских институтов и университетов, которые смогут со значительными скидками приобретать его, будут также создаваться центры обучения для сотрудников ВУЗов, проводиться совместные конференции, семинары и другие мероприятия. В настоящее время уже более 80 институтов и университетов России являются участниками "Университетской программы Oracle" (координатор Лидия Дылевская, e-mail ldylevsk@ru.oracle.com).

Деловые новости Oracle

Участникам программы APP (Applications Partner Program), преимущественно это системные интеграторы, включающие Oracle Applications в свои решения, предоставлен прямой доступ к технологиям, продуктам и услугам Oracle.

В число участников этой программы входят действующие в СНГ:

Andersen Consulting (www.ac.com)

Coopers & Lybrand (www.colybrand.com)

Deloitte & Touche (www.dttus.com)

Ernest & Young (www.ey.com)

IBM (www.ibm.com)

KPMG (www.kpmg.com)

Price Waterhouse (www.pw.com)

Unisys (www.unisys.com)

Корпорации Oracle и Novell расширяют сотрудничество:

1. корпорация Novell интегрирует Oracle Web Application Server версии 3.0 с InternetWare, своим WebServer и Novell Directory Services (NDS) и будет продавать его с этими продуктами;

2. корпорация Oracle создает специальное подразделение Novell Products Division для содействия технологической интеграции продуктов обеих компаний и их совместной продаже, маркетингу и поддержке.

Корпорации Oracle и Hewlett-Packard объявили, что Oracle Web Applications Server 3.0 будет поставляться в составе ОС HP-UX на серверах серии HP9000.

Компании EMC и Hewlett-Packard объявили об успешном тестировании БД Oracle8 размером 1,2 Тбайта в соответствии с условиями Test-to-Scale II, программы корпорации Oracle по сертификации оборудования (в данном случае 8-узловой кластер HP9000 Enterprise Parallel Server, каждый узел - это SMP-сервер с 4 ЦП и ОС HP-UX 10.20 и 5 дисковых массивов EMC серии Symmetrix 3000) для работы со сверхбольшими БД Oracle8.

Конференция "Корпоративные системы 97"

пройдет 28-30 апреля 1997 г. в г. Москве. Основные темы: СУБД и средства разработки приложений, системы управления финансами и производством, системы документооборота, Internet и коммуникации, администрирование информационных систем.

В конференции примут участие ведущие фирмы-производители ПО для корпоративного рынка: Oracle, BradMark, Borland, Netscape, Sun, Computer Associates, Microsoft, Novell, Netscape, IBM.

Координаты Оргкомитета: фирма "Софтсервис" (095) 976-0133, 976-3478, http://www.softexpress.ru

Координатор конференции

Алексей Ярцев

alex@softserv.netclub.ru

Новости Книжной лавки ЕАГПО

В Книжной лавке ЕАГПО появились как новые книги, так и новые издания старых. Среди книг издательства Oracle Press (Osborne/McGraw Hill) можно выделить Oracle DBA Handbook (7.3 Edition), Oracle: The Complete Reference (Electronic Edition), Advanced Oracle Tuning and Administration, Oracle Data Warehousing. Первую написал хорошо известный читателям Kevin Loney, вторую - он же в соавторстве с George Koch, третью - он же (!) в соавторстве с Eyal Aronoff и Noorali Sonawalla, а четвертую - не менее известные авторы Michael Corey и Michael Abbey.

В издательстве O'Reilly & Associates вышло новое издание (1996 г.) популярной у наших пользователей книги Oracle Performance Tuning авторов Mark Gurry и Peter Corrigan. С полным списком книг, которые можно купить в Книжной лавке ЕАГПО, можно ознакомиться, посетив Web-уголок ЕАГПО: www.ccas.ru/~prz/hp2.html.

По вопросам приобретения этих книг обращайтесь по prz@ccas.ru или по телефонам (095)135-4163 и 158-4352 к Владимиру Пржиялковскому.

Технические новости Oracle

На выставке Internet World корпорация Oracle представила Oracle Web Applications Server (OWAS, ранее Oracle WebServer) версии 3.0 - первый транзакционный сервер для Web. В его бета-тестировании принимает участие более 5000 организаций, промышленная версия выйдет в апреле 1997 г. OWAS 3.0 поддерживает API Web-серверов Netscape и Microsoft, что позволяет выполнять на OWAS приложения, разработанные для этих Web-серверов. OWAS включен в Web Developer Suite - набор средств корпорации Oracle для разработчиков Web-приложений. Этот набор состоит из Designer/2000, Developer/2000, OWAS, Oracle7 Enterpraise Server, Oracle InterOffice и набора средств для разработки картриджей.

Корпорация Oracle объявила о выпуске Oracle Power Objects (OPO) версии 2.1 (описание OPO версии 2.0 дано в статье Леонида Сорокина "Oracle Power Objects 2.0" (OM/RE, ╧2/1996)). Функциональность OPO расширена в трех аспектах:

1. в состав OPO 2.1 включена миниСУБД Personal Oracle (PO) Lite версии 2.3.1, которая поддерживает создание приложений типа каталогов для CD-ROM, в этой версии PO Lite ODBC-доступ заменен более эффективным прямым;

2. добавлен новый внешний API, что позволяет в процессе разработки приложений подключать другие средства, например, контроля версий и моделирования (этот API будет использоваться в Designer/2000 версии 2 для автоматической генерации кода приложений OPO);

3. поддержка национальных языков: сразу же поддерживаются французский, немецкий, шведский. Поддержка других европейских языков, включая русский, обещана во 2-м квартале 1997 г.

Корпорация Oracle объявила о выпуске набора CDM Advantage, предназначенного для разработчиков, использующих Designer/2000. Основу этого набора составляет CDM (Custom Development Method) - метод, разработаныый консультантами корпорации Oracle и проверенный ими в ряде проектов. Мы планируем напечатать статью о CDM в следующем номере OM/RE.

Корпорация Oracle объявила о поддержке применения языка Java при разработке приложений для NCA - архитектуры сетецентрической обработки данных. Java будет применяться на всех уровнях NCA - клиент, сервер приложений, сервер базы данных в средствах разработки (J/SQL, Developer/2000, Designer/2000, Sedona, Java Access to PL/SQL), фирменных приложениях (Oracle Applications, HatTrick, Interoffice, Project Apollo, картриджи данных), интерфейсных продуктах (Thin/Thick Client JDBC - на стороне клиента, JDBC Web Toolkit - на сервере приложений, JDBC - в базе данных). Среда выполнения Java-программ (Java VM) будет реализована на сервере приложений (WebServer Java Cartridge) и в сервере базы данных (на Java можно будет разрабатывать хранимые процедуры, триггеры, методы и картриджи данных). На Java реализуется Developer/2000 Web Cartridge, который заменяет в существующих приложениях Developer/2000 код клиентской части на Java-код (функциональность приложения не меняется!), а это делает возможным выполнение приложений Developer/2000 на "тонком" клиенте: ПК или СК с браузером Web.

Более подробную информацию о новых продуктах Oracle можно получить, обратившись в офисы корпорации Oracle и ее партнеров в СНГ.

Использование продуктов Oracle в Internet.

На выставке Internet World объявлено об использовании Oracle Universal Server и Oracle WebServer компанией Lucent Technologies для ведения своего коммерческого Web-узла (www.lucentdirect.com), который недавно признан журналом Direct Magazine одним из шести лучших Web-узлов, используемых для прямого маркетинга. Проектирование, разработку и поддержку этого Web-узла осуществила фирма WCNM (www.wcnewmedia.com), участник BAP - Союза деловых партнеров Oracle, изменение его содержания выполняют менеджеры Lucent.

Компания Be Free, Inc. разработала Web-узлы для компании Kathy Ireland (www.kathyireland.com, получил награды "Yahoo! Pick of the Week" и "USA Today Hot Site") и хоккейного клуба "Питтсбургские пингвины" (www.pittsburghpenguines.com) на основе Oracle Universal Server, включая Oracle ConText Option (средство работы с текстами), Oracle WebServer 2.0, Oracle Express и своего ПО. Согласно Джерейсу (Gerace), руководителю Be Free, Oracle WebServer 2.0 способен обслужить более 500 миллионов соединений в день. "Мы тестировали все основные системы динамической доставки данных и только Oracle устроил нас", - отметил он. Oracle Express используется для анализа изменеий рынка и дифференцированного (по отношению к различным группам населения) маркетинга.

Корпорации Oracle, Digital Equipment и Digex заключили соглашение о предоставлении функций поддержки групповой работы (электронная почта, каталоги, календари, расписания) Oracle InterOffice пользователям Web, которые должны зарегистрироваться на www.interoffice.net и подписаться на услуги Oracle InterOffice.

Корпорация Oracle и шведская телекоммуникационная компания Telia AB создают "беспроводной" Internet на основе Oracle InterOffice. Владельцы мобильных телефонов смогут использовать сервис Internet, электронной и голосовой почты, передачу факсов.

Российская фирма "Гарант-Парк" (www.park.ru) предоставляет доступ с развитыми средствами поиска к базе данных Oracle, которая содержит более 100000 документов преимущественно экономического и правового характера.

Вести из Oracle-клуба

Каждое заседание клуба начинается с разминки (30 мин.): короткие выступления желающих, вопросы и ответы. И далее по повестке, каждая тема обсуждается не более 40 минут.

Заседание 3. Oracle и Internet (14.11.1996 г.)

Основные концепции технологий Oracle для работы с Internet. Б. Филимонов ("РДТеХ", Протвино)

Запросы к БД Oracle через Internet/intranet. Вал. Юринский ("СофтСервис", Москва)

Построение Web-приложений средствами Oracle Designer/2000. Ольга Морозова ("ФОРС", Москва)

Основные концепции и возможности Borland IntraBuilder Ал. Ярцев ("СофтСервис", Москва)

Заседание 4. Неизвестный Oracle (19.12.1996 г.)

Неизвестный Oracle (завтрашний): Oracle8, Sedona ... (информация с конференции разработчиков, Париж, 8-12 декабря 1996) С. Мосин ("ФОРС", Москва)

Неизвестный Oracle (сегодняшний): Oracle Data Browser - средство построения незапланированных запросов. Ю. Пискарев (Банк "Зенит", Москва)

Рассказ о продукте, "живая" демонстрация его возможностей и реакция публики подтвердили, что многие и не подозревали о наличии столь удобного средства.

Заседание 5. Всеобъемлющий Oracle (30.1.1997 г.)

"OLAP-технологии Oracle" (Основные концепции и продукты) Ольга Горчинская ("ФОРС", Москва) Очень интересное сообщение. Лично у меня руки зачесались попробовать этого самого OLAP'а/ROLAP'а.:-)

Дискуссия по статье Гокмана "Разделять или не разделять" ("Мир Oracle", N4/1996) заняла 45 минут, участвовало 8-10 человек. Получилось нескучно и поучительно.

Hints & Tips (40 минут) а) Один простой способ организации навигации между формами. В. Абрамов (ИВЦ АИС, Москва); б) Как выбрать отделы, в которых есть все должности, имеющиеся на предприятии? Вал. Юринский ("СофтСервис", Москва) (домашнее задание), В результате забега 1-е место занял : И. Филимонов (ТРИНИТИ, Троицк); в) "Из копилки" Дм. Безруков ("ФОРС", Москва).

Заседание 6. Мобильный Oracle (6.3.1997 г.)

Oracle Mobile Agents v2.0 - средство для работы с БД по слабым каналам. И. Минеев (Oracle СНГ, Москва)

Разработка приложения для АО "Шинторг" средствами Дельфийского оракула (Oracle + Delphi) С. Хитрин,

Защита информации средствами Oracle Web Server 2.0 (3.0) М. Терехов (фирма "ФОРС", Москва)

Новости Oracle для разработчиков. Л. Сорокин (Oracle СНГ, Москва)

Что дальше?

Следующее заседание состоится 27 марта.

Темы дня - InterОфисный Oracle: доклады А. Сухарникова (Oracle СНГ) и М. Терехова ("ФОРС") и обсуждение статьи Дм. Безрукова "Перенос обработки доменов на сторону сервера" (OM/RE, ╧2/1996).

Oracle-клуб - это одно из тех мест, где специалисты могут интересно и полезно провести свое и чужое драгоценное время. Однако, если ничего не положишь, то ничего и не возьмешь. Поэтому мы всегда рады знакомству с новыми людьми, решениями и технологиями. Приходите, пишите, звоните, предлагайте. Материалы, которые получают члены клуба по e-mail, можно посмотреть на www.softexpress.ru. Такие дела.

Валерий Юринский

тел. (095) 976-34-78, 976-43-13

e-mail: vsu@softserv.netclub.ru

Обзор прессы

В этом обзоре: последние номера изданий корпорации Oracle и публикации российской компьютерной прессы в 1997 г. по тематике Oracle и сопутствующим проблемам. И начну я его, естественно, с американского издания нашего издания.

1) Oracle Magazine (OM)

Главная тема ╧6,1996 - сверхбольшие базы данных (VLDB). Исследовательская компания Gartner Group недавно предложила следующую классификацию: малые БД - до 10(30) Гигабайт (Гб), средние БД - от 10(30) до 50(100) Гб, большие БД - от 50(100) до 200(500) Гб, сверхбольшие БД - от 200(500) Гб (первая цифра - это размер БД, используемой для оперативной обработки транзакций (OLTP), вторая, в скобках, - это размер БД, используемой как хранилище данных для поддержки принятия решений (DSS)). (От редакции OM/RE: нам не известна ни одна БД Oracle в СНГ размером 50 и более Гигабайт).

Перечислим статьи этого номера OM.

- Breaking the Petabyte Barrier (статья общего характера, в которой тема VLDB обсуждается в широком контексте),

- Most successful VLDB tactics (конкретные методы для успешной работы с VLDB согласно этой статье: разделение БД на физическом уровне (partitioning), максимальное использование средств параллельной обработки данных (parallelism) в СУБД, ОС и аппаратуре, максимальное использование масштабируемых (scalability) средств и методов, т.е. средств, которые не прекращают работать при значительном увеличении объемов данных, ибо VLDB - это, как правило, быстрорастущие БД),

- Latest hardware architecture (в этой статье рассматривается аппаратура, наиболее подходящая для работы с VLDB: 64-разрядные системы, массивно-параллельные системы (MPP), серверы симметрично-многогопроцессорной архитектуры (SMP), кластеры, системы архитектуры NUMA-Q; предлагается несколько критериев для выбора той или иной аппаратуры в зависимости от характера приложений (OLTP, DSS) и БД),

- Newest Oracle server (здесь рассматриваются Oracle7.3 и Oracle8 именно как средства работы с VLDB),

- Most useful tool (в этой заметке рассматриваются мониторы обработки транзакций (TP Monitor) при работе с VLDB, приводятся примеры применения),

- Strongest customer focus (это рассказ о том, как крупный британский банк Abbey National Bank, используя сверхбольшую БД Oracle, смог более удовлетворять потребности своих клиентов),

- Best case for health (описание информационной системы департамента здравоохранения компании 3M на основе Oracle/Tuxedo),

- Designing VLDBs for high availability (здесь достаточно детально показано как проектировать VLDB с высокой степенью готовности. Эта статья весьма полезна проектировшикам и АБД),

- The Oracle InterOffice Connection (эта статья предназначена для разработчиков интегрированных систем организаций. Oracle InterOffice предлагается в качестве основы такой системы),

- Managing Muitable Joins (мнение Виктора Абрамова об этой статье см. на стр. nn),

- Multilingual Oracle Human Resources 10SC (в этой статье описывается внедрение модуля Отдел Кадров пакета Oracle Applications в европейских филиалах компании Motorola c обеспечением использования местных языков),

- Oracle and the New Millennium (показано как проблема 2000 г. решается в БД и приложениях Oracle),

- Leverage your investments in IMS applications (в состав СУБД Oracle входит ряд интерфейсов для доступа к БД DB2 и IMS корпорации IBM. Здесь рассматривается один из них),

- Database Shutdown/Startup Kit (эта статья составлена на основе одной из глав новой книги Advanced Oracle Tuning and Administration (на www.osborne.com помещены отдельные главы этой книги), она содержит 7 рекомендаций, которые полезны как опытным, так, особенно, и начинающим АБД),

- Distributed by Design (это описание распределенной информационной системы крупной международной компании IKEA (Швеция). Система построена на основе продуктов Oracle, в качестве платформ для сервера Oracle используются IBM MVS, Digital Unix, IBM AIX, другие Unix-платформы),

- Timber! (в этой статье описана информационная система лесодобывающей компании AssiDoman (Швеция). Связь штаб-квартиры с удаленными точками реализуется по радиоканалам благодаря использованию Oracle Mobile Agents).

Главная тема ╧1,1997 - объекты.

- Objects in high gear (это статья общего характера об объектах и объектно-ориентированном программировании, к ней прилагается словарик по этой теме и дается ссылка на www.access.digex.net/~ikind/babel.html#O, где размещен подробный словарь),

- Objects in Education (здесь рассказывается о работающем приложении Project 2000 (БД Oracle 7.1.2)в San Joaquin Delta College, целиком написанном на языке SmallTalk (реализация фирмы ParcPlace-DigiTalk). Это крупнейшее в мире приложение, разработанное средствами объектно-ориентированного языка, и одно из самых удачных в этом классе приложений. Познакомиться с Project 2000 можно, посетив www.sjdccd.cc.ca.us),

- Objects for Health (в этой статье описывается приложение на языке SmallTalk, разработанное крупным дистрибютором фармацевтической продукции компанией McCesson),

- Objects at Oracle (в этой статье описывется эволюционный подход корпорации Oracle к реализации поддержки объектов в ее продуктах: Oracle 7.3, Oracle8, Sedona. Развитие WWW выдвинуло на первый план не просто объекты, а распределенные объекты, и корпорация Oracle предложила NCA - архитектуру сетецентрической обработки данных на основе обшепринятых стандартов),

- Reading, 'Riting, 'Rithmetic, & Relational (здесь рассказывается об информационной системе университета Сан-Франциско, в которой Oracle используется с 1986 г.),

- Object-Oriented Group Development (эта статья будет интересна руководителям групп разработчиков),

- Database Designer (здесь описывается новый продукт, о котором мы в OM/RE, ╧2/1996 опубликовали статью Леонида Сорокина "Designer, брат Designer'a").

- Exploring the Universe (в этой интересной статье рассказывается о том, как ЦЕРН(CERN), Центр европейских ядерных исследований, использует Oracle более 10 лет, начиная с версии 2),

- Have Scripts, Will Travel (в этой статье представлены 10 скриптов, которые по мнению Кевина Луни должны входить в джентльменский набор каждого АБД),

- Applications Determine the Future (перевод этой статьи напечатан в этом номере OM/RE).

Журналу Oracle Magazine в начале 1997 г. исполнилось 10 лет и в OM, ╧1,1997 напечатана серия материалов, посвященная этому юбилею.

Руководители различных подразделений корпорации Oracle рассказывают о прошлом и перспективах, о корпоративной культуре Oracle.

Помимо этого, в OM печатается много технических и деловых новостей, различные заметки. Как я отметил в OM/RE, ╧2/1996, на OM можно БЕСПЛАТНО подписаться, заполнив соответствующий бланк либо в печатном издании, либо на www.oramag.com, Web-сервере OM. На этом Web-сервере хранятся все номера OM за последние три года, здесь же ведутся рубрики Code Depot и Tip of the Week, которые являются постоянно пополняемыми читателями OM собраниями полезных программ.

2) Журнал Oracle Alliance (ранее Oracle Integrator)

Этот журнал предназначен прежде всего для компаний - партнеров корпорации Oracle по BAP, программе Делового союза Oracle. В каждом номере публикуется немало описаний решений на базе продуктов Oracle и ее партнеров. Коротко о содержании Oracle Alliance, ╧1/1997.

В рубрике Partner in Focus публикуется интервью с руководителем компании - партнера Oracle и несколько материалов о сотрудничестве этой компании с Oracle. В ╧1,1997 это интервью с Майком Руэтгерсом (Mike Ruettgers), руководителем компании EMC, изготовителя систем хранения данных, рассказ об информационной системе компании UMI, БД Oracle которой размером три терабайта размещена на шести системах Simmetrix 3000 компании EMC, а также описание информационной системы Transquest, отделения авиакомпании Delta Air Lines.

В рубрике Inside the Alliance напечатаны три материала. В первом представляется Oracle Alliance Online (alliance.oracle.com) - новый Web-узел для предоставления доступа к новейшей информации об Oracle и тысячах ее партнеров. Секция Solutions Showcase открыта для всех, секция For Partners Only как следует из ее названия только для партнеров, хотя часть информации этой секции открыта для всех (Login:guest Password:welcome). Второй материал рассказывает о конференциях партнеров Oracle, а третий о программе Cartridge Solutions Network для разработчиков картриджей в NCA (см. также www.oracle.com/devlink).

В рубрике Network Computing Architecture рассказывается достаточно подробно о NCA, о возможностях, которые рынок картриджей открывает для разработчиков, о первых разработках для этого рынка. Здесь же помещены интервью с Бонние Кратер (Bonnie Crater), вице-президентом компании Network Computer, Inc, дочерней компании Oracle, которая разрабатывает ПО для сетевых компьютеров (NC), и Джеффом Безосом (Jeff Bezos), руководителем самого большого в мире онлайнового книжного магазина (www.amazon.com). Завершает эту рубрику статья "Oracle and Java" Алана Бараца (Alan Baratz), президента компании JavaSoft.

В других рубриках рассматриваются различные аспекты взаимодействия Oracle и ее партнеров.

3) Журнал Profit

Это журнал о пакете Oracle Applications и предназначен он для руководителей организаций, руководителей ВЦ, аналитиков и проектировщиков. Его первый номер вышел в ноябре 1996 г., второй в январе 1997 г. (их можно скачать с www.oramag.com). Особенность этого журнала - внедрение, эксплуатация и сопровождение Oracle Applications рассматривается в тесной взаимосвязи с ведением бизнеса организацией-заказчиком.

В "Мир Oracle", ╧2/1996 изложены условия подписки на независимые от корпорации Oracle издания: Select (теперь можно подписаться через фирму АйТи), Oracle Developer, Oracle Informant и др. (см. Web-уголок ЕАГПО).

А теперь краткий обзор публикаций российской компьютерной прессы по тематике Oracle и сопутствующим темам.

1) Еженедельник PC Week/RE (www.pcweek.ru).

Все номера 1997 г. В ╧1 отметим три статьи Елены Монаховой:"Загадочный NC не может жить без инфраструктуры","Ария IBM в симфонии "Сетевой компьютер","Новую "птицу счастья" зовут NCA", а также статьи "Oracle8 сможет работать с данными объемом в несколько петабайт" и "Из частей - целое" (о стратегии Oracle в WWW). ╧3 - "Сетевые компьютеры: время пришло" (обсуждаются совместимость "тонких" клиентов и серверов, сравниваются архитектуры сетевых вычислений Sun, Oracle и Microsoft), "Acorn выпускает семейство недорогих сетевых компьютеров". ╧6 - "Oracle в Санкт-Петербурге" (об открытии офиса Oracle и президенте корпорации Рее Лэйне), "Биллинг как основа бизнеса" (о прикладной системе "Флагман" для телекоммуникационных компаний), "Что думают об NC на российских заводах" (специалист Уралмаша скептически оценивает NC, исходя из условий своего предприятия, и, наверное, прав - "Истина конкретна"). ╧7 - "Нет золотого ключика, нет рыбки золотой" (в этих заметках с выставки "Бухгалтерский учет и аудит" Oracle не упоминается, но речь идет о выборе, внедрении приложений масштаба предприятия в современных российских условиях), "Oracle на связи" (о продукте Oracle Mobile Agents архитектуры клиент-агент-сервер, позволяющем выполняться приложениям Oracle на сетях с фрагментами из низкоскоростных радио- и телефонных линий), подборка материалов по Unix и Windows NT, "Нужна ли российским банкам Internet?" (о семинаре "Internet и банки", участник которого фирма РДТЕХ (www.rdtex.ru) разрабатывает систему оплаты покупок в магазине с помощью кредитных карточек через Internet).

За недостатком места я не упоминаю публикаций в изданиях "Открытых систем" (www.osp.ru): "ComputerWorld-Россия", "СУБД" (этот журнал полезен всем специалистам, работающим с Oracle), "Мир ПК" (в ╧10,1996 напечатана статья "Oracle? Да это очень просто!" (Установка Oracle Server для Windows NT и Oracle Client под Windows95) и еженедельнике "ComputerWeek-Москва" (www.infoart.ru).

БОСС-КОРПОРАЦИЯ - российская система управления предприятием на базе Oracle

Российские программные системы управления предприятиями имеют сложную историю развития. Объективно это неразрывно связано с историей развития самого государства.

.............................

.....

..

В качестве системы управления базами данных, инструмента проектирования и разработки системы БОСС-КОРПОРАЦИЯ были выбраны программные продукты корпорации Oracle. Среди современных систем управления базами данных только СУБД Oracle обеспечивает единую архитектуру базы данных и может масштабироваться от портативного компьютера до сервера предприятия. СУБД Oracle7 обеспечивает доступ к любым данным, на любом сервере и от любого клиента. В Oracle7 полностью реализованы основные концепции открытых систем и реляционных баз данных. Технология, основанная на использовании продуктов Oracle, позволяет создавать сложные отраслевые корпоративные проекты, подходящие для использования в аналогичных структурах отрасли, и в то же время учитывающие индивидуальные особенности каждого предприятия.

Основываясь на опыте внедрения заказных проектов на базе системы БОСС-КОМПАНИЯ, мы пришли к выводу, что один из важных факторов обеспечения развития системы - поставка заказчику открытых модулей для наращивания, модификации, изменения и интеграции. При разработке системы БОСС-КОРПОРАЦИЯ мы не пошли по пути создания собственных инструментальных средств на базе Oracle. Как показывает практика и опыт общения с конкурентами, это процесс довольно трудоемкий и длительный. Кроме того, корпорация Oracle предоставляет такие средства, поэтому на всем протяжении цикла создания комплексной системы автоматизации специалистами компании АйТи используются средства разработки, относящиеся к семейству Oracle 2000 (Designer/2000, Developer/2000, Programmer/2000).

При проведении обследования для разработки заказного проекта на базе системы БОСС-КОМПАНИЯ использовался Design/IDEF 3.0. Использование Designer/2000 для тех же целей в проектах на базе БОСС-КОРПОРАЦИЯ дало ряд преимуществ, хотя возникли и некоторые проблемы. При работе со средствами моделирования и генераторами приложений все создатели информационной системы (эксперты по моделированию прикладных процессов, разработчики приложений и аналитики предметной области) пользуются единым хранилищем информации. Самодокументация и автоматическая генерация кода позволяют поддерживать единый стандарт и быстро понять устройство системы для каждого вновь прибывшего участника процесса разработки. Как показывает опыт разработки, с помощью Developer/2000 можно быстро и красиво создавать простые вещи. При создании сложных экранных форм, процесс получается слишком трудоемким. Если часть работ, например, по вызову списков, описанию связей перенести в Designer/2000, процесс можно значительно ускорить. Однако не все протекает так гладко, как хотелось бы. Как выяснилось в процессе разработки, эти продукты предъявляют очень высокие требования к оборудованию. 32 Mбайта оперативной памяти - необходимый минимум для работы Designer/2000, но даже при работе на компьютере с таким объемом памяти у разработчиков возникают некоторые проблемы, например, невозможно редактировать только что сгенерированную форму (техника <виснет>). Работа с Oracle CASE требует высокой квалификации программистов. Процесс обучения, даже для опытных специалистов в области разработки клиент-серверных приложений занимает несколько месяцев (в лучшем случае два-три месяца). Поэтому приходится тщательно и методично выращивать и готовить кадры для создания конкурентноспособных с аналогичными западными системами решений.

Несмотря на сложность разработки в среде Oracle, система БОСС-КОРПОРАЦИЯ продолжает развиваться. В настоящее время функционируют модули по ведению справочников (нормативно-справочная информация), Главная бухгалтерия, Управление персоналом и расчет заработной платы. Подходит к концу разработка типовых модулей по финансовому планированию, финансовому анализу, финансовому контроллингу, расчетам и основным фондам. На очереди создание типовых модулей по управлению проектами, управлению производством, управление закупками, управлению запасами, реализации. Входящий с состав системы модуль документооборота разработан на базе Lotes Notes, общепризнанного стандарта в области групповой работы. В системе предусмотрена стыковка этого модуля со всеми автоматизированными участками управления, работающими в реальном времени. Модуль документооборота обеспечивает маршрутизацию документов, электронную подпись, работу с приказами, распоряжениями, неструктурированными документами и пр.

Перспективные планы развития проекта БОСС-КОРПОРАЦИЯ - это создание целого ряда отраслевых решений для таких отраслей, как нефтегазодобыча, оптовая и розничная торговля продовольственными и промышленными товарами, химико-фармацевтическая промышленность, машиностроение и т. д. Отраслевые решения будут ориентированы на специфику, формирование стандартных выходных и отчетных документов, учет специфики документооборота, кроме того, будут включать специализированные рабочие места. Внедрение отраслевых решений обходится заказчику значительно дешевле заказных разработок и может осуществляться за короткий срок.

Первые внедрения системы БОСС-КОРПОРАЦИЯ на нескольких российских предприятиях будут осуществлены уже в первом полугодии 1997 г.

Тагир Яппаров, президент компания АйТи

Александр Миронов, вице-президент компания АйТи

тел./факс (095) 129-9012, e-mail a_mironov@itco.mak.su

Дополнение.

В газете PC Week/RE, ╧7/1996 напечатана статья Игоря Альтшулера "Нет золотого ключика, нет рыбки золотой" (стр. 6,8), в которой цитируется тезис Т. Яппарова и М. Каменновой о целесообразности интеграции западных и российских систем управления. Мы попросили Т. Яппарова и А. Миронова раскрыть этот тезис. - Редакция OM/RE

Если говорить о крупных российских корпорациях, включающих в себя десятки предприятий, то управленческая часть (верхний уровень) этих структур пока не может быть автоматизирован российскими системами. На этом уровне должны быть внедрены действительно отточенные и проверенные временем методологии, системы полноценного финансового планирования, контроллинга, анализа и прогнозирования, системы принятия решений, которые пока реализованы только в западных прикладных системах. Хорошие примеры таких систем - пакет Oracle Applications корпорации Oracle и пакет R/3 компании SAP. Но тиражировать эти системы на филиалы, закрывая весь процесс сверху донизу, то есть создавать вертикальное решение в наших условиях не представляется возможным. Аргументов немного, но они, как показывает практика, весьма убедительны. Это:

* Полная реорганизация бизнес-процессов. Внедрение таких систем предполагает полную перестройку процесса управления под учетную и управленческую схемы, заложенные в концерцию построения системы. Поэтому западные системы "безболезненно" внедряются только на предприятиях с западной системой управления и инвестициями, в организациях, имеющих иностранного аудитора.

* Стоимость проекта. Создание, внедрение и сопровождение такого вертикального решения измеряется десятками, а то и сотнями миллионов долларов.

* Сроки. Сроки внедрения вертикального решения даже на западном предприятии измеряется годами. В наших же условиях необходимо решение, которое в обозримый срок может принести экономический эффект и хотя бы частично окупить затраты на автоматизацию.

На наш взгляд оптимальным и выгодным решением в таких условиях является стыковка двух систем, интеграция западной системы на верхнем уровне управления с российской системой на нижних уровнях. Например, система БОСС-КОРПОРАЦИЯ, может не только стыковаться с пакетами Oracle Applications и R/3, но и полноценно заменить модули Бухгалтерского учета и Управления персоналом, входящие в состав этих пакетов, ибо БОСС-КОРПОРАЦИЯ разработана с учетом российской специфики, предоставляют пользователям возможность работать с привычными первичными документами и содержат все необходимые отчетные формы, разработанные ГНИ и Госкомтруда.

Предложение о такой интеграции может рассматриваться как временная стратегия. По оптимальным прогнозам стабилизация экономики будет достигнута в обозримом будущем. По крайней мере, пять лет - достаточный срок для российских разработчиков, чтобы предложить законченное решение, способное реально конкурировать с западными системами. Тогда можно будет говорить о приемлемых вертикальных решениях как с точки зрения методологии внедрения, так и ценовой политики.


Галина Антипина, Булат Гайфуллин

Российский каталог приложений клиент-сервер

Доведение программы до состояния тиражируемого "коробочного" ПО - это, безусловно, успех разработчиков. Коммерческий же успех зависит не только от функциональности и качества ПО, но и от ситуации на рынке, стратегии продвижения и прочих факторов, не последним из которых является информированность потенциальных покупателей.

Несколько лет назад фирма Interface Ltd. начала собирать информацию о тиражируемых программных продуктах, созданных с использованием сервера БД SQLBase и средства разработки приложений SQLWindows компании Gupta (ныне - Centura). По мере поступления информации выяснилось, что многие разработчики комбинируют решения различных поставщиков и, например, пишут клиентские части приложений на SQLWindows, используя сервер БД Oracle.

..

..

..

(У корпорации Oracle в СНГ около 100 партнеров и большинство из них разрабатывает приложения. В Oracle СНГ работу по составлению российского каталога приложений для среды Oracle ведет Виктор Чернов (vchernov@ru.oracle.com). На начало марта 1997 г. в этом каталоге содержалась информация по более чем 30 приложениям. Организации - пользователи Oracle, желающие использовать приложения из каталога фирмы Interface, должны учитывать, что практически все популярные средства разработки приложений помимо ODBC-драйверов имеют и прямые высокоэффективные драйверы к базам данных Oracle. Следовательно, имеет смысл рассматривать и приложения для других баз данных. Например, приложение, разработанное для баз данных SQLBase средствами SQLWindows, может быть достаточно просто настроено (не переделано!) на работу с базами данных Oracle, если разработчики не использовали расширений SQL присущих только SQLBase, и это (настройка, а не переделка приложения) будет наверняка иметь место, если разработчики использовали SQL92 стандарта ANSI. - Прим. ред.).

Мы будем рады пополнить наш каталог информацией о еще неизвестных нам тиражируемых клиент-серверных приложениях. Приглашение опубликовать информацию о своих приложениях уже получило более 5000 разработчиков. Приглашение регулярно размещалось в телеконференциях, а пресс-релизы были отправлены в компьютерные издания. Сам каталог был размещен в "Web-уголке ЕАГПО".

"Российский каталог приложений клиент-сервер", на наш взгляд, - наиболее полный справочник ПО для конечного пользователя. На сегодняшний день он включает информацию о 124 приложениях. Это - системы автоматизации банковской, офисной, торговой деятельности, системы комплексной автоматизации предприятий и бухгалтерского учета и т. д.

Информация размещается в каталоге бесплатно, сам каталог распространяется в электронном и печатном виде тоже бесплатно. Все желающие могут получить каталог в офисе фирмы Interface, а также на стенде фирмы на выставках WinExpo, NetCom, Comtek, UnixExpo, Информатика, Бухгалтерский учет и аудит, Торговые системы и оборудование, Биржевые и банковские системы и т. п.

Приглашаем разработчиков приложений опубликовать информацию о своих программных продуктах архитектуры клиент-сервер в нашем каталоге. На описание одного проекта в каталоге отводится пол страницы формата А4.

Информация в каталоге представляется в следующей форме:

* Название фирмы-разработчика.

* Описание проекта(ов): название; назначение; краткое описание функциональности системы; особенности, отличающие систему от аналогичных программных продуктов; техническая база.

* Используемые средства разработки клиентской части, CASE, генераторы отчетов.

* Используемая СУБД.

* Сетевая платформа.

* Состояние системы на текущий момент (можно прислать информацию о разработках, ввод которых в эксплуатацию планируется в ближайшие полгода).

* Данные для контакта с фирмой-разработчиком: адрес; телефон/факс; e-mail.

По всем вопросам, связанным с каталогом, обращайтесь

в фирму Интерфейс Ltd. к Антипиной Галине

Тел./факс: (095) 135-5500, 135-2519, e-mail: mail@interface.msk.su


От xBase к Oracle

Введение

В настоящее время многие организации используют приложения, созданные средствами "настольных" СУБД. В этой статье описывается несколько способов миграции таких приложений в среду Oracle. Я надеюсь, что эта информация поможет вам принять обоснованное решение по реинженирингу и доработке программных систем, используемых в ваших организациях.

Выбор средств разработки

Для создания приложений, взаимодействующих с БД xBase и Oracle можно выбрать различные средства разработки в зависимости от реализуемой задачи. Все эти средства можно разделить на четыре группы:

* Стандартные средства разработки xBase-приложений с возможностью специфического доступа к серверу БД Oracle

* Стандартные Windows -средства разработки xBase-приложений с возможностью доступа к серверу БД Oracle через ODBC-драйверы

* Средства разработки клиентских мест Oracle с доступом к xBase-источникам данных через ODBC-драйверы

* Средства разработки приложений с универсальными средствами доступа к различным источникам данных

..

..

..

..


Генератор форм Designer/2000 - миф и реальность

Ольга Горчинская, Ольга Морозова,

фирма ФОРС, Москва

Генераторы приложений являются наименее опробованной и вызывающей наибольшие споры частью Designer/2000. До сих пор подвергается сомнению возможность автоматизации сложного и творческого процесса создания программ, реализующих интерфейсную часть приложения. Регулярно появляющиеся в печати и на конференциях работы с оптимистическим названием о 100% генерации не всегда убеждают разработчиков, поскольку в них не дается четкого представления о реальных возможностях генерации. Как правило в статьях обсуждаются проблемы, легко решаемые с помощью Designer/2000, но почти ничего не говорится об ограничениях.

В данной статье мы попытались проанализировать возможности генератора форм для Oracle Forms 4.5 с целью дать более объективное представление о том, что можно и что трудно сделать средствами автоматической генерации без последующей доработки.

В первой части статьи кратко описывается процесс генерации форм, а во второй выделяются типовые задачи построения экранного интерфейса, для каждой из них описываются возможные решения средствами Designer/2000 и указываются ограничения.

..

..

..


"Подземелья" Oracle Express

Станислав Сидоров

ФОРС, старший эксперт отдела разработки банковских систем,

тел. 973-4308, e-mail: sidorov@fors-co.msk.su

В настоящее время, на мой взгляд, сложилось ошибочное мнение о простоте использования OLAP для разработки систем поддержки принятия решения (СППР или DSS). Простым, без сомнения, является использование готового приложения, процесс исследования многомерной базы данных (МБД) с помощью таких средств, например, как Express Analyzer. Однако это совсем не относится к процессу разработки приложения DSS. Цель статьи - показать разработчику приложения (именно для этой катагории людей предназначается статья), что его ожидает в процессе разработки, что лежит в "подземельях" Oracle Express. Это не выискивание трудных мест, это попытка анализа процесса разработки реального приложения и предлагаемые в этой статье рекомендации для решения возникающих проблем не претендуют на "истину в последней инстанции".

Это приложение предназначенно для оценки деятельности банка на основе информации, поступающей от его филиалов. Здесь мы имеем обычную схему развития аналитической системы: от традиционной статической DSS-системы (приложение Oracle на основе регламентированных запросов), к OLAP-приложению, реализующему динамический многомерный анализ данных по технологии Oracle Express [3].

Все проблемы этапа накопления информации, решаются в рамках системы обработки данных (СОД, это отдельное приложени Oracle), и не рассматриваются в данной статье.

Для содержательной иллюстрации возникающих задач и способов их решения приведем фрагмент схемы базы данных СОД (Рис. 1). Не вдаваясь в подробности приведенной схемы кратко поясним ее смысл. От филиалов банка поступают оборотно-сальдовые ведомости (ОСВ), хранящиеся в таблице BALANCES. Для непосвященных - это шесть "магических" чисел, характеризующих финансовое состояние любой организации (строка балансового отчета): входящий остаток по дебету и кредиту, обороты по дебету и кредиту и исходящий остаток по дебету и кредиту. Каждая строка ОСВ имеет набор характеристик, определяющих: дату поступления, а так же филиал, периодичность поступления, номер плана счетов, валюту и вид плана счетов по соответствующим справочникам.

...

...

....


Виктор Абрамов,

научный редактор OM/RE, ведущий программист ИВЦ АИС,

тел. (095) 200-8349, e-mail abr@ivcais.msk.su

Оптимизация SQL

Книга под таким названием вышла из-под пера Питера Гулутзана и Труди Пельцер в 1995 г. и в том же году в журнале <Мир Oracle> ╧7/1995 была напечатана аннотация на эту книгу.

Собственно оптимизации запросов посвящена только гл. 7, в которой приведены 17 правил построения запросов, выведенных на основе опыта (Optimization Rule-of-Thumb). С интересом прочитав эту главу, я задумался, в какой степени эти правила справедливы для Oracle? Ведь авторы привели результаты для трех разных СУБД (Oracle не упоминался), причем эти результаты часто отличались друг от друга. Результаты были приведены в процентах, но ведь все понимают, что повышение скорости выполнения запроса даже на 1000% не слишком существенно, если этот запрос и так выполнялся не более 0,1 c.

Oracle7 имеет свой собственный оптимизатор, который строит план выполнения запроса либо в соответствии с синтаксическими правилами SQL (Rule), либо по стоимости выполнения (Cost-оптимизатор). Всегда ли при построении плана выполнения оптимизатор будет учитывать предлагаемые в этой книге рекомендации? Каких из этих 17 правил действительно стоит придерживаться?

Для проведения экспериментов мне понадобились таблицы большего размера, чем в приводимых в книге примерах (Oracle все-таки!).

Кроме сравнения времени выполнения я сравнивал и план выполнения запросов, который можно построить с помощью команды EXPLAIN PLAN или получить, используя утилиту TKPROF (я использовал EXPLAIN PLAN). Эксперименты проводились с Personal Oracle7 версия 7.2.2.3.1 под Windows95 на ПК с Pentium-100 и 32 Мб ОЗУ. Результаты измерений приводятся в секундах с точностью до 1/100 (среднее из трех замеров). Чтобы на результаты экспериментов не накладывалось время вывода на экран монитора большого числа строк, каждый запрос выполнялся внутри анонимного PL/SQL-блока без вывода результатов запроса.

..

..

..


Переписка с читателями

Наш читатель Владимир Трусевич (Глобо-Центр, г. Минск) пишет:

"В OM/RE ╧ 2/1996 на стр. 45 есть заметка об ошибке "Не гарантируется, что ваша функция не изменит таблицу БД" в связи с использованием в теле хранимой функции переменной типа RECORD.

Я столкнулся с такой же ошибкой при использовании пакета в DML-операторах. Ситуацию исправляет добавление в объявление пакета следующей строки:

pragma restrict_references( <Имя функции>, WNDS, WNPS );

Собственно вопрос: ЧТО ЗНАЧИТ PRAGMA ... ?"

На вопрос отвечает научный редактор журнала Виктор Абрамов:

Конструкция PRAGMA позаимствована из языка Ада. В PL/SQL встречаются только две директивы PRAGMA: EXCEPTION_INIT и RESTRICT_REFERENCES.

Прагма - это директива для компилятора PL/SQL.

Чтобы самостоятельно обрабатывать некоторые внутренние исключения, Вы должны дать имена соответствующим этим исключениям кодам ошибок. Для этого используется прагма EXCEPTION_INIT:

DECLARE

имя_исключения EXCEPTION;

PRAGMA EXCEPTION_INIT(имя_исключения, код_ошибки_ORACLE);

...

Оператор PRAGMA должен использоваться в декларативном разделе блока (подпрограммы). Имя_исключения - это идентификатор типа EXCEPTION, который должен быть определен до прагмы, например:

DECLARE

insufficient_privileges EXCEPTION;

PRAGMA EXCEPTION_INIT(insufficient_privileges, -1031);

BEGIN

...

EXCEPTION

WHEN insufficient_privileges THEN

<действия по обработке ошибки ORA-1031>

WHEN OTHERS THEN

<действия по обработке всех неописанных исключений>

END;

Прагма RESTRICT_REFERENCES сообщает компилятору, что Вы уверены в том, что Ваша функция удовлетворяет необходимым требованиям или даже превышает их. Прагма RESTRICT_REFERENCES должна находиться в спецификации пакета после описания соответствующей функции (но не в теле пакета). Синтаксис этой директивы следующий:

PRAGMA RESTRICT_REFERENCES

(имя_функции, WNDS [, WNPS] [, RNDS] [, RNPS])

После имени функции следуют четыре кода, которые означают:

WNDS (Writes No Database State) - Утверждение, что функция не модифицирует

таблицы базы данных

WNPS (Writes No Packages State) - Утверждение, что функция не модифицирует

пакетные переменные

RNDS (Reads No Database State) - Утверждение, что функция не будет читать

таблицы базы данных

RNPS (Reads No Package State) - Утверждение, что функция не будет читать

пакетные переменные

Обязателен только код WNDS, который означает, что функция не будет выполнять

операторы INSERT, UPDATE, DELETE.

Пример:

PACKAGE my_package

IS

FUNCTION my_func(param_1 IN VARCHAR2) RETURN NUMBER;

PRAGMA RESTRICT_REFERENCES (my_func, WNDS, RNDS);

END my_package;

В упомянутой же Владимиром Трусевичем ситуации речь шла об обычной хранимой функции, а не о пакете, следовательно, там прагма RESTRICT_REFERENCES помочь не могла, поскольку ее просто некуда вставить (нет спецификации пакета).

Стивен Фейрнстайн

DBMS_UTILITY: встроенный пакет утилит общего назначения

(DBMS_UTILITY, The Miscellaneous Build-in Package,

by Steven Feuernstein, ORACLE INTEGRATOR, mart/april 1996)

От научного редактора OM/RE Анатолия Бачина: эта статья продолжает серию публикаций, начатую в журнале "Мир Oracle" по пакетам процедурной опции Oracle7. Сводка DBMS_пакетов приводится в статье Майка Олта "Использование процедурной опции Oracle7" (N4/1995), примеры применения пакета DBMS_PIPE - Т.Херст "Серверы приложений: эксплуатация каналов баз данных Oracle7" (N2/1995), Д.Бикли "Взаимодействие приложений..." (N3/95) и А.Е.Лейтес, П.А.Аншуков "Серверы сообщений на основе каналов баз данных Oracle" (N4/95), пакета DBMS_SQL - С.Бобровски "Динамический SQL в программах PL/SQL" (N3/1995) и Виктора Абрамова "Пример использования пакета DBMS_SQL в SQL*Forms" (N1/1996) (тексты этих статей размещены в Web-уголке ЕАГПО). Этот список продолжает статья Алексея Данченкова в этом OM/RE.

Стивена Фейрнстайна, автора книги "ORACLE PL/SQL Programming" (издательство O'Reilly and Associates), представлять нашему читателю не надо. Мы практически в каждом номере журнала с благодарностью обращаемся к его публикациям. Думаю, что для многих наших читателей изучение и применение PL/SQL "происходит" по С.Фернстайну. Мы же постараемся и далее оказывать им в этом посильную помощь.

PL/SQL превосходит сам себя, когда предоставляет встроенную функциональность. Не правда ли, любой язык программирования ценен многообразием своего набора встроенных функций, которые помогают Вам выполнить заданную работу. Нужно ли Вам вычислить гиперболический тангенс? Примените функцию TANH. Хотите ли Вы преобразовать символьную строку в дату? К Вашим услугам TO_DATE. Вашей программе надо выделить часть строки? Пожалуйста, используйте SUBSTR.

Но, применяя PL/SQL, Вам становятся доступны встроенные пакеты Oracle, что очень и очень существенно повышает мощность и расширяет возможности языка PL/SQL. Эти пакеты предлагают как

.....

..

..

Несколько примеров применения пакетов DBMS_JOB и DBMS_PIPE

В статье приведены примеры применения пакетов DBMS_PIPE и DBMS_JOB, поставляемых вместе с сервером БД Oracle, в приложениях, построенных на основе архитектуры клиент-сервер. В приведенных примерах автор показал как эти пакеты можно использовать для:

* организации динамического обмена данными между клиентским приложением и хранимой процедурой в процессе исполнения последней на сервере БД (например, отслеживание клиентом количества строк, обработанных хранимой процедурой к данному моменту, для организации так называемого Progress-bar'а);

* прерывания клиентом исполнения длительной процедуры на сервере БД;

* организации постоянных пользовательских процессов на сервере БД и т. д.

Проблема, которая натолкнула меня на мысль использовать пакеты DBMS_JOB и DBMS_PIPE в моем приложении, весьма распространена среди разработчиков приложений. Она заключается в том, что, когда клиентское приложение активизирует выполнение некоторой хранимой процедуры или функции на сервере, то данное приложение блокируется до тех пор, пока не закончится выполнение этой процедуры и управление не возвратится клиентскому приложению. Эта проблема часто возникает в приложениях, написанных с использованием Oracle Forms из комплекта Developer/2000 или SQL*Forms 3.0. Мне же хотелось, чтобы мое приложение выводило на экран пользователя информацию о ходе выполнения хранимой процедуры БД, которая обрабатывает большой объем данных на сервере БД, например, в виде:

Очевидно, что вывод подобной информации пользователю при обработке данных клиентским приложением не представляет проблемы (пример такого решения см. В "Мир Oracle", ╧7/1995, с. 30. - Прим. ред.).

Одним из решений изложенной проблемы, а также ряда других проблем (некоторые из которых описаны в начале этой статьи) является использование стандартных пакетов DBMS_JOB и DBMS_PIPE. Ниже описаны эти пакеты и приведены примеры их применения.

..

..

..

Современные задачи администрирования баз данных Oracle

Мне представляется, что с появлением Personal Oracle и Oracle7 Workgroup Server существенно меняются взгляды на вопросы и задачи администрирования баз данных Oracle. С одной стороны, как в старые добрые времена Oracle5 под MS-DOS, конечный пользователь Personal Oracle снова становится владельцем базы данных с возложением на себя обязанностей АБД.

С другой стороны, в персональных и небольших системах для рабочих групп функции

"классического" администрирования значительно упростились, благодаря повышению надежности вычислительных средств, их производительности, резкое увеличение емкости дисков. Так что не будет большим преувеличением сказать, что:

а) пользователь Personal Oracle (группа пользователей Oracle7 Workgroup Server) не использует всей производительности своей вычислительной установки;

б) слишком мала вероятность повреждения базы данных по техническим причинам и ее восстановление все более требуется только в результате ошибочных действий пользователей.

Поэтому классические задачи администрирования базы данных Oracle: настройка производительности и реализация плановых процедур резервирования и восстановления как бы уходят в тень. Если к этому еще добавить наличие дружественных графических интерфейсов основных административных функций (включая мониторинг и дефрагментацию) под различными версиями Windows, то может создаться впечатление об уходе профессии АБД Oracle, как таковой.

Но позволю себе высказать как бы афоризм: "Сотня домашних кошек не заменят одного тигра (в джунглях) и - наоборот." Не кажется ли Вам, что в настоящее время мы поднялись на определенный уровень развития, и необходимо немного оглядеться и хорошенько на нем освоиться, прежде чем штурмовать следующие вершины. И если во многих, особенно только начинающих развиваться, малых и средних системах баз данных еще какое-то время можно остаться на уровне "классического" и даже упрощенного администрирования, то в продвинутых

средних и больших системах, по моему, уже назревают административные задачи следующего уровня сложности.

Можно с уверенностью сказать, что в настоящее время определился квалификационный уровень знаний по системе Oracle [1], на котором базируются различные с ней связанные специальности. Такой квалификацией, на мой взгляд, является понимание архитектуры взаимодействия ресурсов: собственно пользователей, их информационных объектов, распределения дисковой памяти, деятельности процессов Oracle в операционной среде. Это -

как бы общий язык, на котором должны общаться все имеющие отношение к Oracle. (Важно повторить, что этот язык универсален, не зависит от платформы. Конкретные особенности платформ имеют значение только для АБД.)

На этом уровне должны находиться менеджеры, отвечающие за информатизацию предприятий и компаний. Совокупность знаний по архитектуре Oracle позволяет им понимать своих АБД и разработчиков приложений, принимать правильные решения по направлениям совершенствования информационной системы, при закупке новых программных продуктов, при покупке новой техники.

"Ниже" этого уровня - специалисты-потребители информации и различного рода операторы, работающие с готовыми приложениями и полностью сопровождаемые разработчиками, администраторами, системными интеграторами.

"В бок" - разработчики приложений, архитекторы и администраторы данных (по систематизации Т.Кокса [2]), поскольку у них имеются собственные функции и задачи, наборы инструментария, а также свое собственное место в жизненном цикле базы данных. Необходимо их тесное взаимодействие с АБД в процессах привязки проектов и приложений к реалиям среды конкретной базы данных. Возрастание количества внедренных в информационной системе приложений вызывает качественные изменения во внутренней структуре конкретной базы

данных (советую обратиться к статье М.Гохмана [3]).

"В другую сторону" - собственно АБД Oracle, для которых основными задачами становятся все более углубленное изучение как архитектуры и новых возможностей системы Oracle, консультирование пользователей всех уровней по этим вопросам, так и участие в проектировании распределенной базы данных, а также управление общими для системы

ресурсами, распределенными транзакциями, связями баз данных, дополнительными

процессами в операционной среде, параллельными экземплярами Oracle, ... Начало же должно быть вполне классическим - "20 заповедей начинающего Администратора Базы Данных" [4]. (И эти классические задачи, наверно, всегда будут с нами!)

Таким образом, по моему мнению, на нашем отечественном уровне развития современными задачами администрирования баз данных Oracle являются:

- углубленное изучение функционирования, динамической производительности базы данных [5];

- построение корпоративной (общей для многих пользователей) базы данных, которая является вместилищем вновь внедряемых в информационную систему приложений;

- управление многими десятками и сотнями прописанных в базе пользователей, определение их полномочий, ограничений, ролей (см. также [6]);

- построение эффективных систем обеспечения безопасности, разграничения доступа, регистрации и прослеживания (audit) событий данных;

- освоение опций параллельных запросов и параллельных серверов;

- сопровождение распределенных (различного уровня) баз данных, начиная с динамики пульсирования журналов моментальных копий (snapshot log) до мониторинга и восстановления распределенных транзакций.

Большинство из перечисленных задач так или иначе связаны с сетевой проблематикой. И это не случайно. Опять же по моему мнению, следующий уровень административной деятельности будут составлять управление многопротокольными преобразователями, web- и multimedia- серверами, серверами data warehouse, что без освоения сегодняшнего сетевого уровня сделать будет очень затруднительно.

А впереди Oracle8! При заявленной гарантии переносимости всех прикладных разработок, что он с собой принесет АБД, сейчас, наверно, никто не скажет.

Литература:

1. Steven M. Bobrowski "Mastering Oracle7 & Client/Server Computing", SYBEX, San Francisco, 1994; русский перевод - С.Бобровски "Oracle7 и вычисления клиент-сервер", "ЛОРИ", 1995).

2. Tom Cox "Some Thoughts on Data Administrators, DBAs, and Data Architects", ORACLE INTEGRATOR, vol.7, No.2, march/april 1996; русский перевод - OM/RE, ном. 1, лето 1996)

3. Mark Gokman "Data: To Share Or Not To Share", SELECT, vol.3, No.2, january 96; русский перевод - "Мир Oracle", ном. 4, 1996)

4. Richard J. Niemiec "20 Tips for the bigining DBA", SELECT, vol. 2, No 4, July 95; русский перевод - "Мир Oracle", ном. 7, 1995)

5. Dave Ensor "Getting information rather than data from V$ objects" (BMC Software. Доклад на конференции EOUG-96; русский перевод - "Мир Oracle", ном. 4, 1996)

6. Kevin M. Loney "System-Level Roles in ORACLE7. Going Beyond CONNECT, RESOURCE, and DBA", ORACLE MAGAZINE, summer 1994; русский перевод - "Мир Oracle", ном. 3, 1995)


Александр Любушкин

Минимизация возможных потерь данных в ORACLE

Введение

Защита данных от возможных потерь всегда была одной из главных задач администратора базы данных (АБД) и одним из главных требований руководства организации.

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

В предлагаемой читателю статье сделана попытка на простом примере показать простую и достаточно универсальную методику построения защиты данных, следуя которой АБД (не будучи экспертом в области <BACKUP & RECOVERY>) сможет настроить ORACLE так, чтобы быть уверенным в том, что он сделал свою систему защищенной (если не от всех, то, по крайней мере, от большинства неприятностей). В статье описана одна конкретная стратегия, алгоритм ее внедрения и программы, которые могут стать <отправной точкой> для AБД еще до того, как он определит оптимальные решения этих проблем для своей организации.

Комментарий научного редактора

Выбор стратегии резервирования и восстановления своей базы данных Oracle является квалификационной работой для каждого "вошедшего в форму" АБД. Главное здесь не только научиться применять классические технологии, описанные в документации и великолепной книге Rama Velpuri "Oracle Backup & Recovery Handbook" (Osborne McGraw-Hill, 1995, есть в Книжной лавке ЕАГПО), но и ответить на конкретные требования приложений, работающих с этой базой данных.

Именно с этой точки зрения предлагаемая статья А. Любушкина (особенно ее заключение) представляет наибольший интерес. Автор представил свою стратегию, имеющую вполне классическое основание и отвечающую конкретным условиям деятельности конкретной организации, и показал, что его опыт может быть перенесен легко и просто. Автор предлагает красивое решение - переключение файлов (произвольного объема) log-журнала по завершению каждой (!) транзакции. Тем самым, внезапное разрушение всех (!) носителей, включая, в первую очередь, файлы журнала, ведет к потере данных не более одной транзакции. Напрашивается решение о применении журнала в нескольких нитей.

Хочется отметить любопытный пассаж о двух экранах текста в минимальном 2К-байтном файле log-журнала. Не надо только забывать, что при переключении журнальных файлов создаются контрольные точки, что в журнал пишется всякая всячина, скажем, содержимое сегментов отката. Не забудем еще достаточно тривиальное, но редко упоминаемое положение, что суммарный размер оперативных файлов журнала должен обеспечить размещение всех изменений, сделанных самой большой транзакцией. Одновременно обращаю внимание читателей на статью Туна Коппелаарса "Исправление поврежденных блоков в базе Oracle" в "Мир Oracle" ╧3/96, где приводятся рекомендации по преодолению ситуации "Block Corruption", о которой говорит А. Любушкин. (Возможно, что метод Коппелаарса не сможет удовлетворить требования по времени восстановления после сбоя базы данных по А. Любушкину.)

Одним из решений обеспечения безопасности данных и технологии восстановления поделился на Oracle-клубе Илья Баштанов (АОЗТ "Коралл"). Он смоделировал на Oracle7.1/7.2 то, что в Oracle7.3 стало называться базой данных STANDBY. Суть технологии И. Баштанова заключается в передаче на резервную базы данных только что накопленных и заархивированных журнальных файлов и регулярное проведение (через 30-60 мин или по каждому файлу) процедуры восстановления. Таким образом, его база "отставала" от основной на изменения данных не более одного журнала. В Oracle7.3 опция STANDBY нашла свое полное оформление в командах и режимах.

Для разнообразия могу предложить и собственное решение. Если надо сохранять не всю базу, а только данные нескольких наиболее важных таблиц, то можно организовать резервную базу "быстрых" снапшотов основных таблиц с небольшим (в несколько минут) интервалом обновления посредством журналов снапшотов. Такая база может находиться на той же машине, на другой машине локальной сети, в любом достижимом, например, по оптоволокну месте. Если (NEXT (SYSDATE + 10 / 1440)), то обновление таблиц-копий будет проводиться через каждые 10 мин. То есть база снапшотов "отстает" от основной всего на 10 мин. При разрыве связи между базами или машинами снапшоты "доливаются" с прерванного места, а журналы снапшотов в основной базе не разрастаются. Все решения классического резервирования/восстановления, что основной базы, что базы снапшотов, остаются в силе.

Анатолий Бачин

..

..

..


Ленг Ленг Тан

Наиболее важные аспекты управления транзакциями и сегментами отката

1.0. Реферат

Правильное управление транзакциями и сегментами отката может стать одним из способов достижения хорошей производительности системы. Эта статья содержит полезные рекомендации, описывает средства и технологические приемы, применяемые в Oracle7.2 для конфигурирования системы с тем, чтобы обеспечить хорошую эффективность по целостному чтению (consistent read performance), высокий коэффициент одновременности выполнения транзакций (transaction concurrency rates) на DML-операциях, своевременное восстановление транзакций (timely transaction recovery) и эффективность управления сегментами отката (rollback segment management). Эти приемы, применяемые с целью улучшения переменных параметров управления транзакциями, могут быть использованы для настройки различных приложений в соответствии с их системными и эксплутационными требованиями.

..

..

..


В OM/RE ╧1/1996 были опубликовали статьи Амира Семенеева (менеджера Oracle СНГ) "Служба технической поддержки корпорации Oracle" и Сергея Мосина (заведующего отделом технической поддержки НПВП ФОРС) "Поддержка национальных языков в Oracle", в OM/RE ╧2/1996 - статья Сергея Кокета (технического аналитика Oracle СНГ) "Как работает NLS в Oracle". Мы предложили специалистам Oracle СНГ и фирм-партнеров корпорации Oracle, оказывающих техническую поддержку, отобрать два-три вопроса/ответа в стиле FAQ (Frequently Asked Questions - Часто задаваемые вопросы). Предлагаем их Вашему вниманию.

Редакция OM/RE

РДТеХ (г. Протвино Московской обл.)

1. Предусмотрена ли при работе с базами данных Oracle возможность ввода и вывода русскоязычной информации в кодировке КОИ-8?

Такая возможность предусмотрена, начиная с версии 7.3 сервера Oracle7. Для этого на клиентском рабочем месте необходимо определить компонент кодировка переменной окружения NLS_LANG как CL8KOI8R. Пример значения NLS_LANG: AMERICAN_AMERICA.CL8KOI8R. Перед включением кодировки КОИ-8 необходимо убедиться в том, что эта кодировка допустима, и подсоединившись к базе данных как SYSTEM (или SYS) через SQL*Plus выполнить следующий запрос:

SQL> select * from V$NLS_VALID_VALUES where VALUE like '%KOI%';

Ожидаемый результат запроса:

PARAMETER

----------------------------------------------------------------

VALUE

----------------------------------------------------------------

CHARACTERSET

CL8KOI8R

2. Почему не работает UTL_FILE, пакет PL/SQL?

Появившийся в версии 7.3 сервера Oracle7 пакет PL/SQL UTL_FILE (обеспечивающий возможность чтения/записи файлов из программ на PL/SQL) не работает, если директории, содержащие обрабатываемые файлы, не были предварительно авторизованы в файле параметров init.ora соответствующей базы данных (параметр utl_file_dir). Отменить контроль авторизации можно, указав в файле параметров utl_file_dir=*. Подробнее о пакете UTL_FILE написано в руководстве "Сервер ORACLE7. Руководство разработчика приложений. Версия 7.3."

3. Возможно ли одновременное подсоединение нескольких пользователей (через SQL*Net) к базе данных Personal Oracle?

Одновременное подсоединение нескольких пользователей извне (через SQL*Net) к базе данных Personal Oracle возможно. Для этого необходимо указать параметры PRESPAWN_MAX и PRESPAWN_LIST в файле listener.ora на том компьютере, где установлен Personal Oracle. Подробнее о параметрах PRESPAWN_MAX и PRESPAWN_LIST написано в руководстве "Знакомство с SQL*Net."

Руководитель службы технической поддержки RDTeX

Сергей Мисюра.


Oracle СНГ (г. Москва)

...

LVS (г. Москва)

...

ФОРС (г. Москва)

...

ЛИВС (г. Санкт-Петербург)

...

Trans-Ameritech

...

Анкей

...