DB2

DB2
Логотип программы DB2
Тип Система управления базами данных
Разработчик IBM
Написана на C, C++
Операционная система Кроссплатформенное ПО
Первый выпуск 23 мая 1995
Последняя версия 11.5
Лицензия Проприетарная EULA
Сайт ibm.com/db2/ (англ.)
Логотип Викисклада Медиафайлы на Викискладе

DB2 — семейство систем управления реляционными базами данных, выпускаемых корпорацией IBM. Чаще всего, ссылаясь на DB2, имеют в виду реляционную систему управления базами данных DB2 Universal Database (DB2 UDB)[1].

Реализации

В 2000-е годы СУБД DB2 представлена версиями на следующих платформах:

  • DB2 for Linux, UNIX and Windows v10 для платформ AIX, HP-UX, Linux, Solaris, Windows и Mac OS X
  • DB2 for z/OS v10 для платформ z/OS и OS/390
  • DB2 Server for VM v7.5 для платформ z/VM и z/VSE
  • DB2 for i для платформы IBM i (встроена в систему на аппаратно-программном уровне)

В 1990-е годы также выпускались версии сервера DB2 для OS/2, UnixWare, PTX.

Клиенты СУБД DB2, помимо перечисленных платформ, выпускаются или выпускались в различных версиях также для SINIX, IRIX, классической Mac OS и для MS-DOS, а также в мобильной версии DB2 Everyplace для Windows CE, Palm OS, Symbian OS, Neutrino и виртуальной машины Java.

Начиная с 2000-х годов помимо коммерческих продуктов семейства, IBM распространяет также бесплатный дистрибутив Db2 Community Edition, до середины 2019 года называвшийся DB2 Express-C [2]:

Ограничения DB2 Express-C
  • платформы: Linux (x86, x86-64, POWER), Windows (x86, x86-64), Solaris (x86-64), Mac OS X (x86-64).[3]
  • один экземпляр СУБД использует не более двух процессорных ядер, независимо от того, сколько процессорных ядер имеется на сервере.
  • один экземпляр СУБД использует не более 2 Гбайт оперативной памяти. Это верно для версии 9. Но уже в DB2 Express-C 10-й версии максимальный объём памяти удвоен и составляет 4 ГБ.

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

История

В начале 1970-х годов Эдгар Кодд, работавший на IBM, разработал теорию реляционных баз данных и в июне 1970 года опубликовал модель манипуляции данными. Для воплощения этой модели он разработал язык реляционных баз данных и назвал его Alpha. IBM предпочла передать дальнейшую разработку группе программистов, неподконтрольной Кодду. Нарушив некоторые принципы реляционной модели, они реализовали её как «структурированный английский язык запросов», сокращённо SEQUEL. Поскольку акроним SEQUEL был на тот момент сторонней зарегистрированной торговой маркой, название сократили до 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.

Таким образом, исторически СУБД 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 постепенно движется по пути интеграции всех этих веток.

Особенности

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

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

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

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

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

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

Обработка ошибок

Полезной особенностью SQL-сервера DB2 является возможность обработки ошибок. Для этой цели используется структура SQLCA (англ. SQL Communications Area — область связи SQL), возвращающая информацию об ошибке прикладной программе после каждого выполнения SQL-выражения.

Поля структуры SQLCODE и их значения

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

  • 0 означает успешное выполнение.
  • Положительное число означает успешное выполнение с одним или более предупреждениями. Например, +100 означает, что не найдены столбцы.
  • Отрицательное число означает неудачу с ошибкой. Например, −911 означает обнаруженный истёкший интервал ожидания блокировки (или мёртвую блокировку), запускающий последовательный откат.

SQLERRM (тип данных — строка из 71 символа). Содержит текстовую строку с описанием ошибки в случае, если поле SQLCODE меньше нуля.

