支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡

  • TOP
  •   
  • コラム
  •   
  • DB2とは?詳しく解説します

DB2の概要について

ここでは、DB2というデータベースについて詳しく説明させていただきます。 DB2はIBM社が開発したリレーショナルデータベースであり、 大規模システムやミッションクリティカルなシステムにおいて導入されることが多いデータベースとなります。 そもそもリレーショナルデータベースの概念を提唱したのはDB2を開発したIBM社であり、 SQLを初めてデータベースに導入しリリースしたのはDB2という認識が一般化されていることもあり、 DB2はもっとも古いリレーショナルデータベースの一つであることは間違いありません。 DB2は1983年にリリースされ、当初は汎用コンピュータ(System/370やSystem/390、AS/400)のプラットフォーム上のみ稼働することが可能でしたが、1990年代に入りマルチプラットフォーム版をリリースし、DB2は稼働するプラットフォームを広げ需要が拡大しました。 従来DB2の主要な市場は時代背景もありメインフレームやオフィスコンピュータが中心でしたが、近年となりPCやUnixの市場でも成長を続け 多くのシステムに導入されております。2021年現在においてDB2のデータベース市場でのシェアは7位前後となっており、 「Oracle Database」「MySQL」「SQL Server」の三強は揺るがず、それに追従する形の「PostgreSQL」 比較的新しく勢いのある「MongoDB」「Redis」といったサービスが存在しそのやや下にDB2がランクインしている形となっております。 リレーショナルデータベースのランキングとなりますと「Oracle Database」「MySQL」「SQL Server」「PostgreSQL」に次いでDB2となります。 DB2というとメインフレーム環境で長く活躍していたこともありレガシーな印象を持ってしまうエンジニアが多いかもしれませんが、リレーショナルデータベースの基礎的な存在であると同時に多くの現場で見かけることがあるデータベースです。 また、UnixやShellなどとも相性がいいこともあり、金融系システムや基幹系システムに多く導入されていることも多く業務系のエンジニアの方であればDB2に関する知見は必要となるケースは少なくありません。 以上が簡単なDB2の概要となりますが、DB2はリレーショナルデータベースの基本とも言えるデータベースとなりますので、インフラエンジニアやデータベースエンジニアは機会があれば是非学習していただくことをおすすめします。 IBM Cloudのアカウントを保有している方であれば、クラウド版のDb2(Db2 Warehouse on Cloud)を無償で 利用することが可能です(小容量プラン限定)ので、データベースを無料で学習できるため興味のある方は公式サイトを参考にしてみてください。 ここでは、DB2について詳しく解説させていただきますので、是非参考にしていただけましたら幸いです。

DB2の歴史

DB2の歴史について説明させていただきます。 DB2の歴史は古く、1983年に初めてのリリースが行われました。 これは1980年にIBMはSystem/38(現在の System i)のリリースが行われ、その機能にリレーショナルデータベースが存在して開発を行ったという経緯も関係しております。 DB2はIBMの汎用コンピュータ(System/370やSystem/390、AS/400)のプラットフォーム上でしか 稼働しませんでしたが、マルチプラットフォーム版として1993年「DB2(AIX版)」1994年「DB2 (Solaris、HP-UX版)」1999年「DB2 (Linux版)」というように1990年代に入りマルチプラットフォームに対応したシリーズを次々にリリースしました。 直近では2012年「DB2 V10.1」2013年 「DB2 V10.5」 2016年「DB2 V11.1」2019年「DB2 V11.5 」といった形で定期的にバージョンアップを行っております。 IBM社の近年の動向として、基幹系システムのみならず情報系システムでの利用を想定したサービスを複数提供しており、「Db2 Warehouse」「Db2 on Cloud」「Db2 Warehouse on Cloud(WoC)」などの製品をリリースしております。 また、直近ではAI時代の到来に備え、AIを組み込み活用するなど様々な機能を搭載するなど様々なサービスを提供しております。 AI時代やクラウド時代に対してDB2のイメージである「大企業向けのデータベース製品」「高額商品」というようなイメージと異なるシリーズを リリースしており、今後も注目が必要となります。 以上が簡単ではありますがDB2の歴史の説明とさせていただきます。

