導入事例:「DBMS」活用法をユーザーに聞く

ユーザー企業のIT担当者を対象に、IT製品/サービスの導入・購買に役立つ情報を提供する無料の会員制メディア「TechTargetジャパン」。このコンテンツでは、DBMSに関する事例の記事を紹介します。製品/サービス選定の参考にご覧ください(リンク先のページはPR記事を含みます)。

DBMS(データベース管理システム)とは

 「データベース管理システム」(DBMS)は、データベースを作成して管理するためのシステムだ。基本的には、データベースそのものと、エンドユーザーまたはアプリケーションの間のインタフェースとして機能する。エンドユーザーはDBMSを使い、データベース内のデータの作成や保護、読み取り、更新、削除ができるようになる。DBMSは一定のルールに従ってデータを整理し、簡単にアクセスできる状態に保つ。(続きはページの末尾にあります)

DBMS関連の事例

IKEAとコニカミノルタ系が「PostgreSQL」に移った理由

オンプレミスのDBMSからオープンソースの「PostgreSQL」に乗り換えた企業にIKEAとKonica Minolta Healthcare Americasがある。なぜPostgreSQLなのか。両社に選定理由や活用術を聞いた。

(2021/1/28)

コニカミノルタ系がSQL Serverから「PostgreSQL」に移行した訳と、直面した壁

Konica Minolta Healthcare Americasは、それまで利用していた「SQL Server」から「PostgreSQL」に移行した。PostgreSQLを選択した理由と、運用時に直面した課題を担当者が説明する。

(2020/10/2)

IKEAはプロプライエタリDBMSから「PostgreSQL」にどう乗り換えたのか

小売業大手のIKEAはオープンソースRDBMS「PostgreSQL」を活用している。数あるRDBMSの中からPostgreSQLを選択するに至ったプロセスと理由を担当者が語る。

(2020/9/25)

OSSのデータベースに限界を感じた企業が選んだデータベースとは?

日本のPropre Japanは、オープンソースのデータベースに見切りをつけてあるプロプライエタリのデータベースに移行した。結果、大幅なコスト削減に成功したという。

(2020/8/21)

ミッション:メインフレームのDb2データをSQL Serverに移行せよ

アプリケーションのモダナイゼーションに際しての課題の一つに、旧システムの知識がある。メインフレームで運用していたデータベースを最新のデータウェアハウスに移行するのは困難を伴った。

(2020/5/27)

FinTech企業が大規模導入で学んだ「GraphQL」の注意点とは?

データ連携に「GraphQL」を利用するCredit Karmaは、アプリケーション改修と実際の運用を経て、GraphQL活用のための教訓を得たという。その教訓と、浮かび上がった課題とは何か。

(2020/4/8)

企業は「SAP HANA」を何に利用しているのか? 3大用途を紹介

「SAP HANA」にはワークフローの改善、意思決定支援、データ統合という3つの長所がある。企業におけるSAP HANAの用途にはどのようなものがあるだろうか。

(2019/6/25)

動的SQLも漏れなくチェックするDB移行支援ツール「Insight Database Testing」

インサイトテクノロジーが新たに販売開始したデータベース移行支援ツールが「Insight Database Testing」だ。ユーザーは移行先データベースでSQL文を実行した結果を確認し、その場でSQL文の修正とテスト実行ができる。

(2019/5/8)

OracleのCEOが予言「数十万人のOracleデータベース管理者は失業する」

OracleのCEOマーク・ハード氏が、同社の自立型データベース「Oracle Database 18c」の導入メリットを語った。同製品を導入すれば、「必要な管理者はゼロになる」という。

(2018/6/26)

リクルートのビッグデータ分析基盤ができるまで、事業部門と開発部門が共に奮闘

リクルートのサービスで共通に使われる「リクルートID」。ここに集まる膨大なデータを同社はどのように収集、分析し、活用基盤を構築しているのか。機械学習の結果を現場で生かす上での苦労と併せて紹介する。

(2017/11/27)

今さら聞けないグラフ型データベース基礎の基礎

グラフ型データベースとは何か。何ができて、どのようなメリットがあるのか。グラフ型データベースについて、一から分かりやすく解説する。

(2016/8/31)

MySQL時代の終わり? MariaDB移行の理由は「拡張性と処理性能向上」

チケット販売サイトがデータベースをMySQLからMariaDBにリプレース。高速性が評価されて普及したMySQLだが、処理性能を理由に他DBへの移行が行われる時代になったのか。

(2015/5/27)

OKI、Oracle DBの障害解析・性能分析を強化したサポートサービスを開始

Oracleデータベースの障害対応と性能問題の解決に要する時間を大幅に短縮するサポートサービス「DressUP Performance Support for Oracle Database」

(2007/9/6)