SQLERRD (тип данных — массив, 6 целых чисел). Описывает результат выполнения последнего оператора SQL:

  • 1 элемент — внутренняя информация;
  • 2 элемент — содержит сгенерированное сервером значение поля типа SERIAL для оператора INSERT, либо дополнительный код ошибки;
  • 3 элемент — равен количеству обработанных записей;
  • 4 элемент — примерная стоимость выполнения данного оператора;
  • 5 элемент — смещение ошибки в текстовой записи оператора SQL;
  • 6 элемент — внутренняя информация.

Примечания

  1. Иногда встречается написание «DB/2», но такое написание неверно: в системе обозначений IBM число в знаменателе дроби означает платформу и «/2» означает продукт для операционной системы OS/2 (или серии компьютеров PS/2). Например, версия DB2 для OS/2 обозначалась «DB2/2»
  2. Get a Jumpstart with IBM Db2 Community Edition
  3. IBM DB2 Express-C Overview. Дата обращения: 23 мая 2009. Архивировано 2 сентября 2010 года.

Ссылки

Литература

  • Дейт К. Руководство по реляционной СУБД DB2. — М.: Финансы и статистика, 1988. — 320 с. — ISBN 5-279-00063-9.
  • Зикопулос П. К., Бакларц Дж., деРус Д., Мельник Р. Б. DB2 версии 8: официальное руководство = DB2 Version 8: The Official Guide. — М.: КУДИЦ-ОБРАЗ, 2004. — 400 с. — ISBN 5-9579-0031-1.
  • Смирнов С. Н. Работаем с IBM DB2: Учебное пособие. — М.: Гелиос, 2001. — 304 с. — ISBN 5-85438-007-2.
  • Сьюзен Виссер, Билл Вонг. Освой самостоятельно DB2 Universal Database за 21 день = Sams Teach Yourself DB2 Universal Database in 21 Days. — 2-е изд. — М.: Вильямс, 2004. — 528 с. — ISBN 0-672-32582-9.
  • Hook J., Harbus R., Snow D. The Universal Guide to DB2 for Windows NT®. — New Jersey: Prentice Hall PTR, 1999. — P. 504. — ISBN 0-13-099723-4.


Read other articles:

Cavaquinho traditionnel. Le cavaquinho est un instrument de musique d'origine portugaise à quatre cordes pincées ressemblant à une guitare. Il peut aussi être désigné sous le nom de machimbo, machim, machete, braguinha (du nom de la ville de Braga). La forme du cavaquinho de Madère, appelé machete, est – avec le rajão – l'instrument qui est à l'origine de la création de l'ukulélé hawaiien (classé par certains auteurs comme une forme du cavaquinho). Cet instrument s'est répandu…

Державний комітет телебачення і радіомовлення України (Держкомтелерадіо) Приміщення комітетуЗагальна інформаціяКраїна  УкраїнаДата створення 2003Керівне відомство Кабінет Міністрів УкраїниРічний бюджет 1 964 898 500 ₴[1]Голова Олег НаливайкоПідвідомчі орг…

Gee

Halaman ini berisi artikel tentang album. Untuk lagu, lihat Gee (lagu). GeeAlbum mini karya Girls' GenerationDirilis7 Januari 2009Direkam2008GenreDance pop, elektropopDurasi18:06LabelSM EntertainmentProduserLee Soo ManKronologi Girls' Generation Girls' Generation/Baby Baby(2007)Girls' Generation/Baby Baby2007 Gee(2009) Tell Me Your Wish (Genie)(2009)Tell Me Your Wish (Genie)2009 Singel dalam album Gee GeeDirilis: 5 Januari 2009 Gee[1][2] adalah album mini pertama dari grup as…

