Домой Многолетние цветы Системы управления базами данных и поддержки информационных хранилищ (IBM DB2). Варианты поставки Sybase eaServer. Автоматические средства сканирования

Системы управления базами данных и поддержки информационных хранилищ (IBM DB2). Варианты поставки Sybase eaServer. Автоматические средства сканирования

DB2 (в русском языке произносится «диби́ два», также распространена калька с английского «диби́ ту») - семейство программных продуктов в области управления информацией компании IBM . Чаще всего, ссылаясь на DB2, имеют в виду реляционную систему управления базами данных DB2 Universal Database (DB2 UDB), разрабатываемую и выпускаемую компанией IBM .

Несмотря на благожелательное отношение к операционной системе Linux , которая распространяется под лицензией с открытым исходным кодом, корпорация IBM пока не планирует открывать коды своей СУБД DB2. Об этом заявил директор центра IBM Linux Technology Джим Васко на прошедшей (апрель 2011 года) в Сан-Франциско ежегодной конференции Linux Foundation Collaboration Summit. Внутри IBM идет постоянная борьба между представителями разных подразделений, пояснил Васко . В одних случаях выбор в пользу Linux или Windows означает снижение доходов от продаж программного обеспечения, но рост доходов от услуг, а в других случаях речь может идти о доходах от продажи оборудования. Приходится искать оптимальное решение, заключил он. Переход под контроль Oracle пакетов с открытым кодом, разрабатывавшихся в Sun Microsystems , создал определенные проблемы для IBM , сообщил Васко. Oracle пытается убедить клиентов обменять оборудование IBM на ее собственные серверы Exadata и СУБД Oracle. В 2011 году директор Linux Foundation Джим Землин ожидает развития на базе Linux специализированных высокопроизводительных систем наподобие IBM Watson и готовых устройств, требующих минимальной настройки.

Реализации

В настоящее время, помимо коммерческих продуктов семейства, IBM распространяет также бесплатный дистрибутив DB2 Express-C для платформ Linux (x86, x86-64, POWER), Windows (x86, x86-64), Solaris (x86-64), Mac OS X (x86-64 beta). Бесплатная версия имеет ограничения на использование для работы СУБД не более одного двухъядерного процессора и 2 Гбайт оперативной памяти (общее количество процессоров и памяти в системе может быть любым, но ресурсы сверх указанных ограничений не будут использоваться СУБД).

2017: Анонс дополнений для контроля над данными

Db2 on Cloud

Обновленное решение Db2 on Cloud является полностью управляемым сервисом, доступным в IBM Cloud .

Среди характеристик технологии:

  • Динамичная шкала («слайдер») для установления параметров производительности и объема памяти - с помощью клика мышкой можно мгновенно менять масштаб, увеличивая или уменьшая производительность обработки данных и необходимый объем оперативной памяти, таким же способом можно увеличить объем памяти системы хранения информации;
  • Веб-консоль - помогает заказчикам быстрее освоить сервис и ускорить работу с ним.

В целом решение Db2 on Cloud позволяет избежать трудоемкого процесса согласования и закупки дополнительных вычислительных ресурсов и дополняет IBM Db2 Hosted, версию базы данных , размещенную в IBM Cloud.

Db2 on Cloud Benchmark

DB2 Analytics Accelerator

Версии

2017: JSON и HTAP

DB2 10 представляет собой первое существенное обновление СУБД за последние несколько лет: 10-я версия системы для z/OS, правда, вышла в 2010 году, но этот релиз предназначен для одновременно Linux , Unix и Windows систем.

Оба продукта содержат новый функционал. DB2 теперь поддерживает формат RDF (Resource Description Framework), а InfoSphere может взаимодействовать с развертываниями Apache Hadoop . В числе других улучшений в DB2, в частности, можно отметить ускорение процессов резервного копирования и ввода-вывода.

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

Новая функция под названием time travel позволяет более эффективно управлять временными данными, у пользователей 10-й версии для z/OS она имела большой успех. С ее помощью пользователь или программа могут изучать данные в контексте времени их существования в СУБД по заданным периодам. Использование таких средов актуально для аналитики.

DB2 10 может быть загружена бесплатно для использования в промышленном окружении на не более чем двух процессорных ядрах и 2Гб памяти. Более функциональные версии обойдутся в сумму начиная от $6180, куда входит и стоимость годового обслуживания. Стоимость InfoSphere базируется на количестве процессоров или объеме хранимых данных, базовые версии обойдутся в порядка $40 тыс за Тб.

IBM DB2 10.5 версия

История

DB2 имеет долгую историю и, как некоторые считают, стала первой СУБД , использующей SQL.

С 1975 по 1982 год прототип DB2 разрабатывался в IBM под названием System Relational, или System R. Язык SQL впервые был реализован именно в IBM System R, но эта система имела исследовательский характер, а коммерческий продукт, включающий SQL, первой выпустила компания Oracle в 1979 году.

СУБД DB2 получила своё название в 1982 году, когда был выпущен первый коммерческий релиз для VM под названием SQL/DS, и затем релиз для MVS под названием DB2. Долгое время наряду с «DB2» употреблялся вариант «Database 2», также являющийся торговой маркой IBM . По всей видимости, имелось в виду, что это вторая флагманская СУБД IBM после старой иерархической СУБД IMS.

Развитие DB2 уходит корнями в начало 1970-х, когда доктор Э. Ф. Кодд, работавший на IBM , разработал теорию реляционных баз данных и в июне 1970 года опубликовал модель манипуляции данными. Для воплощения этой модели он разработал язык реляционных баз данных и назвал его Alpha. IBM предпочла передать дальнейшую разработку группе программистов, неподконтрольной доктору Кодду. Нарушив некоторые принципы реляционной модели, они реализовали её как «структурированный английский язык запросов», сокращённо SEQUEL. Поскольку SEQUEL было уже зарегистрированной торговой маркой, название сократили до SQL - «структурированный язык запросов», и таким оно осталось по сей день.

Таким образом, исторически СУБД DB2 возникла из продуктов DB2 для MVS (потомком которого является DB2 for z/OS) и родственного ему SQL/DS для VM (потомок - DB2 Server for VSE & VM). В дальнейшем другим коллективом разработчиков в IBM был реализован сервер OS/2 EE Database Manager, впоследствии эволюционировавший в DB2 v2 для OS/2, AIX и затем Windows , а потом в DB2 UDB (его потомок - DB2 for Linux , UNIX and Windows). Ещё одним коллективом была выполнена интеграция архитектуры DB2 со встроенной базой данных AS/400 (потомок - DB2 for i). IBM постепенно движется по пути интеграции всех этих веток.

Особенности

К отличительным особенностям DB2 относится диалект языка SQL, определяющий, за редкими исключениями, чисто декларативный смысл языковых конструкций, и мощный многофазовый оптимизатор, строящий по этим декларативным конструкциям эффективный план выполнения запроса. В отличие от других диалектов SQL, в диалекте SQL DB2 практически отсутствуют подсказки оптимизатору, мало развит (а долгое время вообще отсутствовал) язык хранимых процедур, и, таким образом, всё направлено на поддержание декларативного стиля написания запросов. Язык SQL DB2 при этом является вычислительно полным, то есть потенциально позволяет в декларативной форме определять любые вычислимые соответствия между исходными данными и результатом. Это достигается в том числе за счёт использования табличных выражений, рекурсии и других развитых механизмов манипулирования данными.

Благодаря приоритету IBM в развитии реляционной теории и позициям фирмы в компьютерной отрасли, диалект DB2 SQL оказывает значительное влияние на стандарты SQL ANSI/ISO.

