Db2 — это семейство продуктов для управления данными , включая серверы баз данных , разработанное IBM . Изначально оно поддерживало реляционную модель , но было расширено для поддержки объектно-реляционных функций и нереляционных структур, таких как JSON и XML . Первоначально название бренда называлось DB2 [3] [4] [5] до 2017 года [6] , когда оно было изменено на нынешнее. (В ранние дни его иногда ошибочно называли DB/2 — в ложном выводе от операционной системы OS/2 [7] .)
В отличие от других поставщиков баз данных, IBM ранее выпускала платформенно-зависимый продукт Db2 для каждой из своих основных операционных систем. В 1990-х годах IBM начала выпускать более унифицированный Db2 с в основном общей кодовой базой для Linux, Unix и Windows. DB2 для System z и DB2 для IBM i , однако, оставались независимыми реализациями и, как следствие, они использовали разные драйверы . [8]
История DB2 берет свое начало в 1970-х годах, когда Эдгар Ф. Кодд , исследователь, работавший в IBM, описал теорию реляционных баз данных, а в июне 1970 года опубликовал модель для манипулирования данными. [9]
В 1974 году исследовательский центр IBM в Сан-Хосе разработал связанную систему управления базами данных (СУБД) под названием System R для реализации концепций Кодда. [10] Ключевым достижением проекта System R стал язык структурированных запросов ( SQL ). Чтобы применить реляционную модель, Кодду нужен был язык реляционных баз данных, который он назвал DSL/Alpha . [11] В то время IBM не верила в потенциал идей Кодда, оставив реализацию группе программистов, не находившихся под руководством Кодда. Это привело к неточной интерпретации реляционной модели Кодда, которая соответствовала только части предписаний теории; результатом стал язык структурированных запросов на английском языке или SEQUEL .
Когда IBM выпустила свой первый продукт реляционной базы данных, они также хотели иметь подъязык коммерческого качества, поэтому они переработали SEQUEL и переименовали пересмотренный язык в Structured Query Language (SQL), чтобы отличать его от SEQUEL, а также потому, что аббревиатура «SEQUEL» была торговой маркой британской авиастроительной компании Hawker Siddeley . [12]
IBM приобрела Metaphor Computer Systems , чтобы использовать ее графический интерфейс и инкапсулирующую платформу SQL, которые уже применялись с середины 80-х годов.
Параллельно с разработкой SQL компания IBM также разработала Query by Example (QBE) — первый графический язык запросов.
Первый коммерческий продукт IBM для реляционной базы данных, SQL/DS , был выпущен для операционных систем DOS/VSE и VM/CMS в 1981 году. В 1976 году IBM выпустила Query by Example для платформы VM, где таблично-ориентированный интерфейс создавал язык линейного синтаксиса, который направлял транзакции в ее реляционную базу данных. [13] Позже функция QMF в DB2 создала настоящий SQL и принесла тот же вид и ощущение «QBE» в DB2. Вдохновение для версии архитектуры DB2 для мэйнфреймов частично пришло из IBM IMS , иерархической базы данных , и ее специализированного языка манипулирования базами данных, IBM DL/I .
Название DB2 (IBM Database 2) впервые было дано системе управления базами данных или СУБД в 1983 году, когда IBM выпустила DB2 на своей платформе мэйнфреймов MVS . [14]
В течение нескольких лет DB2, как полнофункциональная СУБД, была доступна исключительно на мэйнфреймах IBM . Позже IBM перенесла DB2 на другие платформы, включая серверы OS/2 , UNIX и MS Windows , а затем Linux (включая Linux на IBM Z ) и КПК . Этот процесс происходил в течение 1990-х годов. Реализация DB2 также доступна для z/VSE и z/VM . Более ранняя версия кода, которая станет DB2 LUW (Linux, Unix, Windows), была частью компонента Extended Edition OS/2 , называемого Database Manager.
IBM несколько раз расширяла функциональность Database Manager, включая добавление функциональности распределенной базы данных с помощью архитектуры распределенной реляционной базы данных (DRDA), которая позволяла осуществлять совместный доступ к базе данных в удаленном месте в локальной сети . (Обратите внимание, что DRDA основана на объектах и протоколах, определенных архитектурой распределенного управления данными (DDM).)
В конце концов IBM решила полностью переписать программное обеспечение. Новые версии Database Manager назывались DB2/2 и DB2/6000 соответственно. Другие версии DB2 с разными кодовыми базами следовали тому же соглашению об именовании '/' и стали DB2/400 (для AS/400), DB2/VSE (для среды DOS/VSE) и DB2/VM (для операционной системы VM). Юристы IBM прекратили использование этого удобного соглашения об именовании и решили, что все продукты должны называться «продукт ДЛЯ платформы» (например, DB2 для OS/390). Следующая итерация мэйнфрейма и серверных продуктов была названа DB2 Universal Database (или DB2 UDB).
В середине 1990-х годов IBM выпустила кластерную реализацию DB2 под названием DB2 Parallel Edition, которая изначально работала на AIX. Эта версия обеспечивала масштабируемость, предоставляя архитектуру без разделения ресурсов , в которой одна большая база данных разделяется на несколько серверов DB2, которые взаимодействуют через высокоскоростное соединение. Эта версия DB2 в конечном итоге была перенесена на все платформы Linux, UNIX и Windows (LUW) и была переименована в DB2 Extended Enterprise Edition (EEE). Теперь IBM называет этот продукт Database Partitioning Feature (DPF) и объединяет его со своим флагманским продуктом DB2 Enterprise.
Когда Informix Corporation приобрела Illustra и сделала свой движок базы данных объектно-SQL СУБД , представив свой Universal Server, Oracle Corporation и IBM последовали ее примеру, изменив свои движки баз данных, чтобы они могли поддерживать объектно-реляционные расширения. В 2001 году IBM приобрела Informix Software и в последующие годы включила технологию Informix в набор продуктов DB2. Технически DB2 можно считать объектно -SQL СУБД .
В середине 2006 года IBM анонсировала "Viper", кодовое название DB2 9 как на распределенных платформах, так и на z/OS. DB2 9 для z/OS была анонсирована в начале 2007 года. IBM заявила, что новая DB2 стала первой реляционной базой данных, которая хранит XML "в исходном виде". Другие усовершенствования включают улучшения, связанные с OLTP для распределенных платформ, улучшения, связанные с бизнес-аналитикой / хранилищами данных для z/OS, больше функций самонастройки и самоуправления, дополнительную 64-битную эксплуатацию (особенно для виртуального хранилища на z/OS), улучшения производительности хранимых процедур для z/OS и продолжающееся сближение словарей SQL между z/OS и распределенными платформами.
В октябре 2007 года IBM анонсировала "Viper 2", кодовое название DB2 9.5 на распределенных платформах . Было три ключевых темы для выпуска: упрощенное управление, надежность для бизнеса и гибкая разработка XML.
В июне 2009 года IBM анонсировала «Cobra», кодовое название DB2 9.7 для LUW. [15] DB2 9.7 добавила сжатие данных для индексов базы данных, временных таблиц и больших объектов. DB2 9.7 также поддерживала собственные данные XML в хэш-секционировании (секционировании базы данных), диапазонном секционировании (секционировании таблиц) и многомерной кластеризации. Эти собственные функции XML позволяют пользователям напрямую работать с XML в средах хранилищ данных. DB2 9.7 также добавила несколько функций, которые упрощают пользователям Oracle Database работу с DB2. К ним относятся поддержка наиболее часто используемого синтаксиса SQL, синтаксиса PL/SQL , синтаксиса сценариев и типов данных из Oracle Database. DB2 9.7 также улучшила свою модель параллелизма, чтобы продемонстрировать поведение, знакомое пользователям Oracle Database и Microsoft SQL Server.
В октябре 2009 года IBM представила свой второй крупный релиз года, анонсировав DB2 pureScale. DB2 pureScale — это кластерная база данных для не-мэйнфреймовых платформ, подходящая для рабочих нагрузок обработки транзакций в режиме онлайн (OLTP). IBM основала дизайн DB2 pureScale на реализации Parallel Sysplex совместного использования данных DB2 на мэйнфрейме. DB2 pureScale обеспечивает отказоустойчивую архитектуру и хранилище на общем диске. Система DB2 pureScale может расширяться до 128 серверов баз данных и обеспечивает постоянную доступность и автоматическую балансировку нагрузки.
В 2009 году было объявлено, что DB2 может быть двигателем в MySQL . Это позволяет пользователям на платформе IBM i и пользователям на других платформах получать доступ к этим файлам через интерфейс MySQL. На IBM i и его предшественнике OS/400 DB2 тесно интегрирована в операционную систему и является ее частью. Она обеспечивает ведение журнала, триггеры и другие функции.
В начале 2012 года IBM анонсировала следующую версию DB2, DB2 10.1 (кодовое название Galileo) для Linux, UNIX и Windows. DB2 10.1 содержала ряд новых возможностей управления данными, включая управление доступом к строкам и столбцам, которое обеспечивает «тонкий» контроль над базой данных, и управление данными в разных температурах, которое перемещает данные в экономически эффективное хранилище в зависимости от того, насколько «горячие» или «холодные» (как часто осуществляется доступ к данным) данные. IBM также представила возможность «адаптивного сжатия» в DB2 10.1, новый подход к сжатию таблиц данных.
В июне 2013 года IBM выпустила DB2 10.5 (кодовое название «Kepler»).
12 апреля 2016 года IBM анонсировала DB2 LUW 11.1, а в июне 2016 года она была выпущена.
В середине 2017 года IBM провела ребрендинг своих продуктов DB2 и dashDB и изменила их названия на «Db2».
27 июня 2019 года IBM выпустила Db2 11.5, базу данных ИИ. Она добавила функциональность ИИ для улучшения производительности запросов, а также возможности для упрощения разработки приложений ИИ. [16] [17] [18]
Db2 (теперь сокращенно от бывшего "Db2 for LUW") — это реляционная база данных, которая обеспечивает расширенные возможности управления данными и аналитики для транзакционных рабочих нагрузок. Эта операционная база данных разработана для обеспечения высокой производительности, действенных идей, доступности и надежности данных и поддерживается в операционных системах Linux, Unix и Windows.
Программное обеспечение базы данных Db2 включает в себя расширенные функции, такие как технология in-memory (IBM BLU Acceleration), расширенные инструменты управления и разработки, оптимизацию хранения, управление рабочей нагрузкой, эффективное сжатие и непрерывную доступность данных (IBM pureScale).
В 1995 году GA (общая доступность) V4. Она представила «совместное использование данных»: несколько движков DB2 получают доступ к одним и тем же данным. Преимущества: производительность и доступность (если один движок DB2 выходит из строя или мигрирует на следующую версию).
В 1997 году GA V5. Он добавил, например, онлайн-реорганизацию табличных пространств.
В 1999 году GA V6. Он добавил объектно-реляционную поддержку. «Объекты» здесь означают элементы данных длиннее 32К (до этого максимальная длина строки таблицы, точнее, запись таблицы), такие как изображения, видео или текст. DB2 теперь могла хранить и обрабатывать такие объекты. Кроме того, он добавил поддержку триггеров.
В 2001 году GA V7. Он добавил, например, динамическое распределение наборов данных (~файлов на z/OS) и возможность запуска утилит на списках табличных пространств. Кроме того, статистика в реальном времени, прокручиваемые курсоры и начальная поддержка Unicode.
В 2004 году GA V8. Он добавил, например, поддержку 64-бит. Новые типы индексов (в частности DPSI), рекурсивный SQL. Внутренний каталог преобразован в Unicode.
В 2007 году GA V9. Он добавил, например, Trusted Context (функция безопасности) и поддержку «собственного XML».
В 2010 году GA V10. Он добавил, например, временные таблицы (например, историю строк), функции безопасности, такие как разделение системных администраторов и администраторов безопасности, а также RCAC (управление доступом к строкам и столбцам).
В 2013 году GA V11. Он добавил, например, поддержку JSON.
В 2016 году GA V12. Он добавил, например, RESTful-сервисы; и использование ИИ для оптимизации выбора пути доступа к данным, тем самым повысив производительность.
31 мая 2022 года IBM выпустила Db2 13 для z/OS. [19]
«Хранилище данных» впервые было упомянуто в статье журнала IBM Systems Journal за 1988 год под названием «Архитектура систем деловой информации». [20] В этой статье был проиллюстрирован первый вариант использования хранилища данных в бизнес-среде, а также результаты его применения.
Традиционные базы данных обработки транзакций не могли предоставить руководителям бизнеса информацию, необходимую для принятия решений на основе данных. Требовался новый подход к агрегации и анализу данных из нескольких источников транзакций для предоставления новых идей, выявления закономерностей и поиска скрытых взаимосвязей между данными. Db2 Warehouse с его возможностями нормализации данных из нескольких источников выполняет сложное аналитическое и статистическое моделирование, предоставляет предприятиям эти функции быстро и масштабно.
Увеличение вычислительной мощности привело к взрывному росту данных внутри предприятий в целом и хранилищ данных в частности. Хранилища выросли с измерения в ГБ до ТБ и ПБ. По мере роста объема и разнообразия данных Db2 Warehouse также адаптировался. Изначально предназначенный для схем «звезда» и «снежинка», Db2 Warehouse теперь включает поддержку следующих типов данных и аналитических моделей, среди прочих:
Db2 Warehouse использует контейнеры Docker для работы в различных средах: локально, в частном облаке и в различных публичных облаках, как управляемых, так и неуправляемых. Db2 Warehouse может быть развернут как программное обеспечение, как устройство и на платформах Intel x86, Linux и мэйнфреймов. Созданный на основе движка IBM Common SQL, Db2 Warehouse запрашивает данные из нескольких источников — Oracle, Microsoft SQL Server, Teradata, open source, Netezza и других. Пользователи пишут запрос один раз, и данные возвращаются из нескольких источников быстро и эффективно.
Db2 on Cloud: ранее называвшаяся «dashDB for Transactions», Db2 on Cloud — это полностью управляемая облачная база данных SQL с возможностью обеспечения высокой доступности, включающая соглашение об уровне обслуживания (SLA) с временем безотказной работы 99,99 % . Db2 on Cloud предлагает независимое масштабирование хранилища и вычислений, а также последовательные обновления безопасности.
Db2 on Cloud можно развернуть как в IBM Cloud , так и в Amazon Web Services (AWS).
Ключевые особенности включают в себя:
Db2 Hosted: Db2 Hosted, официально именуемая «DB2 on Cloud», представляет собой неуправляемую размещенную версию транзакционной облачной базы данных SQL Db2 on Cloud.
Основные характеристики:
Ранее называвшееся «dashDB for Analytics», Db2 Warehouse on Cloud представляет собой полностью управляемое, эластичное облачное хранилище данных, созданное для высокопроизводительных аналитических задач и рабочих нагрузок машинного обучения .
Ключевые особенности включают в себя:
В 2018 году продукт IBM SQL был переименован и теперь известен как IBM Db2 Big SQL (Big SQL). Big SQL — это гибридный SQL корпоративного уровня, совместимый с ANSI, на движке Hadoop , обеспечивающий массовую параллельную обработку (MPP) и расширенный запрос данных. Дополнительные преимущества включают низкую задержку, высокую производительность, безопасность, совместимость с SQL и возможности федерации.
Big SQL предлагает единое подключение к базе данных или запрос для разрозненных источников, таких как HDFS, RDMS, базы данных NoSQL, хранилища объектов и WebHDFS. Эксплуатируйте Hive, или эксплуатируйте Hbase и Spark, и будь то в облаке, локально или и там, и там, получайте доступ к данным через Hadoop и реляционные базы данных.
Пользователи (специалисты по работе с данными и аналитики) могут выполнять более интеллектуальные специальные и сложные запросы, поддерживая большее количество одновременных пользователей с меньшим количеством оборудования по сравнению с другими вариантами SQL для Hadoop. [ необходима ссылка ] Big SQL предоставляет совместимый с ANSI SQL-анализатор для выполнения запросов из неструктурированных потоковых данных с использованием новых API.
Благодаря интеграции с IBM Common SQL Engine, Big SQL был разработан для работы со всеми предложениями семейства Db2, а также с IBM Integrated Analytics System. Big SQL является частью IBM Hybrid Data Management Platform, комплексной стратегии IBM для гибкости и переносимости, сильной интеграции данных и гибкого лицензирования.
Db2 Event Store нацелен на потребности Интернета вещей (IOT), промышленности, телекоммуникаций, финансовых услуг, онлайн-ритейла и других отраслей, которым необходимо выполнять аналитику в реальном времени на потоковых данных большого объема с высокой скоростью. Он стал общедоступным в июне 2017 года. Он может хранить и анализировать 250 миллиардов событий в день всего с 3 серверными узлами с его высокоскоростными возможностями сбора и анализа данных. Необходимость поддержки ИИ и машинного обучения была предусмотрена с самого начала путем включения IBM Watson Studio в продукт и интеграции блокнотов Jupyter для совместной разработки приложений и моделей. Обычно в сочетании с потоковыми инструментами он обеспечивает постоянные данные, записывая данные в объектное хранилище в открытом формате данных (Apache Parquet). Созданный на основе Spark, Db2 Event Store совместим с Spark Machine Learning, Spark SQL, другими открытыми технологиями, а также с семейством Db2 Common SQL Engine и всеми поддерживаемыми языками, включая Python, GO, JDBC, ODBC и другие.
В 1994 году IBM переименовала интегрированную реляционную базу данных OS /400 в DB2/400 , чтобы указать на сопоставимую функциональность с DB2 на других платформах. [23] Несмотря на это название, она не основана на коде Db2, а вместо этого развилась из интегрированной базы данных IBM System/38 . В настоящее время продукт называется IBM Db2 for i . [24]
Db2 для z/OS доступен в традиционной упаковке продукта [29] или в версии Value Unit Edition, которая позволяет клиентам вносить единовременную плату.
Db2 также поддерживает IBM InfoSphere Warehouse, который предлагает возможности хранилища данных. InfoSphere Warehouse доступен для z/OS. Он включает несколько функций BI , таких как ETL , интеллектуальный анализ данных , ускорение OLAP и встроенная аналитика.
Db2 11.5 для Linux, UNIX и Windows содержит все функции и инструменты, предлагаемые в предыдущем поколении DB2 и InfoSphere Warehouse для Linux, UNIX и Windows.
IBM предлагает три редакции: Db2 Community Edition, Standard Server Edition и Advanced Server Edition.
IBM Db2 Community Edition — это бесплатная для загрузки и использования версия базы данных IBM Db2, которая имеет как функции базы данных XML , так и функции системы управления реляционной базой данных . Она предоставляет все основные возможности Db2, но ограничена 4 ядрами виртуального процессора, 16 ГБ памяти экземпляра, не имеет поддержки корпоративного уровня и пакетов исправлений. Ограничений на размер базы данных нет. [30]
27 июня 2019 года IBM выпустила Db2 V11.5 — обновление Db2, призванное обеспечить улучшения для автоматизации управления данными, устранения ETL и поддержки рабочих нагрузок искусственного интеллекта. Вместе с обновлением IBM представила оптимизированные предложения. Db2 Community Edition заменяет Express-C и Developer Community Edition.
IBM Db2 Community edition, начиная с версии 11.5.1, не имеет ограничений на размер базы данных. [31] Некоторые предыдущие выпуски версии 11.5 накладывали ограничение на размер базы данных в 100 ГБ. Механизм базы данных не ограничивает количество одновременных подключений пользователей. Предыдущая бесплатная версия Db2, IBM DB2 Express-C, поддерживала до 16 ГБ ОЗУ и два ядра ЦП.
27 июня 2019 года IBM анонсировала специальную бесплатную версию Db2 Database под названием Db2 Community edition. Db2 Community edition была создана для версии IBM Db2 11.5. Db2 Community Edition заменила ранее бесплатную версию IBM Db2, известную как DB2 Express-C.
30 января 2006 года IBM анонсировала специальную бесплатную версию DB2 Express edition под названием DB2 Express-C. Редакция DB2 Express-C была создана для версии 8.2 IBM Db2. После этого Db2 Express-C была создана для всех новых версий DB2: 9.1 (кодовое название «Viper»), 9.5 (кодовое название «Viper 2»), 9.7 (кодовое название «Cobra»), 10.01 (кодовое название «Galileo»), 10.5 (кодовое название «Kepler») и 11.1.
Db2 Standard Edition доступен как бессрочная лицензия на программное обеспечение для производственного и непроизводственного использования до 16 ядер процессора и 128 ГБ ОЗУ с поддержкой IBM. Для производственного использования Db2 Standard Edition может быть лицензирован на основе метрики Virtual Processor Core, где он лицензируется по общему количеству ядер процессора на неразделенном физическом сервере или виртуальных ядер, назначенных виртуальному серверу. Для непроизводственного использования Db2 Standard Edition может быть лицензирован на основе общего количества авторизованных пользователей.
Db2 Advanced Edition доступен только как компонент IBM Hybrid Data Management Platform (HDMP). В рамках HDMP Db2 доступен как в виде бессрочной лицензии на программное обеспечение, так и в виде ежемесячной подписки для неограниченного производственного и непроизводственного использования с премиум-поддержкой IBM. Для бессрочной лицензии HDMP и предложений по подписке необходимо приобрести FlexPoints. FlexPoints — это общие лицензионные кредиты, которые можно использовать для развертывания любого программного продукта семейства Db2 или предложения облачного сервиса.
Db2 Advanced Edition предлагает следующие преимущества:
IBM разработала много версий Db2 под кодовым названием, и документация может быть связана с этим названием.
Дб2
Db2 для z/OS
Db2 можно администрировать как из командной строки, так и из графического интерфейса. Интерфейс командной строки требует большего знания продукта, но его легче заскриптовать и автоматизировать. Графический интерфейс представляет собой многоплатформенный клиент Java, который содержит множество мастеров, подходящих для начинающих пользователей. Db2 поддерживает как SQL, так и XQuery . DB2 имеет собственную реализацию хранилища данных XML, где данные XML хранятся как XML (а не как реляционные данные или данные CLOB) для более быстрого доступа с помощью XQuery.
Db2 имеет API для Rexx , PL/I , COBOL , RPG , Fortran , C++ , C , Delphi , .NET CLI , Java , Python , Perl , PHP , Ruby и многих других языков программирования. Db2 также поддерживает интеграцию в интегрированные среды разработки Eclipse и Visual Studio .
pureQuery — это платформа доступа к данным от IBM, ориентированная на приложения, которые обращаются к данным. [ требуется пояснение ] pureQuery поддерживает как Java , так и .NET . pureQuery обеспечивает доступ к данным в базах данных и объектам Java в памяти с помощью своих инструментов , API и среды выполнения , предоставляемых в IBM Data Studio Developer и IBM Data Studio pureQuery Runtime . [32]
DB2 для MVS (позже OS/390) в 1983 году
С момента появления DB2 в 1983 году IBM ...[ ненадежный источник? ]
Управление реляционными базами данных ... DB2 от IBM
1970-х годов, когда IBM Research изобрела реляционную модель и язык структурированных запросов (SQL), IBM разработала полное семейство программного обеспечения для СУРБД. Разработка началась на платформах мэйнфреймов, таких как Virtual Machine (VM), Virtual Storage Extended (VSE) и Multiple Virtual Storage (MVS). В 1983 году появилась DB2 для MVS версии 1. "DB2" использовалось для обозначения перехода от иерархических баз данных, таких как популярная в то время система управления информацией (IMS), к новым реляционным базам данных.
Db2 for z/OS — это реляционная база данных, которую можно использовать для хранения больших объемов данных с высоким уровнем доступности, безопасности и производительности.
z/VSE V6.2 может работать с 1 декабря 2017 г. при использовании в .... Db2 Server for VSE and VM и Db2 Server for VSE Client Edition