本ページは、機械翻訳を利用しています。本ページの記載内容とオリジナルの英語ページ の記載内容に齟齬がある場合は、英語ページの記載内容が優先します。ご参考のために掲載するものであり、それ以外の目的のためのご利用や法的効力を生じさせることを意図しておりません。
データベース管理は単一の機能ではなく、ビジネス データをそのライフサイクル全体にわたって効率的に保存、整理、管理するように設計された一連のプロセス (通常はデータベース管理システム (DBMS) によってサポートされます) です。データ量が増加するにつれて、組織はアプリケーションのパフォーマンスを維持し、可用性、コンプライアンス、セキュリティに対するリスクを最小限に抑えるために、DBMS ソリューションと堅牢なデータベース管理プラクティスに依存するようになります。
包括的な「データベース管理」の枠組みには、組織が飛躍的かつコントロール不能なデータ成長のマイナス影響を減少または予防するために実施できる複数の技術や対策があります。
以下は、防御用によく行われるデータベース管理タスクになります:
アプリケーションとデータのパフォーマンス監視ならびに必要に応じたその調整
ストレージおよびキャパシティ増加要件に備えた計画
強力なバックアップと災害復旧ソリューションの確立
データのアーカイブ、パーティショニング、複製、およびマスキング
データベース管理は一連のベストプラクティスですが、データベース管理システム (DBMS) は、データベースとそのデータを管理するソフトウェア定義のシステムを指します。
一般的なデータベース管理システムには次のようなものがあります。
DBMS を使用すると、ユーザーはデータベース内のデータを制御し、データの読み取り、更新、作成、削除を行うことができます。データベース管理システムはインターフェースとして機能し、エンドユーザーにデータベースへのアクセスを提供し、必要に応じてデータを整理およびアクセスできるようにします。
データベース管理システムを使用すると、データベース管理者などのユーザーは、データを管理したり、ユーザーがデータベース内のデータにアクセスできるようにするエンジンを管理したり、データベースの組織構造であるデータベース スキーマを管理したりすることができます。DBMS はセキュリティを提供し、データの整合性を保証しますが、一部のシステムは、データベース内での自動ロールバックと再起動、ログ、監査アクティビティの提供にも使用されます。
データベース管理システムはさまざまなタイプにカテゴリー化できます。
すべてのデータが一か所に常駐する集中型システム。ユーザーはこの場所にアクセスしてデータを操作します。
データが様々なノードに常駐する分散システム。
フェデレーテッドシステムはソースデータの重複を伴わずにデータのプロビジョニングが可能。このカテゴリーは、さらに2つのサブカテゴリーに分けることができます:
疎結合データベースではほかのデータベースコンポーネントへのアクセスを必要とします。
密結合データベースはフェデレーテッドシステム内に入り込むために非依存のプロセスを用います。
ブロックチェーンデータベースシステムは財務およびそのほかのトランザクションを管理します。
データベースは、組織がさまざまな目的で収集して使用する情報の保存場所です。DBMS は、組織が保存されているデータベース情報を管理、アクセス、および変更できるようにするソフトウェアです。通常、組織ではどちらか一方だけが存在することはないため、これらの用語は互換的に使用されることがあります。
データの保存は、データベース、データ ウェアハウス、データ レイクの目的の 1 つです。しかし、それらは同じものではありません。
3 つの用語を区別する簡単な方法は次のとおりです。
データベースには、アプリケーションや従業員が日常業務を遂行するために必要な最新情報が保存されます。
データ ウェアハウスには、さまざまなシステムやソースからの現在のリレーショナル情報と履歴情報の両方が格納され、レポート、データ分析、ビジネス インテリジェンスに最もよく使用されます。
データ レイクには、データ ウェアハウスなどのさまざまなシステムからの現在の情報と履歴情報が格納されますが、通常は生の、インデックス付けされていない、準備されていない形式で格納されます。これは、人工知能 (AI)や機械学習プロジェクト、リアルタイム分析など、大量のデータを必要とするビッグ データ分析プロジェクトで最もよく使用されます。
簡単に言えば、データベース マネージャーとそのチームは、企業のデータベースの健全性とパフォーマンスを確保する責任を負っています。上記のようなベスト プラクティスを使用することで、組織のデータベースが適切に実行されるようになります。ただし、データベース管理システム (DBMS) を使用すると、非常に必要な制御と可視性が得られます。
要約すると、データベース管理システムはデータベースファイルを整理して、エンドユーザーにデータに対するさらなるアクセスとコントロールを提供します。これを実現するため、DBMSではユーザーが自分のデータベースファイル内のデータの操作権限を与え、必要に応じた作成、編集、およびアップデートが可能となります。その後は、DBMSが当該データを保管して、データベースから回収できます。
単一のデータベースに対する同時アクセスを複数のユーザーに付与。
セキュリティ規則およびユーザーアクセス権の設定および維持。
データの定期的なバックアップおよびデータ侵害時の迅速な復元。
データベースの規則および基準をセットアップして、データ整合性を保護。
利用可能データの「ディクショナリ」の定義および説明文の提供。
当然、DBMSはデータベースマネージャーまたはデータベース管理者に代わる存在ではありません。こうしたスペシャリストは、データベース構造があるべき形で実行するように万全を期し、ユーザー権限を作成して誰がデータにアクセスできるかコントロールできます。DBMSとスペシャリストが協力することで、データをめぐる高い品質管理を実現できます。
DBMS は通常、さまざまな統合コンポーネントから構成されるソフトウェア スイートです。これらを組み合わせることで、組織がデータベース内のデータを効率的かつ簡単に作成、アクセス、および変更できるようにするシステムが形成されます。
ほとんどの DBMS プラットフォームには次のものが含まれます。
ストレージ エンジン- DBMS のコア コンポーネントとして、データを保存します。これは、OS レベルでファイル システムと通信するシステムの一部です。これは、保存されたデータと対話するすべての SQL クエリのゲートウェイです。
システム カタログまたはデータベース ディクショナリ- メタデータ カタログとも呼ばれるこのコンポーネントは、作成されたすべてのデータベース オブジェクトの集中リポジトリです。これは、ユーザーからのデータ要求を確認するために使用され、また、データベースのオブジェクト、セキュリティ、パフォーマンスなどに関する情報も提供されます。
データベース アクセス言語- すべての DBMS には、ユーザーがデータベースを作成してデータにアクセスできるようにするためのアプリケーション プログラミング インターフェイス (API) が必要であり、これは通常、データベース アクセス言語の形式で提供されます。たとえば、構造化クエリ言語 (SQL) は、リレーショナル データベースのデフォルトのデータ アクセス言語です。
最適化エンジン- このコンポーネントはデータ要求を処理し、実行可能なコマンドに変換します。また、最適なパフォーマンスを得るためにデータベースを調整するのにも役立ちます。
クエリ プロセッサ- クエリ (データ要求) が最適化エンジンを通過すると、クエリ プロセッサが要求を処理し、結果をフィードバックします。これは、データベースとユーザークエリの間の仲介役として機能します。
ロック マネージャー- このコンポーネントは、複数のユーザーが同時に同じデータを変更することを防ぎます。各ユーザーのアクセスを順番にロックします。
ログ マネージャー- すべての DBMS は、データベース内のデータがどのように、いつ変更、作成、または削除されたかを記録します。ログ マネージャーはこの情報を記録し、データベース ユーティリティと統合してデータを回復したりバックアップを作成したりすることもできます。ログを整理し、簡単にアクセスできるようにすることでログを管理します。
データ ユーティリティ- このカテゴリは、データベース管理を簡素化し、アクティビティを監視するさまざまなコンポーネントの総称です。データのバックアップと復元、整合性チェック、レポートと監視、簡単な修復、検証などのソフトウェアが含まれます。
DBMS ツールにはさまざまな種類と例があり、データの構造化方法には最も大きな違いがあります。一般的なデータベース モデルの種類には、リレーショナル、階層型、ドキュメント指向、ネットワーク指向、オブジェクト指向などがあります。したがって、DBMS はモデル タイプと情報構造を一致させる必要があります。最も一般的な DBMS ソリューションの種類は次のとおりです。
RDBMS - リレーショナル データベースは現在最も広く使用されており、ほとんどのユース ケースに適応できます。SQL DBMS と呼ばれることもあります。RDMBS は、構造化されたデータを、列内の値によって表される明確に定義された関係を持つ行に整理します。このタイプの DBMS の例としては、Oracle、 MySQL 、Microsoft SQL Server、オープンソースの PostgreSQL などがあります。
NoSQL DBMS - 今日の多くのデータは非構造化されており、RDBMS スプレッドシートの行と列にきちんと収まりません。NoSQL DBMS にはいくつかの種類があります。
ドキュメント DBMS (DoDBMS) - これらは主に、明確な関係のない JSON ドキュメント形式でデータを保存するデータベースに使用されます。MongoDB とAzure Cosmos DB がこのタイプの一般的な例です。
列指向 DBMS (CDBMS) - ワイドカラムストアとも呼ばれるこのタイプは、行ではなく列にデータを保存するためのデータベースを管理し、高いパフォーマンスを実現します。このタイプの例としては、 Apache HBaseや Apache Cassandra などがあります。
グラフ指向 DBMS - このタイプの NoSQL DBMS は、関係性を表すノードにデータを編成します。例としては、GraphDB やNeo4jなどがあります。
キー値 DBMS - このタイプは、値と一意のキーを組み合わせてデータを保存するキー値データベースを管理します。非常にスケーラブルなシンプルなモデルです。例としては、 Memcached やRedisなどがあります。
NewSQL DBMS - このタイプは、RDBMS と NoSQL DBMS のハイブリッドのようなものです。SQL を使用しますが、NoSQL DBMS のパフォーマンスとスケーラビリティを実現します。さらに、ACID トランザクション プロパティ (原子性、一貫性、分離性、永続性) のサポートを通じて、データの一貫性を確保するのに役立ちます。例としては、Volt Active Data、NuoDB、Google Cloud Spanner、CockroachDB などがあります。
インメモリ DBMS (IMDBMS) - このタイプの DBMS を使用すると、ユーザーはシステムのメインメモリを利用してデータを保存、管理、操作できます。メモリに直接アクセスすることでレイテンシが短縮され、応答時間が短縮され、パフォーマンスが向上します。欠点の 1 つは、他のタイプよりも多くのリソースを消費することです。例としては、SAP HANA や Redis などがあります。
マルチモデル DBMS - このタイプでは、組織は要件に最適な DBMS モデルを選択できます。一例として、列オプションを含むリレーショナル データベースである IBM Db2 が挙げられます。最も一般的に使用される DBMS の中には、MongoDB、Oracle、 PostgreSQLなど、マルチモーダル化を実現するためにアドオンを採用しているものもあります。
データの拡散は一向に留まるところを知りません。その結果、組織は以下を可能にするためデータベース管理タスク、データベースマネージャー、そしてデータベース管理システムに投資しています:
特に、人や機械が毎日作成するデータの量が増加するにつれて、データベース管理システムの利点を無視することは困難になります。最も注目すべき利点の 1 つは、データベースに保存されたデータのセキュリティが向上することです。DBMS を使用すると、企業はデータへのアクセスを向上させ、組織全体のエンドユーザーがデータを共有できるようになります。その結果、エンドユーザーは必要なデータに正確にアクセスできるようになり、より迅速な販売と迅速な意思決定が可能になります。
さらに、組織はデータベース管理システムがあれば、同一データが異なる場所に複数の形態で存在する場合に起きるデータの不整合の問題を排除できます。DBMSは、データの共有方法に関して完全かつ明確な見解を提供できるため、不要なデータコピーが生まれることもありません。当然のことながら、DBMSでは組織がデータセキュリティとプライバシーポリシーを施行して、データ漏洩のリスクを緩和させることができます。
最後に、エンドユーザーは利用可能データに基づき、情報を得た上での意思決定を下せるようになります。さらに、より整合性の高いデータは質が高く、便利な情報であるため、ユーザーが厳密に必要なデータによって意思決定を下すことができます。究極的には、これが組織全体の生産性の向上につながります。
管理する必要があるデータの量が業界全体で増加し続けるにつれて、組織はデータベース管理システムを使用することで多くのメリットを実現できます。これらの利点は次のとおりです:
データの整合性と精度の向上- データ検証ルールと制約の適用により、正確で一貫性のあるデータが維持されます。
強化されたデータ セキュリティ- アクセス制御、認証、暗号化により機密情報を保護します。
データの抽象化と独立性- 開発者とユーザーは、複雑な内部の詳細を知らなくてもデータを操作できます。また、そのデータを使用するアプリケーションに影響を与えることなく、データベース構造を変更することもできます。
より効率的なデータ アクセス- 洗練されたインデックス作成とクエリの最適化により、データの取得が高速化されます。
マルチユーザー アクセスと同時実行制御- 不整合が生じる心配なく、複数のユーザーが同時にデータにアクセスできます。
バックアップとリカバリ- 組み込み機能により、データを定期的にバックアップし、障害発生時にデータをリカバリします。
データの冗長性の削減- 集中管理によりデータの重複が大幅に削減され、データの一貫性が維持され、クラウド ストレージ リソースも最適化されます。
より高度なデータ モデリングと関係- DBMS では、複雑なデータ関係と高度なクエリが可能になります (特にリレーショナル DBMS)。
これらのシステムにはさまざまな利点がある一方で、いくつかの課題も生じます。これらには次のものが含まれます。
コストの増加- 特にエンタープライズ グレードのシステムの場合、ライセンス、ハードウェア、および人員のコストが高額になる可能性があります。
より複雑な展開とメンテナンス- 一部のシステムのセットアップ、チューニング、管理には高度な技術的専門知識が必要になる場合があります。DBMS をスムーズに実行するには、バックアップ、更新、監視などの定期的なメンテナンスも必要です。
パフォーマンスのオーバーヘッドが大きくなる- DBMS に組み込まれたセキュリティ、抽象化、整合性チェックにより、単純なファイル ストレージに比べてパフォーマンスに悪影響を与える場合があります。
スケーラビリティの問題- 従来のリレーショナル DBMS は、大規模、分散型、または非構造化データを処理するために特別に設計または調整されていない限り、処理が困難になることがあります。
回復力の低下- 集中型の DBMS は単一障害点となり、適切に複製または分散されていない場合はボトルネックになる可能性があります。
潜在的なセキュリティ リスク- 適切に構成されていない場合、DBMS は悪意のある攻撃者にとって非常に容易な標的となります。
ベンダー ロックイン- 一部の独自システムでは柔軟性が制限され、移行が困難になる場合があります。
データベースはさまざまな方法で使用されるため、すべての組織には少なくともいくつかの DBMS 使用例があると言っても過言ではありません。後でアクセスするためにデータを保存したり、動作に大量のデータを必要とするアプリケーションを持っている企業は、DBMS の使用に適しています。
経済および金融企業は、顧客取引、株式市場取引、債券、住宅ローン、その他の金融商品に関する情報を保存します。
通信会社は、顧客の通話、請求、アーカイブ、プランの特徴や機能に関する情報を保存します。
航空会社は、フライトスケジュール、従業員の職歴、安全記録、予約、メンテナンスに関する情報を保存します。
教育機関は、授業スケジュール、生徒の記録、教師の評価と報酬、授業登録に関する情報を保存します。
営業およびマーケティング組織は、顧客との会議や売上、返品、フィードバック、見込み客に関する情報を保存します。
人材会社は、新規採用者や採用候補者、給与、税金、従業員の業績評価などの情報を保存します。
製造業者は、在庫、運用、生産計画、サプライ チェーン、メンテナンスに関する情報を保存します。
ストリーミング メディア プラットフォームは、オンデマンドで整理してアクセスする必要がある大量のメディアを保存するためにデータベースに依存しています。
テクノロジー企業は、データベース情報を活用して、データ集約型の AI および機械学習モデルを必要とする仮想現実および拡張現実アプリケーションを作成します。
スポーツ組織は、分析可能な選手の統計、チームのパフォーマンス、試合のスケジュール、過去のメディアに関する情報を保存します。
データベース管理は、今後ますます困難になることが予測できます。主な理由は 3 つあります。
まず、今日の組織はこれまで以上に多くのアプリケーションを構築および導入しており、 IDC は 2025 年までにクラウド ネイティブの最新アプリケーションが 7 億 5,000 万個を超えると予測しています。そして、事実上すべてのアプリケーションにデータベースが必要です。その結果、組織が管理しなければならないデータベースの数はますます増えるばかりです。組織が実行するデータベースの数が増えるほど、それらすべてを管理して保護し、開発者に簡単にアクセスできるようにするという課題は大きくなります。
第二に、組織が単一のデータベース プラットフォームを標準化する時代は終わりました。今日、開発者はどのテクノロジーを使用するかを自ら決定する権限を持ち、従来の商用リレーショナル データベースの先を見つめる傾向が強まっています。彼らは、従来のリレーショナル データベースに加えて、オープン ソース データベースと非リレーショナル データベースを使用したいと考えています。つまり、ほとんどの組織は複数の異なるタイプのデータベースを管理する必要があり、複雑さがさらに増すことになります。効果的なデータベース管理がこれまで以上に重要になります。
第三は、大半の組織がハイブリッドマルチクラウド戦略を採用しつつある点です。アプリケーションやデータベースを稼働する環境として、オンプレミスのデータセンターのほかに、プライベートクラウド、複数のパブリッククラウド、コロケーション施設、エッジを組み合わせた複数の運用環境を利用しているか、または利用を計画しています。運用モデルは環境ごとに異なるため、開発者やデータベース管理者、IT 部門、運用チームは複数の API の使い方を習得し、さまざまなツールやプロセスを使用して、データベースを管理する必要があります。したがって、データベース管理はいっそう複雑化します。
適切なデータベース管理システム (DBMS) の選択は、組織のニーズ、既存のインフラストラクチャ、データ管理の優先順位など、複数の要因によって決まります。決定する際には、次の重要な側面を考慮してください。
既存のデータベースを評価する– 現在のデータベース構造とデータ要件を理解することが重要です。各データベースには固有のデータが保持されるため、企業は DBMS を選択する前にニーズを評価する必要があります。
集中データ管理– 優れた DBMS はデータの統合ビューを提供し、データの保存場所、動作方法、さまざまなアプリケーションとのやり取りを追跡しやすくなります。
アプリケーション統合- DBMS がレプリケーションを必要とせずにさまざまなアプリケーション間でデータへのシームレスなアクセスを許可できるようにすることで、効率性を向上させ、冗長性を削減します。
インフラストラクチャ要件- DBMS ソリューションには、メモリ、CPU、およびストレージ リソースが必要です。企業は実装前に、自社のインフラストラクチャがこれらの要求をサポートできるかどうかを評価する必要があります。
スケーラビリティとセキュリティ– 特に医療などの業界ではデータが増加し続けるため、DBMS は強力なセキュリティ機能と、将来のニーズに合わせて効率的に拡張できる機能を提供する必要があります。
Nutanix は、Nutanix Database Service (NDB) を使用して最も重要なデータベースの管理を簡素化します。NDB は、データベースのプロビジョニングとライフサイクル管理に自動化とワンクリックのシンプルさを提供するサービスとしてのデータベースです。
機能豊富でありながら直感的でユーザーフレンドリーな UI と CLI を使用して設計されており、データベースを任意の時点でプロビジョニング、複製、更新、復元できます。また、パッチ適用やバックアップなどの面倒な作業を自動化できるため、より重要な作業に集中できるようになります。
NDB を使用すると、次のことが可能になります。
Microsoft SQL Server、Oracle Database、PostgreSQL、MySQL、MongoDB などのデータベースの操作と管理を簡素化します。
多くのタスクを自動化することで、運用の一貫性を維持しながら生産性を向上します。
組織固有のニーズを満たす適切なオペレーティング システム、データベース バージョン、データベース拡張機能を選択し、制御を維持し、標準を維持します。
インフラストラクチャ管理と開発者ツールを統合してセルフサービス データベース展開を実現することで、ソフトウェア開発をスピードアップし、市場投入までの時間を短縮します。
クラウドを含むさまざまな環境や場所にある何千ものデータベースを、単一のコントロール プレーンから管理します。