2016年「DB2 V11.1」について

2016年に実施された「DB2 V11.1」のバージョンアップについて簡単に触れておきます。 2021年現在から振り返ると「DB2 V11.1」のバージョンアップは2つ前のバージョンアップとなりますが、 その前のメジャーバージョンアップから実に3年ぶりとなります。 その間にIaaSベンダーであるSoftLayerを約2000億円で買収するなどクラウドへの 積極的な姿勢を見せてきましたが、「DB2 V11.1」のバージョンアップでクラウドへ大きく舵を取る動きが伺えました。 それはバージョンアップの技術的な面からも読み取ることが可能であり、 追加された新機能はいずれもクラウドにおいて非常に重要な役割を担う技術ばかりです。 それらをいくつか紹介させていただきます。 「DB2 V11.1」のバージョンアップにおいてDB2のインメモリ技術をクラウドでも使用することが可能となりました。 「DB2 10.5」のバージョンアップにおいて満を持して登場したインメモリ技術がクラウドにも対応した形となります。 IBM社の技術を集結したBLUアクセラレーションは数千台のサーバーを1つの単位として運用し、 圧倒的な大規模データの処理を実現しクラウド時代において大きな役割を担うことは間違いありません。 また、「DB2 V11.1」のバージョンアップの特徴として可用性の向上を上げることができます。 DB2 pureScaleに、DB2の高可用性災害時リカバリ(HADR)を組み合わることで、顧客の運用を とめないようなサービスを実現します。 また、R言語やNetezzaのアナリティクス技術がDB2上で利用可能となった点も同バージョンアップの特徴としてあげておきます。 以上が2016年に実施された「DB2 V11.1」のバージョンアップの説明となります。

2019年「DB2 V11.5 」について

2019年に実施された「DB2 V11.5」のバージョンアップについて説明させていただきます。 このバージョンアップは2021年現在最新のバージョンアップとなります。 「DB2 V11.5」の最大の特徴としてはプログラミング言語やフレームワークに対する一連のドライバーが数多く提供されている点であり、 開発者が機械学習やデータ分析に関する開発の支援する環境を整備しました。 プログラミング言語としてはGo、Ruby、Python、PHP、Java、Node.js、Sequelizeなどであり、フレームワークはVisual Studio CodeやJupyter Notebookなどになります。 また、Db2にはブロックチェーンに対するサポート機能も追加致しました。 これは「DB2 V11.1」で大きくクラウド戦略を行ったことに引き続きAIや機械学習なども強化していく 姿勢が見られ、IBM社の取り組みが伺えるバージョンアップと言えるのではないでしょうか。 このアップデートにおいてDb2、Db2 Standard、Db2 Advancedの三種類のエディションという形で シンプルにプランが分類されましたがすべてのエディションで同じコード・ベースを共有しエディション間の技術的な違いは、リソースの制約だけ となります。 以上が2019年に実施された「DB2 V11.5」のバージョンアップの説明となります。

2017年「Db2」へのリブランディング

IBM社は2017年に既存のブランド名である「DB2」から「Db2」に変更したと発表を行いました。 すでに説明の通りDB2は創業のメインフレーム時代から長く利用していたブランド名となります。 これらのリレーショナルデータべースを全て「Db2」としてデータ・マネジメントのファミリー名として 今後は利用することとなります。 リブランディングにはIBM社のデータに関する強い思いがあられております。 企業におけるデータがまだまだ充分に活用できているとは言えない現状から、 データの可能性を閉じ込めずに解放し“Data Without Limits” を実現したいという指針を掲げております。 さらに「Freedom of location」「Freedom of use」「Freedom of assembly」の3つを掲げよりデータに重きを置くという意味でDのみを大文字と変更したという意図があるようです。 (なお、本文では混乱を避けるためDB2で表記を統一している点についてご了承くださいませ) 以上が2017年に実施した「Db2」へのリブランディングの説明となります。

DB2とエドガー・フランク・コッド