Хранимые процедуры в DB2 не очень широко применяются, при этом традиционно для написания хранимых процедур используются обычные языки программирования высокого уровня (Си, Java , PL/I, Кобол и т.д.), это позволяет программисту легко оформлять один и тот же код либо как часть приложения, либо как хранимую процедуру, в зависимости от того, на клиенте или на сервере его целесообразнее выполнять. В настоящее время в DB2 также реализовано процедурное расширение SQL для хранимых процедур в соответствии со стандартом ANSI SQL/PSM.

Оптимизатор DB2 широко использует статистику распределения данных в таблицах (если процесс её сбора был выполнен администратором базы данных), поэтому один и тот же запрос на языке SQL может быть оттранслирован в совершенно различные планы выполнения в зависимости от статистических характеристик данных, которые он обрабатывает.

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

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

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

DB2 является единственной реляционной СУБД общего назначения, имеющей реализации на аппаратно-программном уровне (система IBM i; также в оборудовании мэйнфреймов IBM System z реализуются средства поддержки DB2).

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

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Минский институт управления

Кафедра автоматизированных информационных систем

Отчет о прохождении общеинженерной практики

Сроки прохождения практики: с 19.11.2012 по 16.12.2012

Студент группы 111201-з

И.М. Вайтович

Руководитель старший

Т.В. Русак преподаватель,

магистр технических наук

Размещено на Allbest.ru

Частное учреждение образования

Минский институт управления

Факультет: инженерно-информационный

Кафедра: автоматизированных информационных систем

Специальность: 1-40 01 02 - Информационные системы и технологии (по направлениям)

Индивидуальное задание на общеинженерную практику студенту Хоботовой Анастасии Михайловне группы №111201з

1. Тема реферата:

Система управления базами данных IBM DB2.

2. Индивидуальное задание:

4. Календарный график:

Наименование мероприятий учебной (общеинженерной) практики

Сроки проведения

Организационное собрание по ОИП

Получение индивидуального задания на практику

11.09.12 - 24.09.12

Проведение экскурсий (выставок)

19.11.12 - 24.11.12

Проведение семинаров, встреч, бесед

19.11.12 - 30.11.12

Подготовка реферата

01.12.12 - 09.12.12

Выполнение индивидуального задания

01.12.12 - 16.12.12

Подготовка отчета по практике

17.12.12 - 11.03.13

Предоставление отчета по практике на кафедру

Защита отчета по практике

19.03.13 - 23.03.13

Руководитель Т.В. Русак

Введение

1. Система управления базами данных

1.1 Понятие СУБД

1.2 История создания СУБД

1.6 Большие объекты

1.8 Триггеры

1.9 Реляционные расширители

1.11 Обзор редакций IBM DB2

2. Практическая часть

2.1 Постановка задачи

2.2 Алгоритм решения

2.3 Программная реализация

2.4 Тестирование программы

Заключение

Приложение

Введение

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

Приобретение навыков работы с компьютером, с ОС Windows и стандартным офисным пакетом;

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

Освоить методы профессионального поиска информации в сети Internet;

Изучить требования к оформлению отчетов, методы и прикладные среды для подготовки отчетов по результатам практики;

Работа с офисной оргтехникой.

В первом разделе отчета рассмотрена система управления базами данных IBM DB2: описано понятие СУБД, даны виды и краткая характеристика СУБД IBM DB2.

Во второй части отчета разрабатывается алгоритм и программа на языке С для нахождения максимального элемента массива А в массиве В.

1. Система управления базами данных IBM DB2

1.1 Понятие системы управления базами данных

База даннных (БД) - это поименованная совокупность взаимосвязанных данных, находящихся впод управление СУБД.

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

1.2 История создания СУБД

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

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

Когда началось производство вычислительных машин семейства ЕС ЭВМ. Работы проводились в двух направлениях. Прежде всего были предприняты попытки создания собственных оригинальных отечественных СУБД. Вместе с тем, в ускоренном режиме разрабатывались аналоги некоторых широко распространенных за рубежом СУБД, способных функционировать на отечественных аппаратно-программных платформах. Подобный подход был использован также при создании СУБД для аппаратных платформ, серийное производство которых началось в стране позднее появления платформы ЕС ЭВМ, - для СМ ЭВМ, АСВТ, IBM-совместимых персональных компьютеров и др. .

1.3 История создания СУБД IBM DB2

DB2 - это семейство систем управления реляционными базами данных, выпускаемых корпорацией IBM. Это одна из "зрелых" мировых СУБД, постоянный лидер в производительности, по уровню технической реализации, возможностям масштабирования и т.д.

DB2 имеет долгую историю. Это первая СУБД, которая стала использовать SQL. С 1975 по 1982 год прототип DB2 разрабатывался в IBM под названием System Relational, или System R.

СУБД DB2 получила свое название в 1982 году, когда был выпущен первый коммерческий релиз для VM под названием SQL/DS, и затем релиз для MVS под названием DB2.

Развитие DB2 уходит корнями в начало 1970-х, когда доктор Э.Ф. Кодд, работавший на IBM, разработал теорию реляционных баз данных и в июне 1970 года опубликовал модель манипуляции данными. Для воплощения этой модели он разработал язык реляционных баз данных и назвал его Alpha.

IBM DB2 - наиболее высокопроизводительная и мощная СУБД в мире. Ее основное уникальное преимущество в том, что любое приложение, написанное для DB2, будет работать с серверами данных DB2, работающими на любой распределенной платформе, поддерживаемой DB2 (Windows, HP-UX, Sun Solaris, Linux, Mac OS X и AIX®).

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

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

1.4 Функциональные возможности DB2

Функциональные возможности DB2:

Мультиплатформенность.

Advanced Copy Services (ACS). DB2 ACS позволяет использовать технологию быстрого копирования устройства хранения данных для выполнения работы по копированию данных в операциях резервного копирования и восстановления. Возможность копирования данных средствами устройства хранения данных значительно ускоряет операции резервного копирования и восстановления. Резервное копирование с использованием DB2 ACS называется резервным копирование через мгновенную копию (snapshot backup).

Онлайновая реорганизация таблиц позволяет пользователю проводить реорганизацию таблицы без прекращения полного доступа к ней.

Поддержка High Availability Disaster Recovery (HADR). Функциональность DB2 HADR обеспечивает поддержку высокой готовности и аварийное переключение для баз данных DB2.

Поддержка Materialized Query Tables (таблицы материализованных запросов), Query Parallelism (параллелизм запросов), Multidimensional Clustering Tables (MDC, многомерная кластеризация таблиц).

Поддержка сжатия данных при резервном копировании.

Поддержка SQL-репликации.

Поддержка Database Partitioning (разбиение баз данных). Данная функциональная возможность позволяет распределить один образ базы данных на несколько физических серверов.

DB2 Text Search. Функция DB2 Text Search позволяет вести поиск в текстовых столбцах таблиц DB2.

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

1.5 Типы данных, определяемые пользователем

DB2 дает пользователю возможность определять новые типы данных. Новый тип данных должен сообтетствовать одному из базовых типов, предоставляемых системой, но для них может быть определена своя семантика. При этом DB2 способна манипулировать такими данными в соответствии с определенной для них логикой. Можно задать набор операций, допустимых для некоторого типа данных, изменив его по сравнению с относящимся к базовому типу.

В DB2 реализован механизм строгой типизации. К данным неопределенного типа применимы при этом только те операции, которые определены для него самого, а не для базового класса. Для СУБД такой подход предоставляет мощный механизм контроля целостности данных.

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