DBMSの用途と役割

 DBMSは、データの変更管理やデータベースの監視、調整、セキュリティ対策、データのバックアップと復元といった、データベースの管理に必要な作業を実行可能にする。DBMSによってはデータベース自体のアクティビティー(操作や処理)と、データベースにアクセスするアプリケーションのアクティビティーのログを取得し、監査する機能も備える。

 エンドユーザーにデータの表示画面を提供することもDBMSの役割だ。複数のエンドユーザーが、複数の場所から同一のデータを利用できるようにする。IT管理者はエンドユーザーに表示するデータやその表示方法を制限したり、1つのデータベーススキーマ(データベースの設計)に対して、複数の表示方法を用意したりできる。

 データベースに対する操作をDBMSが一手に担うので、エンドユーザーやアプリケーションは、データの物理的な格納場所やデータが配置されているストレージの種類を意識する必要がなくなる。DBMSが提供するAPI(アプリケーションプログラムインタフェース)を使用する限り、データベースに変更が加わるたびに、開発者がアプリケーションのプログラムを修正する必要はない。

 DBMSの一つである「リレーショナルデータベース管理システム」(RDBMS)では、データベースの操作に「SQL」を利用する。SQLは、データの定義、保護、アクセスを実行するためのプログラミング言語だ。

主なDBMSの種類

  • RDBMS

 RDBMSは「SQLデータベース」とも呼ばれる。データを固定のスキーマ(データ構造)を持つテーブル(表)の行として表現し、キー列の値によって関係性を定義する。高価な製品もあれば、「PostgreSQL」のようなOSS(オープンソースソフトウェア)の選択肢もある。

 主なRDBMSには、IBMの「IBM Db2」やMicrosoftの「Microsoft SQL Server」、オープンソースの「MySQL」などがある。「SingleStore」は、AI(人工知能)技術を活用したアプリケーションやシステム運用データの分析用に設計されたクラウドネイティブデータベースだ。

  • NoSQL DBMS

 NoSQL DBMSは、時間とともに変化するデータ構造に適する。ただしスキーマを管理するために、アプリケーションの改修が必要になることがある。NoSQL DBMSには主に4つの種類がある。

1.ドキュメントデータベース

 ドキュメントデータベースは、半構造化データ(厳密な構造が決まっていないデータ)を保存するためのデータベースだ。一般的に、データを「JSON」形式のドキュメントとして保存する。コンテンツ管理やモバイルアプリケーションなど、さまざまなスキーマ要件を満たす必要があるシステムに適するデータベースだ。代表例としてはMongoDBの「MongoDB」や、OSSの「Couchbase Server」がある。

2.グラフデータベース

 グラフデータベースは、データをテーブル(表)やドキュメントではなく、「ノード」と「リレーション」(関係)で表す。データ同士のつながり(関係性)を重視する特徴のために、SNSや予約システム、顧客関係管理(CRM)など、データの関連性を扱うシステムに適する。グラフデータベースの具体的な製品例として、Neo4jのOSS「Neo4j」がある

3.キーバリュー型データベース

 キーバリュー型データベースは、「キー」(識別子)と「値」(データ)を1組として保存する。この単純さから、処理速度が速く、大規模なアプリケーションの開発に向いている。具体的にはWebアプリケーションのセッション管理やキャッシング、オンラインショッピングのカートの管理などの用途がある。Redisが開発した「Redis」やDanga Interactiveが開発した「Memcached」といったOSSは、主なキーバリュー型データベースの一例だ。

4.ワイドカラムストア

 ワイドカラムストアは、一般的なRDBMSのようにテーブルとカラム(列)、レコード(行)でデータを表現しつつ、各行が異なるカラムを持つことができる。列ごとにデータを保存するため、特定の列のデータを素早く検索する処理に適している。この特徴から、レコメンデーションエンジンやカタログ管理、不正検出、イベントログ管理などの用途に適する。Meta Platforms(旧Facebook)が開発したOSSの「Apache Cassandra」やApache Software FoundationのOSS「Apache HBase」がその一例だ。

  • NewSQL DBMS

 NewSQL DBMSは、SQLを使用する新しい種類のRDBMSだ。一部のベンダーはNewSQLという名称を使わず、「分散SQLデータベース」と呼ぶ。NoSQLのような拡張性を備えると同時に、ACID特性(原子性、一貫性、独立性、耐久性)によってデータの整合性を確保する。NewSQL DBMSは、RDBMSの仕組みを持ちながら、分散処理や耐障害性の向上が可能な設計になっている。インメモリ処理の機能を備えていたり、クラウドインフラで利用できたりする点も特徴だ。RDBMSよりも機能がシンプルで軽量なため、運用や管理がしやすいという利点もある。

 代表的なNewSQL DBMSとして、Cockroach Labsが開発したOSS「CockroachDB」、Googleのデータベースサービス「Google Cloud Spanner」、NuoDBの「NuoDB」、YugabyteDBの「YugabyteDB」などが挙げられる。

  • インメモリDBMS

