Добавлен: 24.10.2023
Просмотров: 64
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение высшего образования
«СИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ГЕОСИСТЕМ И ТЕХНОЛОГИЙ»
(СГУГиТ)
Институт геодезии и менеджмента
Кафедра инженерной геодезии и маркшейдерского дела
Реферат
«CУБД IBM DB2.Основные отличия и возможности»
Выполнил: Олимжонов Б. А.
Группа: БИ-22.1
Проверил: Горобцов С.Р.
Доцент, к.т.н.
Новосибирск – 2023
DB2 – это семейство систем управления реляционными базами данных, выпускаемых корпорацией IBM (содержание данного пункта является полной копией работы Левченко Ольги Владимировны, «Информационные системы», КУА. http://bourabai.kz/dbt/servers/DB2.htm ). Это одна из “зрелых” мировых СУБД, постоянный лидер в производительности, по уровню технической реализации, возможностям масштабирования и т.д.
Обзор возможностей IBM DB2
В настоящее время СУБД DB2 представлена версиями на следующих платформах:
DB2 for Linux, UNIX and Windows v9 для платформ AIX, HP-UX, Linux, Solaris, Windows и бета-версия для платформы Mac OS X
DB2 for z/OS v9 для платформ z/OS и OS/390
DB2 Server for VSE & VM v7 для платформ z/VM и z/VSE
DB2 for i для платформы IBM i (встроена в систему на аппаратно-программном уровне)
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 Express-C с возможностью приобретения лицензии на 12 месяцев и опцией подписки (т.н. Fixed Term License (FTL)): DB2 Express-C FTL. Все редакции и пакеты DB2 построены на одной и той же базе исходного кода; они различаются лишь функциональностью и условиями лицензировании, которые нацеливают возможности, функции и преимущества DB2 по соответствующим сегментам рынка и ценовым группам. Базовой технологией всегда остается DB2, поэтому решение о применении той или иной редакции никак не зависит от таких понятий, как переносимость, простота использования и т.п. Таким образом, если вы используете приложение для бесплатной DB2 Express-C, оно также будет работать на DB2 Personal Edition (DB2 Personal), DB2 Express Edition (DB2 Express), DB2 Workgroup Edition (DB2 Workgroup) и DB2 Enterprise Edition (DB2 Enterprise).
Ниже представлены наиболее важные функциональные возможности DB2.
-
Мультиплатформенность. Даже самая младшая редакция «IBM DB2 Express – C» поддерживает несколько наиболее популярных операционных систем – Windows (включая x64), Linux (серверы POWER и x86), Mac OS X и Solaris x64. -
Advanced Copy Services (ACS). DB2 ACS позволяет использовать технологию быстрого копирования устройства хранения данных для выполнения работы по копированию данных в операциях резервного копирования и восстановления. Возможность копирования данных средствами устройства хранения данных значительно ускоряет операции резервного копирования и восстановления. Резервное копирование с использованием DB2 ACS называется резервным копированием через мгновенную копию (snapshot backup). -
Онлайновая реорганизация таблиц (REORG, реорганизация «на месте») позволяет пользователю проводить реорганизацию таблицы без прекращения полного доступа к ней. -
Поддержка High Availability Disaster Recovery (HADR). Функциональность DB2 HADR обеспечивает поддержку высокой готовности и аварийное переключение для баз данных DB2. -
Поддержка 64-разрядных экземпляров. -
Поддержка Materialized Query Tables (таблицы материализованных запросов), Query Parallelism (параллелизм запросов), Multidimensional Clustering Tables (MDC, многомерная кластеризация таблиц)
-
Поддержка сжатия данных при резервном копировании -
Поддержка SQL-репликации. -
Поддержка Database Partitioning (разбиение баз данных). Используется для масштабируемых кластеров: прежнее название – DB2 EEE. Данная функциональная возможность позволяет распределить один образ базы данных на несколько физических серверов -
DB2 Text Search. Функция DB2 Text Search позволяет вести поиск в текстовых столбцах таблиц DB2. Поддержка текстового поиска позволяет использовать встроенные в DB2 функции CONTAINS, SCORE и xmlcolumn-contains для поиска в текстовых индексах, построенных на основе заданных вами аргументов поиска -
IBM Data Studio – это инструментальная платформа, охватывающая весь жизненный цикл приложений (проектирование, разработка, развертывание, поддержка и управление) для всех реляционных СУБД IBM, с перспективой дальнейшего расширения поддержки. Это означает, что вы имеете не только переносимый SQL API, но и набор инструментальных программ, позволяющий реализовать бизнес-логику в масштабе всего предприятия.
Помимо представленных функциональных возможностей так же имеются другие возможности:
Типы данных, определяемые пользователем
Эта версия DB2 дает пользователю возможность определять новые типы данных. Новый тип данных должен соответствовать одному из базовых типов, предоставляемых системой, но для них может быть определена своя семантика. При этом DB2 способна манипулировать такими данными в соответствии с определенной для них логикой. Можно задать набор операций, допустимых для некоторого типа данных, изменив его по сравнению с относящимся к базовому типу.
В DB2 реализован механизм строгой типизации. К данным неопределенного типа применимы при этом только те операции, которые определены для него самого, а не для базового класса. Для СУБД такой подход предоставляет мощный механизм контроля целостности данных.
Большие объекты
DB2/2 и DB2/6000 предоставляют пользователю такие новые типы данных, как большие бинарные объекты (BLOBS) и большие текстовые объекты (CLOBS). BLOBS позволяют хранить данные любого вида размером до двух гигабайт. CLOBS имеют такие же ограничения на размер, но предназначены для хранения текста в виде последовательности однобайтных или двухбайтных символов и могут быть связаны с определенной кодовой страницей.
Наличие таких типов данных позволяет встраивать в реляционные таблицы данные нетрадиционных типов, в первую очередь мультимедиа. Эта возможность приобретает все большее значение для современных приложений, позволяя хранить, например, фотографии сотрудников в базе данных отдела кадров, графические изображения, звук, видео, большие тексты.
Функции, определяемые пользователем
Функции, определяемые пользователем, позволяют скрывать внутреннее представление данных от приложения, обеспечивая некоторую инкапсуляцию данных. Они также позволяют определять новые операции как для базовых типов данных, так и для типов, определяемых пользователем.
Функции, определяемые пользователем, позволяют достичь многократного использования кода за счет того, что операции, общие для различных приложений, хранятся на сервере, а не включаются в каждое отдельное приложение.
Для реализации этих функций используются языки программирования, а для их регистрации в СУБД – введенный в язык определения данных оператор CREATE FUNCTION. Фактически этот оператор связывает пользовательскую функцию с конкретной программой, выполняемой при вызове этой функции. Использование пользовательских функций вместо непосредственного доступа к данным может обеспечить некоторую инкапсуляцию данных, что можно использовать для того, чтобы скрыть от пользователя их внутреннюю структуру.
Кроме того, DB2 поддерживает механизм перегрузки имен пользовательских функций, аналогичный применяемому в ООБД, однако не позволяет связывать функции с конкретными элементами данных, как связаны методы и объекты при объектном подходе.
Дополнительную гибкость функциям, определяемым пользователем, придает способность одновременно работать как с данными DB2, так и другими данными, как, например, файлами, электронной почтой и др.
Возможны два варианта взаимодействия функций, определяемых пользователем, с сервером DB2.
Первый заключается в том, что функция имеет прямой доступ к БД, что позволяет достичь максимальной производительности, но представляет собой потенциальную угрозу работоспособности сервера и целостности данных.
Во втором варианте функция выполняется как отдельный от сервера БД процесс, что обеспечивает защиту данных и СУБД, но снижает производительность.
Пользователь может выбирать оптимальный для своей задачи подход в зависимости от ее специфики.
Триггеры
Триггеры определяют набор операций, которые выполняются при возникновении определенных событий в базе данных, например при обновлении таблицы.
Триггеры могут использоваться для выполнения функций, которые при объектно- ориентированном подходе выполняются методами (например, проверка корректности вводимых значений), или конструктором (присвоение значений при создании новой записи).
Использование триггеров позволяет сделать данные «активными», моделировать не только структуру и свойства, но и поведение хранимых в БД объектов данных.
Реляционные расширители
Хорошим примером применения перечисленных новых возможностей являются реляционные расширители DB2 (DB2 Relational Extenders). Они предоставляют широкие возможности для работы с нетрадиционными данными, используя возможность определения пользовательских типов данных и функций. Для хранения мультимедиа данных расширители используют поддерживаемые DB2 большие объекты, а для поддержания целостности по ссылкам – триггеры.
В настоящее время существует пять реляционных расширителей, позволяющих работать с изображениями, сложными текстовыми документами, видео, аудио, и даже с отпечатками пальцев.
Критический анализ СУБД DB2
Рассмотрим плюсы и минусы СУБД, у каждой СУБД есть свои плюсы и минусы, поэтом не надо думать, что одна СУБД лучше другой.
Плюсы:
-
Есть хорошая бесплатная версия -
В бесплатной версии нет ограничений на размер базы -
В бесплатной версии нет ограничителя запросов, это позволяет одновременно обслуживать десятки пользователей -
Хорошая бесплатная техподдержка -
В отличии от PostgreSQL есть возможность получить платную поддержку производителя, что позволяет применять в Entrprise секторе бизнеса -
С конфигурациями 1С:Предприятие в автоматическом режиме блокировок работает лучше, чем PostgreSQL (речь а параллельности, область блокировок на уровне строк, а не таблиц) -
Хорошая производительность -
Меньше проблем с неуникальностью индексов (фактически для решения проблемы рекомендуется временно базы загружать в DB2) -
Лучше обрабатывает ситуации вроде «не хватает памяти для сервера 1С» -
Нет ограничения на 256 таблиц, что расширяет возможности при работе с RLS
Минусы:
-
Мало специалистов и высокая стоимосить Хороших специалистов; -
Небольшая распространненость (со всеми вытекающими последствиями); -
В отличии от MS SQL Server, для новых версий 1С выпускает «адаптированные» версии (в прочем, тоже самое верно и для постгресса); -
Размер баз больше, чем в других СУБД; -
Медленная загрузка dt-файла; -
Требуется «тонкая» настройка параметров СУБД, автоподстройка системы есть, но неполная; -
Некоторые сообщения платформой могут не верно обрабатываться, для решения приходиться «понижать уровень» логирования ошибок.
-
1С: ЦУП собирает длительные запросы, ожидания на блокировках, но не собирает взаимные блокировки!
Обзор редакций 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. Домашняя страница http://www-142.ibm.com/software/products/ru/ru/db2expressc
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.