1.6 Большие объекты

DB2/2 и DB2/6000 предоставляют пользователю такие новые типы данных, как большие бинарные объекты (BLOBS) и большие текстовые объекты (CLOBS). BLOBS позволяют хранить данные любого вида размером до двух гигабайт. CLOBS имеют такие же ограничения на размер, но предназначены для хранение текста в виде последовательности однобайтных или двухбайтных символов и могут быть связаны с определенной кодовой страницей. Наличие таких типов данных позволяет встраивать реляционные таблицы данные нетрадиционных типов, в первую очередь мультимедиа. Эта возможность приобретать все большее значение для современных приложений, позволяя хранить, например, фотографии сотрудников в базе данных отдела кадров, графические изображения, звук, видео, большие тексты. Основное внимание при этом уделено достижению высокой производительности и надежности, а также снятию ограничений на использование больших объектов. Так, можно создать таблицу, включающую свыше десяти полей, содержащих двухгигабайтные объекты.

Большие возможности при работе с большими объектами предоставляет определение новых типов данных и функций. Это делает возможным задать возможность поиска картины по ее элементу, или операцию сравнения текстов и т.п.

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

Функции, определяемые пользователем, позволяют скрывать внутреннее представление данных от приложения, обеспечивая некоторую инкапсуляцию данных. Они также позволяют определять новые операции как для базовых данных, так и для типов, определяемых пользователем.

Функции, определяемые пользователем, позволяют достичь многократного использования кода за счет того, что операции, общие для различных приложений, хранятся на сервере, а не включаются в каждое отдельное приложение. Для реализации этих функций используются языки программирования, а для их реализации в СУБД - введенный в язык определения данных оператор CREATE FUNCTION. Фактически этот оператор связывает пользовательскую функцию с конкретной программой, выполняемой при вызове этой функции. Использование пользовательских функций вместо непосредственного доступа к данным может обеспечить некоторую инкапсуляцию данных, что можно использовать для того, чтобы скрыть от пользователя их внутреннюю структуру. Кроме того, DB2 поддерживает механизм перегрузки имен пользовательских функций, аналогичный применяемому в ООБД, однако не позволяет связывать функции с конкретными элементами данных, как связаны методы и объекты при объектном подходе. Дополнительную гибкость функциям, определяемым пользователем, придает способность одновременно работать как с данными DB2, так и другими данными, как, например, файлами, электронной почтой и др. Возможны два варианта взаимодействия функций, определяемых пользователем, с сервером DB2. Первый заключается в том, что функция имеет прямой доступ к БД, что позволяет достичь максимальной производительности, но представляет собой потенциальную угрозу работоспособности сервера и целостности данных. Во втором варианте функция выполняется как отдельный от сервера БД процесс, что обеспечивает защиту данных и СУБД, но снижает производительность.

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

1.8 Триггеры

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

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

Использование триггеров позволяет сделать данные "активными", моделировать не только структуру и свойства, но и поведение хранимых в БД объектов данных.

1.9 Реляционные расширители

Хорошим примером применения перечисленных новых возможностей являются реляционные расширители DB2 (DB2 Relational Extenders). Они предоставляют широкие возможности для работы с нетрадиционными данными, используя возможность определения пользовательских типов данных и функций. Для хранения мультимедиа данных, а для поддержания целостности по ссылкам - триггеры.

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

1.10 Критический анализ СУБД DB2

Рассмотрим плюсы и минусы СУБД.

Есть хорошая бесплатная версия;

В бесплатной версии нет ограничений на размер базы;

В бесплатной версии нет ограничителя запросов, это позволяет одновременно обслуживать десятки пользователей;

Хорошая бесплатная техподдержка;

В отличии от PostgreSQL есть возможность получить платную поддержку производителя, что позволяет применять в Entrprise секторе бизнеса;

С конфигурациями 1С-Предприятие в автоматическом режиме блокировок работает лучше, чем PostgreSQL (речь о параллельности, область блокировок на уровне строк, а не таблиц);

Хорошая производительность;

Меньше проблем с неуникальностью индексов (фактически для решения проблемы рекомендуется временно базы загружать в DB2);

Лучше обрабатывает ситуации вроде "не хватает памяти для сервера 1С";

Нет ограничения на 256 таблиц, что расширяет возможности при работе с RLS.

Мало специалистов и высокая стоимость хороших специалистов;

Небольшая распространенность;

В отличии от MS SQL Server для новых версий 1С выпускает "адаптированные" версии;

Размер баз больше, чем в других СУБД;

Требуется "тонкая" настройка параметров СУБД, автоподстройка системы есть, но неполная;

Некоторые сообщения платформой могут неверно обрабатываться, для решения приходится "понижать уровень" логирования ошибок;

1С-ЦУП собирает длительные запросы, ожидания на блокировках, но не собирает взаимные блокировки.

1.11 Обзор редакций IBM DB2

Наименов редакции

Возможности и ограничения

IBM DB2 Express - C

Базовая бесплатная версия СУБД IBM DB2. Тех.поддержка не осуществляется. Тех. ограничения: используется максимум 2 ядра и 1 процессор, 2 Гб ОЗУ. Нет поддержки репликации и кластеризации, нет гарантии и возможности приобретения доп. пакетов ПО для расширения возможностей СУБД. Версии выпускаются без пакетов обновлений. Поддерживаемые ОС: Windows и Windows x64, Linux, Linux x86, Linux x64, Linux on Power, Solaris, Mac OS X. Поддерживаемые ОС: Windows, Linux (серверы POWER и x86), Mac OS X и Solaris x64. Рекомендуется: для небольших ЛПУ, ограниченных в финансовых возможностях и не нуждающихся в тех.поддержке со стороны IBM кол-вом пользователей до 50-70.

IBM DB2 Express - C FTL (Fixed Term License)

Первый коммерческий вариант. Полностью аналогичный предыдущему продукт, но с подпиской на техническую поддержку 12 месяцев IBM 24x7 + поддержка репликации + поддержка кластеров из 2 серверов + выпуск FixPack и поддержка нескольких версий. Тех. ограничения: используется максимум 2 ядра и 1 процессор, 2 Гб ОЗУ. Поддерживаемые ОС: Windows, Linux (серверы POWER и x86) и Solaris x64. Рекомендуется: для небольших и средних ЛПУ, ограниченных в финансовых возможностях, но нуждающихся в тех.поддержке со стороны IBM кол-вом пользователей до 50-150.

IBM DB2 Express Edition

Начальная версия IBM DB2 с технической поддержкой на 12 месяцев. Тех. ограничения: до 4 ядер (процессоры Intel) и до 4 Гб ОЗУ. Можно использовать только на 2-х процессорных 2-х ядерных серверах (для Intel) или слабее. Поддерживаемые ОС: Windows, Linux (серверы POWER и x86), AIX, Solaris (SPARC и x64), HP-UX (только IA-64) Рекомендуется: для небольших и средних ЛПУ, нуждающихся в тех.поддержке со стороны IBM кол-вом пользователей до 70-200.

IBM DB2 Workgroup Server Edition

Server Edition Представляет собой сервер данных DB2, который предоставляет те же функции, что и DB2 Express, но рассчитан на более высокие требования к рабочей нагрузке, которые требуют больше памяти, вычислительной мощности, большей степени высокой готовности без дополнительной настройки, и имеет более широкий спектр опций развертывания в рамках конкретной платформы. Тех. ограничения: Можно использовать различные высокопроизводительные мультипроцессорные серверы (включая Power, Itanium, Ultra SPARC и т.д.), но до 16 Гб ОЗУ на все процессоры. Поддерживаемые ОС: Windows, Linux (серверы POWER, System z и x86), AIX, Solaris (SPARC и x64), HP-UX (только IA-64). Рекомендуется: для средних и больших ЛПУ, нуждающихся в тех.поддержке со стороны IBM кол-вом пользователей от 100.