インメモリDBMSは、データを主にメモリ(RAM)で処理するDBMSだ。一般的なDBMSはHDDなどのストレージにデータを保存し、必要に応じて読み書きを実行するが、インメモリDBMSはそのプロセスを省略し、メモリで直接データを処理するため、応答時間を高速化できる。そのためDBMSはリアルタイムでデータ処理が求められるアプリケーションに適する。特に向いているのが、データのトランザクション処理(OLTP)と分析処理(OLAP)を同じデータベースで同時に実行するHTAP(ハイブリッドトランザクショナルアナリティカルプロセッシング)を必要とするシステムだ。HTAPはデータ処理とデータ分析の両方を、単一のDBMSで実行するための技術を指す。ただしインメモリデータベースはメモリの消費量が一般的なDBMSよりも増えるため、サーバのリソース管理が重要になる。インメモリデータベースの例として、SAPの「SAP HANA」やRedisが挙げられる。

  • 列指向DBMS

 列指向DBMSは、データをカラム単位で保存するDBMSだ。一般的なRDBMSはレコードごとにデータを保存するが、カラム指向データベースは列ごとにデータを保存するため、特定の列のデータだけを素早く検索することができる。この特徴から、データウェアハウス(DWH)のように、大量のデータを効率よく分析する用途に適する。特に同じ種類のデータが大量に格納される場合、データ圧縮の効果が高く、ストレージの使用効率の向上が見込める。カラム指向データベースの代表的な製品としては、Snowflakeの「Snowflake」やAmazon Web Services(AWS)の「Amazon Redshift」がある。

  • マルチモデルDBMS

 マルチモデルDBMSは、単一のDBMSで異なる形式や構造のデータを扱えるDBMSを指す。ユーザー企業は異なるDBMSに切り替えることなく、1つのDBMSで複数のデータ構造を管理できる。IBM Db2はRDBMSだが、列指向でデータを処理する機能も提供する。OracleのRDBMS「Oracle Database」やMongoDBなどのDBMSも、拡張機能を適用することでマルチモデルDBMSとして使える。Microsoftの「Microsoft Azure Cosmos DB」やProgress SoftwareのNoSQL DBMSの「MarkLogic」などの製品は、最初からマルチモデルDBMSとして開発された。

  • クラウドDBMS

 クラウドDBMSは、クラウドインフラで実行されるDBMSを指す。RDBMSやNoSQL DBMSなどさまざまな種類のDBMSがあり、ユーザー企業が構築や管理をする形態のものと、クラウドベンダーが運用を代行するマネージドサービスがある。

 必要に応じてリソースを拡張、縮小できる点が、クラウドDBMSの利点だ。インフラとなるハードウェアの管理が不要なため、システムの運用負担を軽減できる。Microsoftの「Microsoft Azure」やGoogleの「Google Cloud」、AWSの同名サービスなどのクラウドサービス群が、サービスの一つとしてクラウドDBMSを提供している。

  • ハイブリッドDBMS

 ハイブリッドDBMSは単一の製品で複数のデータベースエンジンを利用できるDBMSを指す。一般的に、RDBMSと複数のNoSQLエンジン、APIを組み合わせた構造になっている。例えばAltibaseのDBMS「Altibase」はインメモリデータベースとディスクデータベースの両方が利用可能なハイブリッドDBMSだ。DataStaxのハイブリッドDBMS「DataStax Enterprise」は、ハイブリッドクラウド(オンプレミスインフラとクラウドインフラを併用する形態)で利用可能なことが特徴だ。

DBMSの進化

 DBMSの関連技術は進化を続けており、データベースの構築方法やサービスの提供方法に影響を与えている。主なトレンドを紹介する。

  • オープンソースDBMSの普及
    • 調査会社Gartnerは、DBMS市場においてオープンソースDBMSのシェアが拡大傾向にあると指摘した。
    • DBMSのランキングサイト「DB-Engines」が作成したランキングでは、2014年から2025年3月時点まで、トップ5のうち3つがオープンソースまたはDBMSとなっている。
  • DBMSへの支出増加
    • Gartnerは2023年、DBMSに対する全世界のユーザー企業の支出は、2022年から2027年の間に年平均成長率16.8%で拡大すると予測した。
  • HTAPの台頭
    • HTAPは、従来別々のDBMSが実行していたデータ処理とデータ分析を、単一のDBMSで実行するための技術を指す。
    • DBMSベンダーはHTAPを実現するために、ハイブリッドDBMSの開発、提供を進めている。