DB2とエドガー・フランク・コッドについて説明させていただきます。 DB2の歴史の歴史を振り返る際にDB2とエドガー・フランク・コッドについての説明は外すことができません。 エドガー・フランク・コッド(1923年生まれ、イングランド)はリレーショナルデータベースという概念の 生みの親であり、DB2の開発者でもあります。 IBMにおいては伝説とも呼ばれる人物であり、後世のテクノロジーに与えた影響はあまりに大きい人物です。 1948年にエドガー・フランク・コッドはIBM社に入社した後カナダへ移住します。 その後テネシー大学数学科の講師を勤めた後は1980年代までIBMのアルマーデン研究所に勤務しました。 エドガー・フランク・コッドの最大の功績はリレーショナルデータベースという概念の発表であり 1970年 に発表された「A Relational Model of Data for Large Shared Data Banks"」(大規模共有データバンクのデータ関係モデル) という論文であります。 このリレーショナルデータベースの考え方はデータ配列の最適な検索と制御の問題を巧みに解決することを可能にしました。 また、1980年には「コッドの12の規則」と呼ばれるリレーショナルデータベースに関する定義や基準を発表しました。 「コッドの12の規則」は当時のリレーショナルデータベースを扱う企業のテクノロジーの不備や誤認識などに対する反論として 発表されたとされております。 エドガー・フランク・コッドの発表したリレーショナルデータベースの概念に大きな可能性を感じた ラリー・エリソンはOracle社を創設し、現在のデータベース市場で圧倒的なシェアを誇る企業に成長したことは知られております。 エドガー・フランク・コッドはIBM社とOracle社に莫大な財産をもたらしたといってもいいでしょう。 以上がエドガー・フランク・コッドに関する説明となります。

DB2の特徴

DB2の特徴について説明させていただきます。 いくつかポイントをあげて紹介させていただきますので、是非参考にしていただけましたら幸いです。

シンプル

DB2の特徴の一点目がシンプルということです。 DB2の特徴としてはリレーショナルデータベースの基本的な機能に加え、シンプルでエンジニアが使いやすいという点があります。 UnixやShellなどと相性が良く、金融系の現場に多く導入されている事例が多い点も特徴です。 その一方でエンジニアの知識が必要な面もあり敷居が高いという印象を持ちあまり積極的にDB2の知識を習得しようとしない方も少なくありません。 DB2の場合、他のデータベース製品と比較するとシンプルであり余計や機能や自動化機能の搭載が控えめであります。 まずはDB2の学習を行いリレーショナルデータベースの基礎を学ぶことで他の製品への応用が利くというメリットもありますので、データベースエンジニアの入り口としてDB2を学習することはおすすめです。

パフォーマンス

DB2の特徴の二点目がパフォーマンスとなります。 DB2はリレーショナルデータベースとして高いパフォーマンスと実績を誇ります。 また、パフォーマンス改善のための様々な施策やツールが準備している点も大きなメリットと言えるでしょう。 特にリレーショナルデータべースであることから、SQLの改善によりパフォーマンスに大きく影響を与えることが可能となります。 データへのアクセス経路(アクセス・パス)はオプティマイザーが、稼働環境の状態(Db2カタログ表の統計情報、プロセッサーの能力、使用可能なバッファー・プールの大きさなど) の中身を参照し決定します。 パフォーマンス障害などが起きた際にエンジニアが介入し、様々な対応をすることで改善をすることが可能です。 そのため、熟練のエンジニアであればより高いパフォーマンスで稼働させることや安定した運用維持を行うことが実現できます。

ドキュメント

DB2の特徴の三点目がドキュメントとなります。 DB2では非常に多くのドキュメントが用意されております。 海外のサービスの場合、ドキュメントを英語で読み込まないといけないなど 学習コストが高いケースもありますがDB2においてはその心配がありません。 また、ドキュメントを読むと理解できるのですがDB2は設計思想や仕様が非常にシンプルでかつわかりやすい点も特徴です。 DB2のドキュメントを通してリレーショナルベースの基本を理解することで、他のデータベース製品を扱う際に役立つことは間違いありません。

まとめ

いかがでしたでしょうか? DB2について詳しく解説させていただきましたので、参考にしていただけましたら幸いです。