Cet article est une ébauche concernant une localité croate. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants. Kostrena Sveta Lucija Héraldique Administration Pays Croatie Comitat Primorje-Gorski Kotar Municipalité Kostrena Code postal 51221 Indicatif téléphonique international +(385) Indicatif téléphonique local 0 51 Démographie Population 682 hab. (2001) Géographie Coordonnées 45° 18′ 04…

 烏克蘭總理Прем'єр-міністр України烏克蘭國徽現任杰尼斯·什米加尔自2020年3月4日任命者烏克蘭總統任期總統任命首任維托爾德·福金设立1991年11月后继职位無网站www.kmu.gov.ua/control/en/(英文) 乌克兰 乌克兰政府与政治系列条目 宪法 政府 总统 弗拉基米尔·泽连斯基 總統辦公室 国家安全与国防事务委员会 总统代表(英语:Representatives of the President of Ukraine) 总理…

German geographer and scholar Johann Hübner Johann Hübner (17 March 1668 – 21 May 1731) was a German geographer and scholar, who taught by the question and answer method. Life Johann Hübner attended school in Zittau before studying theology, poetry, rhetoric, geography and history at the University of Leipzig. In 1694 he became rector of the Gymnasium in Merseburg.[1] With his Questions and Answers to Geography book, published in 1693, the subject of geography began to be taught in …