IBM DB2 Enterprise Server Edition

Для самых крупных учреждений и наиболее высокопроизводительных вычислений. Поддерживаемые ОС: Windows, Linux (POWER, System z и System x), AIX, Solaris (SPARC и x64) и серверы HP-UX (IA-64 только начиная с DB2 9.5). Рекомендуется: для больших ЛПУ и сети нескольких ЛПУ, нуждающихся в тех.поддержке со стороны IBM кол-вом пользователей от 1000.

1.12 СУБД DB2 нового поколения

Корпорация IBM представила сервер баз данных нового поколения DB2 9 под кодовым названием Viper, воплотивший самые значительные достижения в развитии технологий баз данных за более чем двадцать лет.

Выпуск DB2 9 знаменует завершение пятилетнего проекта IBM, превратившего традиционные, статичные технологии баз данных в концепцию интерактивного, динамичного сервера баз данных, предоставляющего клиентам более совершенные возможности для управления всеми типами информации, такими как документы, аудиофайлы и видеофайлы, изображения, Web-страницы и XML-транзакции с цифровыми подписями.

Новый сервер баз данных IBM впервые в отрасли позволяет обеспечить беспрепятственное, параллельное движение реляционных и XML-данных, вне зависимости от формата, платформы и размещения.

Более 750 разработчиков ПО из восьми стран внесли вклад в создание СУБД Viper, которая разработана и настроена с ориентацией на управление информацией в средах SOA.

В СУБД DB2 9 реализованы три значительных технологических достижения -- запатентованная технология pureXML, революционная технология сжатия данных Venom и передовые средства автономного управления данными. Подобное сочетание новых для отрасли функциональных возможностей, дополненное усовершенствованиями в области обеспечения безопасности и аварийного восстановления, позволит ускорить выполнение информационных запросов и предоставит клиентам неограниченный доступ к информации. Кроме того, новая версия DB2 обеспечивает доступ к информации, хранящейся в обычных базах данных Oracle и MySQL, поставщики которых не предлагают аналогичной возможности.

IBM впервые выпускает сразу три редакции DB2 -- для корпоративных клиентов, для компаний малого и среднего бизнеса (DB2 Express) и для разработчиков (DB2 Express-C).

"DB2 Viper обещает изменить конкурентную ситуацию в отрасли баз данных, -- говорит Амбудж Гойал (Ambuj Goyal), генеральный менеджер подразделения IBM Information Management. -- Мы открываем новую эру технологий серверов баз данных, которые укрепят наши инвестиции и инициативы, направленные на предоставление нашим клиентам возможности расширять бизнес, эффективно используя информацию по требованию".

Клиенты и партнеры, осуществлявшие предварительное тестирование и оценку СУБД DB2 9, предоставили чрезвычайно позитивные отзывы. Zurich Insurance, N.A., ведущий поставщик услуг страхования коммерческой собственности от несчастных случаев, обслуживающий крупные корпорации и клиентов из сферы малого и среднего бизнеса, решил использовать DB2 9, чтобы получить доступ к новой технологии pureXML.

"Отрасль страхования сталкивается с растущими потребностями в хранении огромных массивов документации в формате XML.

Технология pureXML обеспечивает беспрецедентный уровень гибкости при определении пользовательских функций и выполнении внешних операций с XML-данными, хранящимися в старых базах данных, -- утверждает Джеймс Сербер (James Surber), старший администратор баз данных компании Zurich Insurance N.A. -- Возможность хранить различные версии одних и тех же XML-документов с различными структурами в одной таблице позволит нам не затрачивать часы на выполняемые вручную операции по выгрузке и повторной загрузке всей таблицы при изменении нашей XML-структуры".

2. Практическая часть

2.1 Постановка задачи

Даны два массива: A, состоящий из n элементов, и B, состоящий из m элементов. Определить содержится ли наибольший элемент массива A в массиве B.

2.2 Алгоритм решения

Схема алгоритма решения представлена на чертеже 02.16.011.001

В блоке 1 осуществляется ввод размера матриц А и В.

Блоки 2-11 служат для ввода матрицы с клавиатуры.

Блоки 12-23 служат для вывода на экран исходных массивов в матричной форме.

Блоки 24-30 служат для нахождения максимального элемента массива А.

Блоки 31-37 служат для нахождения максимального элемента массива А в массиве В.

Блоки 38-40 являются окончательным решение задачи и показывают, находится ли максимальный элемент массива А в массиве В.

2.3 Программная реализация

Листинг программного модуля для решения поставленной задачи на языке программирования Си приведен в приложении.

Первоначально необходимо объявить все переменные:

int A, B, n, m, i, k, max, x;

где А и В - целочисленные массивы состоящие из 100 строк; n и m - переменные, которые хранят количество строк матриц; i и k - переменные цикла; max - целочисленная переменная для хранения максимального элемента массива А; x - целочисленная переменная для нахождения максимального элемента массива А в массиве В.

scanf_s ("%d", &n);

scanf_s ("%d", &m);}

while (n>=100, m>=100);

Ввод размерности осуществляется с использование цикла do…while, который позволяет проверить корректность введенных данных. Т.к. память под массив выделяется статически, то количество строк матриц не должно превышать 100, что задано при объявлении массивов. В случае ошибочного ввода повторно появиться запрос ввода размерности массива.

Ввод элементов массивов осуществляется внутри вложенных циклов for: в первом цикле изменяется i - номер строки от 0 до n-1, а во втором k - номер строки от 0 до m-1. При выполнении каждой итерации вложенных циклов выводится запрос для ввода элементов массивов и с клавиатуры вводятся элементы массивов.

for (i=0;i

scanf_s ("%d", & A[i]);}

for (k=0;k

printf ("Massiv A: ");

for (i=0;i

printf ("%d ", A[i]);

printf ("Massiv B: ");

for (k=0;k

printf ("%d ", B[k]);

Далее необходимо присвоить переменой max начальное значение равное нулевому элементу массива и перебирая элементы строки массива А находим максимальный элемент с помощью оператора if. Присваиваем максимальному элементу массива А значение max. На экран выводится максимальный элемент массива А.

for (i=1;i

if (max

Далее необходимо присвоить переменой x начальное значение равное 0 и перебирая элементы строки массива B находим максимальный элемент массива А с помощью оператора if. Если максимальный элемент массива А находится в массиве В, на экран выводится подтверждение. Если в массиве В нет максимального элемента массива А, то и об этом выводится подтверждение.

for (k=0;k

if (B[k]==max) x=1;

2.4 Тестирование программы

Тестовый пример работы программы, который иллюстрирует неправильный ввод размерности массивов, приведен на рисунке 2.1 для данныйх n=105 и m=3.

Рисунок 2.1 - Пример работы программы

Тестовый пример работы программы, приведенный на рисунке 2.2, иллюстрирует работу программы для следующих матриц:

Рисунок 2.2 - Пример работы программы

Рисунок 2.3 - Пример работы программы

Заключение

В результате прохождения общеинженерной практики была изучена СУБД IBM DB2, которая имеет эффективную и надежную платформу, для построения приложений. В том числе и продуктов 1c. Эта СУБД от компании IBM, может интегрироваться и с другими средствами, работающими на разных аппаратно программных платформах (Linux и Windows) - Microsoft Visual Studio, Microsoft Visual Basic, Microsoft Visual C++ и т.п.

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

Список использованных источников

1. ГОСТ 19.701-90 - Единая система программной документации - Схемы алгоритмов, программ, данных и систем - Условные обозначения и правила выполнения

2. Дейт К. Руководство по реляционной СУБД DB2. - М.: Финансы и статистика, 1988. - 320 с.

3. Когаловский М.Р. "Энциклопедия технологий баз данных" / М.Р. Когаловский. - М.: Финансы и статистика, 2002. - 800 с.

4. Дейтел Х.М. Как программировать на С / Х.М. Дейтел, П.Дж. Дейтел. - М.: Бином,2006. - 1037 с.

5. Рауль Ф. Чон. Начало работы с DB2 Express 9.7. Москва, 2010.-269 с.

Приложение

Листинг программного модуля

#include "stdafx.h"

#include "stdio.h"

#include "conio.h"

#include "math.h"

int _tmain(int argc, _TCHAR* argv)

int A, B, n,m,i,k,max,x;

do {printf ("Vvedite kol-vo elementov massiva A:\n");

scanf_s ("%d", &n);

printf ("Vvedite kol-vo elementov massiva B:\n");

scanf_s ("%d", &m);}

while (n>=100, m>=100);

for (i=0;i

{printf ("Vvedite elementi massiva A [%d]: ",i+1);

scanf_s ("%d", & A[i]);}

for (k=0;k

{printf ("Vvedite elementi massiva B [%d]: ",k+1);

scanf_s ("%d", & B[k]);}

printf ("Massiv A: ");

for (i=0;i

printf ("%d ", A[i]);

printf ("Massiv B: ");

for (k=0;k

printf ("%d ", B[k]);

for (i=1;i

if (max

printf ("Maksimal"nij element massiva A: %d \n",max);

for (k=0;k

if (B[k]==max) x=1;

if (x==1) printf ("Maksimal"nij element massiva A nahoditsia v massive B\n");

else printf ("Maksimal"nij element massiva A ne nahoditsia v massive B\n");

база данные копирование алгоритм

Размещено на Allbest.ru

Подобные документы

    Система управления базами данных как составная часть автоматизированного банка данных. Структура и функции системы управления базами данных. Классификация СУБД по способу доступа к базе данных. Язык SQL в системах управления базами данных, СУБД Microsoft.

    реферат , добавлен 01.11.2009

    Классификации баз данных по характеру сберегаемой информации, способу хранения данных и структуре их организации. Современные системы управления базами данных и программы для их создания: Microsoft Office Access, Cronos Plus, Base Editor, My SQL.

    презентация , добавлен 03.06.2014

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

    контрольная работа , добавлен 16.11.2010

    Алгоритмы обработки массивов данных. Система управления базами данных. Реляционная модель данных. Представление информации в виде таблицы. Система управления базами данных реляционного типа. Графический многооконный интерфейс.

    контрольная работа , добавлен 07.01.2007

    Устройства внешней памяти. Система управления базами данных. Создание, ведение и совместное использование баз данных многими пользователями. Понятие системы программирования. Страницы доступа к данным. Макросы и модули. Монопольный режим работы.

    реферат , добавлен 10.01.2011

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

    презентация , добавлен 14.10.2013

    Понятие и назначение, принципы построения и внутренняя структура системы управления базами данных, их функциональные особенности и возможности, критерии оценки эффективности. Языковые и программные средства. Использование SQL, типы и модели данных.

    презентация , добавлен 18.03.2015

    Объекты системы управления базами данных Access. Запросы, формы, отчеты. Типы данных: текстовый, поле мемо, числовой. Поле объекта OLE, гиперссылка, мастер подстановок. Ручные, автоматизированные и автоматические средства создания объектов базы данных.

    презентация , добавлен 31.10.2016

    Базы данных как составная часть информационных систем. Изучение взаимосвязи понятий информация и данные. Система управления базами данных. Пример структурированных данных. Обеспечение логической независимости. Безопасность операционной системы.

    контрольная работа , добавлен 15.06.2009

    Хранение и обработка данных. Компоненты системы баз данных. Физическая структура данных. Создание таблиц в MS Access. Загрузка данных, запросы к базе данных. Разработка информационной системы с применением системы управления базами данных MS Access.

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

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

    Small Business Edition - версия предназначена для поддержки интернет-приложений. Максимальное число допустимых IIOP/CORBA соединений – десять, подходит для организаций, системы которых не нуждаются в кластеризации, поддержке работы с мейнфреймами, двухфазного подтверждения транзакций и автоматической отказоустойчивости;

    Developer Edition - вариант для разработчиков, занимающихся созданием и тестированием приложений с использованием сервера Sybase EAServer, является полнофункциональной, но ограничен пятью IIOP-соединениями.

Sybase EAServer обеспечивает целый ряд важных преимуществ, включая:

    надежную работу системы за счет обеспечения автоматического восстановления работоспособности на уровне серверной памяти, балансировки нагрузки, а также кластеризации;

    защиту инвестиций за счет интеграции с существующими внутренними системами;

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

Субд db2

СУБД фирмы IBM DB2, впервые появилось в начале восьмидесятых годов. Сейчас версии этого продукта функционируют под управлением ОС AS/400AIX, S/390, Windows, OS/2, AIX, HP-UX, SCO UnixWare, Linux, NUMA-Q и Sun Solaris.

СУБД DB2 Enterprise Server Edition поставляется с богатым набором инструментов для администрирования. Механизмы доступа к данным DB2 поддерживают драйверы ODBC, JDBC и ADO/OLE DB, а для пользователей Microsoft Visual Studio доступны включаемые в среду дополнительные модули, такие как Stored Procedure Builder. Windows-версии СУБД DB2 позволяют также создавать хранимые процедуры на языке Visual Basic. Средства разработки Borland поддерживают доступ к DB2 не только с помощью ADO/OLE DB и ODBC, но и посредством собственных универсальных механизмов доступа к данным - Borland Database Engine и dbExpress.

СУБД DB2 поддерживает создание хранилищ данных и, помимо средств переноса данных в хранилище содержит в составе клиентской части Data Warehouse Center, позволяющий управлять всеми процессами, связанными с созданием и поддержкой хранилищ данных, включая создание схемы хранилища, определение источников исходных данных для него, создание расписаний обновления данных в хранилище, проверку и исправление некорректных данных. Для поддержки OLAP-хранилищ в состав сервера DB2 Universal Database входит OLAP Starter Kit, основанный на OLAP-сервере Hyperion Essbase.

СУБД DB2 поддерживает хранение и поиск XML-документов по их элементам и атрибутам. С помощью протокола SOAP можно обращаться к Web-сервисам, предоставляющим доступ к хранимым процедурам и данным DB2 (Web-сервисы управляются сервером приложений IBM WebSphere).

К важнейшим техническим характеристикам DB2 Universal Database следует отнести поддержку реляционных и комплексных данных с помощью объектных расширений, возможность работы на мультипроцессорных платформах, поддержку кластеров, 64-разрядную архитектуру памяти, распараллеливание запросов, наличие средств для гетерогенного администрирования и обработки данных, поддержку выполнения распределенных транзакций.

СУБД DB2 - единственная СУБД, для которой можно вести разработку на.Net, а сама при этом способна работать на любой платформе, включая Linux, мэйнфреймы, Windows. DB2 имеет хранимые процедуры на Java.

Расширенная поддержка Visual Studio включает поддержку Web-сервисов, полную поддержку хранения XML-данных без их преобразования и возможность создавать приложения и Web-сайты без написания программного кода.

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

В СУБД DB2 версии 9 реализованы технология pureXML, революционная технология сжатия данных Venom и средства автономного управления данными. DB2 обеспечивает доступ к информации, хранящейся в СУБД Oracle и MySQL.

Реализованные в СУБД усовершенствования позволяют разработчикам значительно упростить и ускорить создание приложений, работающих одновременно с хранилищами XML и реляционных данных. Например, технология pureXML поддерживает язык XQuery - стандарт, созданный специально для обработки XML-данных. Для извлечения реляционных или XML-данных разработчики приложений могут использовать языки XQuery, XPath, стандартный язык SQL - или все три одновременно.

Комплексная среда разработки DB2 Developer Workbench позволяет создавать, редактировать, отлаживать, тестировать и развертывать хранимые процедуры и определяемые пользователями функции. Среда Developer Workbench может использоваться для разработки приложений, а также для создания, редактирования и исполнения SQL-операторов и XML-запросов.

Сервер БД DB2 версии 9 позволяет обеспечить беспрепятственное, параллельное движение реляционных и XML-данных, вне зависимости от формата, платформы и размещения (http://www-306.ibm.com/software/data/db2/v9/ ).

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

СУБД DB2 выпускается в двух редакциях: DB2 Workgroup и DB2 Enterprise Edition. В СУБД реализовано распараллеливание обработки запроса, полный набор средств тиражирования, сводные таблицы запросов для повышения производительности БД, возможности объектно-ориентированного конструирования БД и средства языка Java.

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

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

Расширение DB2 Spatial для работы с пространственными данными разработано совместно с компанией ESRI [http://www.esri.com/partners/alliances/ibm/solutions.html ,http://www.esri.com/partners/alliances/ibm/index.html ].

IBM выпускает сразу три редакции DB2 - для корпоративных клиентов, для компаний малого и среднего бизнеса (DB2 Express) и для разработчиков (DB2 Express-C).

У фирмы IBM имеется упрощенная версия СУБД DB2 Express-C , она реляционная, но поддерживает XML.

СУБД Informix

Ведущим продуктом фирмы Informix до приобретения ее компанией IBM являлся сервер Informix Dynamic Server (IDS), поддерживающий платформы UNIX и Windows и обеспечивающий эффективную работу как на одно-, так и на многопроцессорных системах, а также в кластерах. Этот продукт обладает мощными средствами параллельной обработки данных. В числе основных характеристик Informix Dynamic Server следует отметить использование для управления дисковым пространством, как средств ОС; так и собственных функций, позволяющих обойти ограничения ОС, управление разделением памяти; динамическое управление потоками; поддержку фрагментации таблиц и индексов на нескольких дисках; распараллеливание запросов; зеркалирование данных. Сервер IDS поддерживает двухфазное завершение транзакций, а также гетерогенные транзакции (в этом случае в транзакциях могут принимать участие и другие сервера). Особо следует отметить поддержку этим сервером временных рядов.

Расширения функциональности сервера реализуются на базе DataBlade - коллекций объектов БД и подпрограмм на языке С, подключаемых к БД и выпускаемых как производителем СУБД, так и рядом независимых производителей.

Из механизмов доступа к данным IDS поддерживает драйверы ODBC, JDBC и ADO/OLE DB. Cредства разработки Borland поддерживают доступ к IDS с помощью механизмов Borland Database Engine, dbExpress, Microsoft .NET.

В последнее время наметился переход от реляционных СУБД к объектно-ориентированным. Informix, следуя этой концепции, представляет свое решение в СУБД Centaur, базирующейся на реляционной БД Informix Dynamic Server 7.3 и объектно-реляционной БД Informix Universal Data Option, и сочетающую в себе высокое быстродействие Dynamic Server при работе с данными с универсальностью и мультимедиа функциями Universal Data Option. Эта реализация предназначена для разработки Интернет-систем. СУБД обладает гибкой средой разработки, наращиваемостью, соответствующей характерным для сети Интернет интенсивным нагрузкам, и средствами работы с новыми типами данных, которые с развитием Web стали использоваться повсеместно. Реализованные в этой системе средства Java позволят разработчикам создавать на этом языке хранимые процедуры, пользовательские программы и компоненты DataBlades.

Пакет Centaur оснащен встроенными средствами обработки объектов ActiveX. Это дает возможность создавать хранимые процедуры БД на языке Visual Basic.

Centaur представляет собой надстройку Informix Dynamic Server и работает с традиционным для этого пакета форматом БД, так что в распоряжении пользователей остаются все прежние функции, а модернизация системы до уровня новых версий не будет сопряжена с большими сложностями. Система оснащена средствами объектно-ориентированного конструирования БД, создания специализированных таблиц и программ индексирования; позволяет пользователям встраивать в запросы собственные функции и не полагаться исключительно на стандартные средства SQL.

По работе пришлось в течение некоторого времени разбираться с СУБД IBM DB2. Т.к. система коммерческая, то в интернете не так много информации на русском языке, поэтому решил описать некоторые особенности работы этой СУБД.

Точка входа

Начнем со входной точки в СУБД. В SQL SERVER конечной точкой является экземпляр (instance), в котором конечно могут быть отдельные базы данных, но конфигурация и модель безопасности единая для всего экземпляра. В DB2 же точка входа выглядит так - экземпляр (который соответствует конкретному порту) - база данных. При этом конфигурация есть и для целиком экземпляра, и для отдельной базы данных.

Посмотреть конфигурацию экземпляра можно либо с помощью db2-команды:

Database Manager Configuration

Node type = Enterprise Server Edition with local and remote clients

Database manager configuration release level = 0x0b00

CPU speed (millisec/instruction) (CPUSPEED) = 2.912790e-07
Communications bandwidth (MB/sec) (COMM_BANDWIDTH) = 1.000000e+02

Max number of concurrently active databases (NUMDB) = 8
Federated Database System Support (FEDERATED) = YES
Transaction processor monitor name (TP_MON_NAME) =

Default charge-back account (DFT_ACCOUNT_STR) =

Java Development Kit installation path (JDK_PATH) = /home/db2inst1/sqllib/java/jdk32

Diagnostic error capture level (DIAGLEVEL) = 3
Notify Level (NOTIFYLEVEL) = 3
Diagnostic data directory path (DIAGPATH) = /home/db2inst1/sqllib/db2dump

Default database monitor switches
Buffer pool (DFT_MON_BUFPOOL) = OFF

Где будут указаны параметры, их значение и расшифровка. Возможен также сокращенный вариант:

get dbm cfg

Либо с помощью запроса:

Select name, value from sysibmadm.dbmcfg

Из важных параметров можно отметить:

  • тип аутентификации (AUTHENTICATION)
  • путь по умолчанию для создания новых БД (DFTDBPATH)
  • обнаружение сервера по сети (DISCOVER)
Посмотреть настройки конкретной базы можно так:

connect to sample (sample - имя бд)

get database manager configuration

Либо примерно таким же запросом, как и ранее:

select name, value from sysibmadm.dbcfg

Аутентификация

Большим отличием DB2 от других СУБД является модель аутентификации. Здесь нет внутренних пользователей, как в SQL Server или MySQL. Вся аутентификация производится внешними по отношению к СУБД средствами (динамически подгружаемыми плагинами) - средствами операционной системы либо внешними плагинами (Kerberos,GSS API). Тип аутентификации задается в параметре AUTHENTICATION конфигурации менеджера БД. По умолчанию выставлено значение SERVER - имя пользователя и пароль передается в открытом виде и данная пара проверяется на правильность средствами операционной системы. Если имя пользователя и пароль верны, то проверяется наличие привилегии CONNECT у пользователя или групп, в которые он входит (в т.ч. специальная группа PUBLIC, куда входят все авторизованные пользователи). Данные привилегии можно посмотреть в таблице SYSCAT.DBAUTH :

select GRANTEE from SYSCAT.DBAUTH where CONNECTAUTH = "Y"

Большой ошибкой при настройке является включение типа аутентификации CLIENT. В этом случае DB2 доверяет проведение аутентификации подключаемому клиенту и если у PUBLIC есть привилегия CONNECT, то любой пользователь сможет подключиться к БД и получит доступ ко всем данным, которые есть у PUBLIC. Имя пользователя при этом берется из операционной системы. То есть если мы подключаемся через Data Studio пользователем Administrator, то будут предоставлены все привилегии, которые есть у данного пользователя. И в этом случае нет разницы, с какого компьютера был произведен доступ. Данный тип аутентификации рекомендуется включать только тогда, когда есть защищенный канал между сервером и клиентом, и другие клиенты не смогут подключиться к СУБД.

Авторизация

Привилегии уровня конкретного экземпляра прописываются в конфигурации менеджера БД. Это следующие привилегии:

  • SYSADM
  • SYSCTRL
  • SYSMAINT
  • SYSMON
Задаются данные привилегии с помощью указания группы, куда будет входить пользователь. В dbmcfg это соответственно параметры SYSADM_GROUP , SYSCTRL_GROUP , SYSMAINT_GROUP и SYSMON_GROUP .

Далее есть привилегии конкретной базы данных. Это такие привилегии, как доступ к базе данных (CONNECTAUTH), создание таблиц (CREATETABAUTH), создание подпрограмм (EXTERNALROUTINEAUTH) и тд. Данные привилегии можно просмотреть в представлении SYSCAT.DBAUTH

И наконец привилегии доступа к конкретным данным - таблицам, подпрограммам и тд. Здесь все довольно тривиально, но тоже с некоторыми особенностями.

Привилегии доступа к таблицам можно просмотреть в представлении SYSCAT.TABAUTH . Тип выданной привилегии хранится в отдельных колонках, в зависимости от самой привилегии (SELECTAUTH,DELETEAUTH и тд). При выдачи привилегии с помощью команды GRANT для привилегий REFERENCES и UPDATE можно также указать имена колонок, на которые будут распространяться данные привилегии. В этом случае информацию об этом можно посмотреть в представлении SYSCAT.COLAUTH

Привилегии подпрограмм (функций, процедур и методов) можно посмотреть в SYSCAT.ROUTINEAUTH . Здесь не совсем все тривиально, в зависимости от полей SPECIFICNAME и TYPENAME привилегии могут быть выданы на все подпрограммы заданной схемы.

Если читателям понравится статья, то готов рассказать по поводу защиты данных в DB2 с помощью Label-Based Access Control

Программные средства , объединяемые названием IBM DB2 Business Intelligence (<деловой интеллект >), предназначены для анализа накопленных (исторических) данных с целью поддержки принятия решений . В настоящее время это направление является одним из наиболее приоритетных в сфере технологий управления данными. Это связано, с одной стороны, с тем, что использование исторических данных может помочь (и помогает) в поиске наилучших решений в деловой деятельности, а, с другой стороны, с возможностями организовать хранение, быстрый поиск необходимых данных и извлечение из них нужной информации (знаний) с помощью современных компьютерных средств.

Функционально программные средства этого направления делят на четыре группы:

  • средства анализа данных в реальном масштабе времени ( OLAP -On-line Analytical Processing );
  • средства cоздания хранилищ данных ( Data Warehouse );
  • средства поддержки доступа к данным;
  • средства интеллектуальной обработки данных, или <добычи информации> ( Intelligent Miner).

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

Термин OLAP был предложен в 1993 году Эдвардом Коддом (Э. Кодд - автор реляционной модели данных ). По Кодду, OLAP - это технология комплексного динамического синтеза, анализа и консолидации больших объемов многомерных данных. Существует так называемый <тест FASMI>, содержащий основные принципы OLAP-технологий :

  • Fast (быстрый) - предоставление результатов анализа за приемлемое время (обычно не более пяти секунд);
  • Analysis (анализ) - возможность проведения любого логического и статистического анализа данных, а также сохранения его результатов в доступном для пользователя виде;
  • Shared (разделяемый) - многопользовательский доступ к данным с поддержкой механизмов блокировок и авторизованного доступа;
  • Multidimensional (многомерный) - многомерное представление данных на концептуальном уровне, включая полную поддержку иерархий и множественных иерархий;
  • Information (информации) - возможность обращаться к любой нужной информации независимо от ее объема и места хранения.

Для того чтобы удовлетворить требования относительно времени анализа данных и получения ответа на сложные запросы, понадобилось задействовать новую технологию организации и хранения данных. Эта новая технология получила название < хранилище данных > ( Data Warehouse ).

Хранилище данных . Согласно определению автора концепции хранилища данных Б. Инмона ), это <предметно-ориентированные, интегрированные, неизменчивые, поддерживающие хронологию наборы данных, организованные для целей поддержки принятия решений >. В этом определении под интеграцией данных понимается объединение и согласованное представление данных из различных источников. < Поддержка хронологии> означает наличие <исторических> данных, т.е. данных, соответствующих интервалу времени, предшествующему текущему моменту. <Неизменчивость данных> означает, что изменение данных в хранилище осуществляется путем добавления новых данных, соответствующих определенному временному интервалу, без изменения информации, уже находящейся в хранилище.

К основным требованиям, предъявляемым к хранилищам данных, относятся:

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

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

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

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

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


Рис. 6.14.

Такое представление данных не всегда соответствует целям поддержки принятия решений , когда возникает необходимость быстрого получения ответов на сложные аналитические запросы. Более адекватной здесь является логическая модель данных в виде многомерного куба . Куб - это геометрическая фигура с тремя измерениями. Кубы данных на практике имеют от 4 до 12 измерений; в этих случаях их называют гиперкубами. Измерение в кубе - это одна из характеристик данных. Например, в кубе, показанном на рис. 6.14, измерениями являются <время> (2001 г., 2002 г.), < пункт назначения> (Москва, Санкт-Петербург), <груз> (бензин, уголь). В ячейках куба (рис. 6.14) хранятся данные об объемах перевозок. Эти данные агрегированы по другим измерениям. Например, для куба на рис.6.14, если существует измерение < пункт отправки>, то приведенные на рисунке данные следует рассматривать как агрегированные по этому измерению (т.е. <1000> это есть общая масса угля, завезенного в Москву в 2001 году от всех поставщиков). На многомерном кубе легко определить множество операций, типичных при аналитической работе: сокращение числа измерений (проекции), слияние ( объединение кубов, имеющих общие измерения) и т.д. Например, при агрегировании по измерению <груз> куб на рис. 6.14 превращается в квадрат, показанный на рис. 6.15.


Рис. 6.15. Агрегирование куба рис. 6.3.4 по измерению "груз"

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

Надо отметить, что измерения многомерного куба могут иметь иерархическую структуру. Например, измерение < пункт отправки> может быть представлено трехуровневой иерархической схемой (см. рис. 6.16.).

В отличие от нормализованной логической модели базы данных реляционного типа, логическая модель типа куба допускает избыточность данных, т.е. содержит помимо исходных данных и некоторые заранее вычисленные итоговые данные (агрегированные данные). Это оправдано в СППР , т.к. позволяет уменьшить время реакции системы на сложные запросы.


Рис. 6.16. Иерархическая схема измерения "пункт отправки"

Мы рассмотрели логическую модель хранилища, представляющую данные в виде совокупности многомерных кубов. Физическая реализация хранилища обычно осуществляется одним из следующих способов :

  • с использованием специализированных многомерных структур, отличающихся от традиционных реляционных баз данных;
  • с использованием для хранения данных реляционных баз данных;
  • гибридное решение: детальные данные хранятся в базах реляционного типа, а агрегированные - в специальных многомерных структурах.

В IBM DB2 OLAP Server поддерживается многомерная модель данных на основе реляционной СУБД DB2 UDB. Средства повышения производительности (см. раздел 6.3.2) позволяют обеспечить требуемые временные характеристики.

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

На этапе проектирования в распоряжение пользователя предоставляется набор управляемых инструментов для создания хранилищ данных. В его состав входят инструменты, которые позволяют генерировать различные схемы очистки и загрузки данных, а также графически описывать действия, необходимые для построения и сопровождения хранилища данных. Основной программный продукт этой группы - IBM DB2 Warehouse Manager ; его назначение, функции и особенности приведены в таблице 6.3.

Таблица 6.3. Компоненты IBM Business Intelligence
№ п/п Основное назначение Продукт Функциональность и особенности
1. Анализ данных в реальном масштабе времени ( OLAP ) IBM DB2 OLAP Server
  • поддержка многомерной модели данных (на базе реляционной СУБД);
  • поддержка операции многомерной агрегации данных в различных иерархических структурах;
  • параллельная обработка запросов;
  • использование методов оптимизации запросов
2. Создание хранилищ данных ( Data Warehouse ) IBM DB2 Warehouse Manager
  • расширение функциональности DB2 по извлечению, преобразованию и загрузке данных ( ELT - Extraction , Transformation and Loading);
  • поддержка управления метаданными и информационными каталогами (репозитариями);
  • поддержка средств QMF for Windows (создание запросов для DB2 с помощью Windows или Web-интерфейса);
  • поддержка применения <агентов>, осуществляющих перемещение данных между исходной и целевой системами без участия центрального сервера
3. Поддержка доступа к данным Query Management Facility (QMF)
  • создание отчетов и запросов к базе данных;
  • создание запросов на языке Java для их инициализации через браузер;
  • интеграция результатов выполнения запросов с электронными таблицами и персональными базами данных;
  • использование методов синтаксического анализа запросов на SQL;
  • контроль потребления ресурсов группами пользователей
DB2 Warehouse Manager Connector for SAP R/3
  • доступ и перенос бизнес-объектов SAP в хранилище DB2 ;
  • извлечение умеренных объемов данных SAP R3
D2 Warehouse Manager Connector to the Web
  • извлечение данных из базы данных WSA (IBM WebSphere Site Analyser ) или витрин данных и размещение их в хранилище;
  • проверка выполнения продуктом WSA копирования данных о Web-трафике в целевое хранилище
DB2 Warehouse Manager Sourcing Agent for z/OS
  • программа-агент, предоставляющая возможность для IBM DB2 Warehouse Manager, работающего под Linux, UNIX или Windows, осуществлять извлечение и преобразование данных, размещенных на платформе z/OS
4. Интеллектуальная обработка данных ( Intelligence Miner) DB2 Intelligent Miner Modeling
  • обнаружение ассоциаций;
  • кластеризация ;
  • классификация;
  • совместимость с языком Predective Model Markup Language ( PMML ), версия 2.0
DB2 Intelligent Miner Visualizer
  • графическое представление результатов решения задач обнаружения ассоциаций, кластеризации и классификации;
  • поддержка языка PMML , версия 2.0
DB2 Intelligent Miner Scoring
  • встраивание моделей (результатов интеллектуальной обработки, полученных с помощью DB2 Intelligent Miner Modeling) в приложения для использования с новыми данными
DB2 Intelligent Miner for Text
  • извлечение, индексирование, анализ и классификация информации из текстовых источников (документы, Web-страницы, бланки)

Средства поддержки доступа к данным представляют собой API и серверы промежуточного ПО , которые поддерживают доступ клиентских инструментов к бизнес-информации, а также обработку этой информации. Связующие программные серверы позволяют клиентам получать прозрачный доступ к многочисленным серверам баз данных (созданным как IBM , так и другими разработчиками). Основные программные продукты этой группы описаны в таблице 6.3.

Средства интеллектуальной обработки данных (<добычи информации>, Intelligent Miner) . Основное назначение интеллектуальной обработки данных (ИАД) - поиск в данных скрытых закономерностей. Большинство методов ИАД первоначально разрабатывалось в рамках направления исследований, которое получило название < системы искусственного интеллекта >. Только сейчас, когда образовались большие и быстро растущие массивы корпоративных данных, эти методы оказались в полной мере востребованными.

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

Обычно выделяют следующие пять типов задач ИАД :

  • Классификация . Наиболее распространенная задача ИАД. Она позволяет выявить признаки, характеризующие однотипные группы объектов - классы, для того, чтобы по известным значениям этих признаков можно было отнести новый объект к тому или иному классу. Ключевым моментом решения этой задачи является анализ множества заранее классифицированных объектов. Наиболее типичный пример использования классификации - конкурентная борьба между поставщиками товаров и услуг за определенные группы клиентов. Классификация может помочь определить характеристики неустойчивых клиентов, склонных перейти к другому поставщику, что позволяет найти оптимальный способ удержать их от этого шага (например, посредством предоставления скидок, льгот или даже с помощью индивидуальной работы с представителями <групп риска>).
  • Кластеризация . Логически продолжает идею классификации на более сложный случай, когда сами классы не предопределены, т.е. неизвестна принадлежность заданных объектов тому или иному классу. Результатом использования метода, выполняющего кластеризацию, как раз является вариант разбиения множества объектов на группы, включающие <близкие> объекты. Так, можно выделить родственные группы клиентов или покупателей с тем, чтобы вести в их отношении дифференцированную политику. В приведенном выше примере <группа риска> - категории клиентов, готовых уйти к другому поставщику - средствами кластеризации может быть выявлена до начала процесса ухода, что позволит принимать профилактические, а не экстренные меры.
  • Выявление ассоциаций . Ассоциация - это связь между двумя или несколькими одновременно наступающими событиями. Количественной мерой ассоциации может быть, например, условная вероятность события А при условии, что событие В произошло.
  • Выявление последовательностей . Подобно ассоциациям, последовательности определяют связь между событиями, но наступающими не одновременно, а с некоторым разрывом во времени. Мерой взаимосвязи между последовательными событиями А, В, С могут быть условные вероятности события В при условии, что событие А произошло, и условная вероятность события С при условии, что А и В имели место.
  • Прогнозирование . Это задача оценки будущих значений показателя на основе анализа текущих и исторических данных. Например, может быть сделан прогноз объема перевозок, который ожидается в следующем году, на основе данных, накопленных в базе производственно-экономических показателей работы железной дороги. В задачах подобного типа чаще всего используются традиционные методы математической статистики.

DB2 Intelligent Miner - это набор продуктов, который предоставляет в распоряжение пользователя аналитические инструменты, необходимые для принятия продуманных и качественных бизнес-решений. Задачи, решаемые этим набором продуктов, могут привести к выбору более точной маркетинговой стратегии, к уменьшению оттока заказчиков, к увеличению прибыли от торговли через Internet . Основные продукты семейства DB2 Intelligent Miner описаны в таблице 6.3.

Новое на сайте

>

Самое популярное