Halaman ini berisi artikel tentang karakter Nintendo. Untuk waralaba senama yang menampilkan dia, lihat Mario (franchise) dan Super Mario. MarioTokoh Donkey Kong dan MarioPenampilanperdanaDonkey Kong9 Juli 1981PenciptaShigeru MiyamotoDidesainolehShigeru MiyamotoYōichi KotabeShigefumi HinoPemeranHarris Shore (Iklan Donkey Kong dan Donkey Kong Jr. ColecoVision)[1]Lou Albano (The Super Mario Bros. Super Show!)Bob Hoskins (Super Mario Bros.)Pengisi suaraCharles Martinet (1991–2023)[2&…

French music company LâgIndustryMusical InstrumentsFounded1980; 44 years ago (1980)FounderMichel Lâg-ChavarriaHeadquartersBédarieux, FranceProductsAcoustic guitarsWebsitelagguitars.com Lâg Guitars is a French music company founded in the Occitania region of France by luthier Michel Lâg-Chavarria in 1980. Lâg produces various acoustic guitars, smart guitars and ukuleles. They are designed in the south of France.[1] Notable players of Lâg guitars include Phil Campb…

Period in the history of philosophy Part of a series onPhilosophy Philosophy portal Contents Outline Lists Glossary History Categories Disambiguation Philosophies By period Ancient Ancient Egyptian Ancient Greek Medieval Renaissance Modern Contemporary Analytic Continental By region African Egypt Ethiopia South Africa Eastern philosophy Chinese Indian Indonesia Japan Korea Vietnam Indigenous American Aztec philosophy Middle Eastern philosophy Iranian Western American British French German It…

American media company founded in 1867 Cision Ltd.Trade nameCisionCompany typePrivateIndustryTechnologyPredecessorCision ABVocusFounded1867; 157 years ago (1867)HeadquartersChicago, Illinois, United StatesArea servedWorldwideKey peopleCali Tran (CEO)Prasant Gondipalli (CFO)Paul Dumas (CHRO)Heather Bunyard (CIO)ProductsMarketing and public relations software & servicesServicesPublic Relations ServicesPR SoftwareMarketing ResourcesMedia Contacts DatabasePress Release Distribu…

Native American celebration Building houses for the Nanomonestotse village. Nanomonestotse is an autumn celebration of peace, observed within some Native American families. The word nanomónestôtse (pronounced NAH-noh-MAH-nay-STOHT-say) means peace in the Cheyenne language.[1] History and traditions Nanomonestotse traces its roots back to the early 1900s and a Native American woman named Marion Young, who is credited with passing the ideals of peace on to her descendants. Nanomonestotse…

This article relies excessively on references to primary sources. Please improve this article by adding secondary or tertiary sources. Find sources: Iranian Mathematical Society – news · newspapers · books · scholar · JSTOR (April 2015) (Learn how and when to remove this message) Logo of the Iranian mathematical society The Iranian Mathematical Society (IMS)[1] is the main mathematical society in Iran.[2] It was officially registered in 19…

Зміст 1 Матчі 1.1 Хорватія 4:0 Україна 1.2 Україна 0:2 Італія 1.3 Естонія 0:1 Україна 1.4 Україна 1:0 Хорватія 1.5 Литва 1:3 Україна 1.6 Словенія 3:2 Україна 1.7 Італія 3:1 Україна 2 Склад команди 3 Тренери 4 Баланс матчів 5 Клубне представництво 6 Представництво за чемпіонатом 7 Див. також 8 Посила…

British historian (born 1938) For the Canadian ice hockey player, see Perry Anderson (ice hockey). Perry AndersonAnderson in 2012BornFrancis Rory Peregrine Anderson11 September 1938 (1938-09-11) (age 85)London, EnglandOccupation(s)Historian and political essayistSpouse Juliet Mitchell ​ ​(m. 1962; div. 1972)​RelativesBenedict Anderson (brother)Academic backgroundAlma materWorcester College, OxfordAcademic workSchool or traditionNew Left F…

Military diver training for the US Marines This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: United States Marine Corps Combatant Diver Course – news · newspapers · books · scholar · JSTOR (December 2008) (Learn how and when to remove this message) USMC Combatant Diving Badge, 2002–present The USMC Combatant Di…

Neapolitan justiciarates in 1454 A justiciarate or justiciarship (Italian: giustizierato [dʒustittsjeˈraːto], plural giustizierati; alternatively known as circoscrizione) was a type of administrative subdivision that was used by several Italian states in the medieval period.[1][2] The Kingdom of Sicily under Frederick II used giustizierati to divide his realms in the 1230s: Abruzzo, Basilicata, Calabria, Capitanata, Principato e Terra Beneventana, Terra di Bari, Terra …

Trinil rawa Tringa stagnatilis Winter plumageStatus konservasiRisiko rendahIUCN22693216 TaksonomiDivisiManiraptoriformesKelasAvesOrdoCharadriiformesFamiliScolopacidaeGenusTringaSpesiesTringa stagnatilis (Bechst., 1803) Tipe taksonomiTringa Tata namaProtonimTotanus stagnatilis DistribusiRange of T. stagnatilis     Breeding      Non-breeding      Passage      Vagrant (seasonality uncertain) Tringa s…

هذه المقالة يتيمة إذ تصل إليها مقالات أخرى قليلة جدًا. فضلًا، ساعد بإضافة وصلة إليها في مقالات متعلقة بها. (يوليو_2013)   تحالف مؤسسات العلوم الإنسانية الرقمية (بالإنجليزية: Alliance of Digital Humanities Organizations)‏[1]  تحالف مؤسسات العلوم الإنسانية الرقمية‌ الاختصار (بالإنجليزية: ADHO…

Secondary school in Kentucky Bowling Green High SchoolAddress1801 Rockingham LaneBowling Green, (Warren County), Kentucky 42104United StatesInformationTypePublic high schoolSchool districtBowling Green Independent SchoolsPrincipalKyle McGrawStaff87.03 (FTE)[1]Enrollment1,220[1] (2023-24)Student to teacher ratio14.87[1]Color(s)Purple and old gold    [2]NicknamePurples[2]Website[1] Bowling Green High School is a public high school in Bowling G…

Artikel ini tidak memiliki referensi atau sumber tepercaya sehingga isinya tidak bisa dipastikan. Tolong bantu perbaiki artikel ini dengan menambahkan referensi yang layak. Tulisan tanpa sumber dapat dipertanyakan dan dihapus sewaktu-waktu.Cari sumber: Kim Sang-hyup – berita · surat kabar · buku · cendekiawan · JSTOR Artikel ini perlu dikembangkan agar dapat memenuhi kriteria sebagai entri Wikipedia.Bantulah untuk mengembangkan artikel ini. Jika tidak dik…