MongoDBとは?
このガイドでは、エンタープライズ・データベース管理ソリューションの一部として、MongoDBを使用する際の特性とメリットを検討します。
青色の背景に緑の光のツイスト
MongoDBとは?

MongoDB (IBM外部へのリンク) はオープンソースの非リレーショナル・データベース管理システム(DBMS)であり、多様なデータの処理や保管を表や行ではなく柔軟なドキュメントを用いて行います。 MongoDBはNoSQLデータベース・ソリューションとして、リレーショナル・データベース管理システム(RDBMS)を必要としません。このため、多岐にわたるデータ・タイプの保管と検証が容易になる柔軟なデータ・ストレージ・モデルを提供します。 これは開発者のデータベース管理を簡略化するだけでなく、クロスプラットフォームのアプリケーションやサービスのための高度なスケーラブル環境を作り出します。

MongoDBドキュメントまたはドキュメントのコレクションは、データの基本単位です。 バイナリJSON(JavaScriptオブジェクト表記)としてフォーマットされたこれらの文書は、各種データの保管や複数のシステムでの配布が可能です。 MongoDBは動的スキーマ設計を採用しているため、ユーザーはデータ記録の作成や、MongoDBによる集約を通した文書コレクションの照会、膨大な情報量の分析をする際に、比類のない柔軟性を持つことになります。

MongoDBを他のデータベースと比較する

数ある データベース管理ソリューション の中から、あなたのエンタープライズに合ったソリューションを選ぶのは難しいことです。 ここではあなたの選択を後押しするために、いくつかの有名なソリューションの比較と、それぞれの強みを紹介します。

MongoDBとMySQL

MySQL(外部リンク)  は、保管されたデータにアクセスするために構造化された照会言語を使用します。 この形式では、スキーマはデータベース構造の作成に使用され、値が検索可能となり適切に照会できるように、表を活用してデータタイプを標準化しています。 MySQLは成熟した解決方法であり、Webサイトのデータベースやアプリケーション、商業プロダクトプロダクトマネジメントなど、様々な場面で効力を発揮します。

その不変性のため、トランザクション・データを扱うなど、データの統合や分離が必須となる場合には、MySQLの方がMongoDBに比べて適切です。 しかし、MongoDBの制約の少ない形式と高いパフォーマンスは、可用性とスピードが重要視される場面において、より良い選択肢だと言えるでしょう。

MongoDBとCassandra

 Cassandra(外部リンク) とMongoDBはどちらもNoSQLデータベースと見なされていますが、それぞれ長所が異なります。 Cassandraは行と列を用いた従来型の表構造体により、コンパイルされる前のデータのフォーマット時に、均一性とを耐久性をユーザーに与えます。

CassandraはSQLに類似した構文規則を持つため、NoSQLソリューションを探している企業により容易に移行できます。確実に処理導入や複製の手間も少ない構成で済むと言えるでしょう。 しかし、構造化ないし非構造化されたデータセットを扱う際の柔軟性や、ミッションの要となるクラウド・アプリケーションでのパフォーマンスと信頼性においては、MongoDBには敵いません。

MongoDBのユースケース

モバイル・アプリケーション

MongoDBのJSON文書モデルは、後置アプリケーション・データを好きな場所に保管することを可能にします。これにはApple iOSやAndroidデバイス、そして クラウドを活用したストレージ・ソリューションも含まれます。 この柔軟性が、セカンダリー情報や地理情報の索引付けを伴う複数の環境のデータの総計を可能にし、モバイル・アプリケーションをシームレスにスケールする能力を開発者に与えます。

リアルタイムの分析

企業がオペレーションを拡大するほど、鍵となる測定基準へのアクセスを獲得することや、大量のデータからビジネスの洞察を得ることは成功を左右します。 MongoDBはJSONやBSONなどのJSONに類する文書のJavaオブジェクトへの変換を容易に実現しており、複数の開発環境でリアルタイムに資料分析を行う際のMongoDB内のデータ読み取りや書き込みを迅速かつ極めて正確なものにしています。 これは、いくつかのビジネスの分野において有益であることが実証されており、官公庁・自治体、金融サービスや小売もそれに含まれます。

コンテンツ・マネジメント・システム

コンテンツマネジメントシステム(CMS)は、e-コマースのサイトやオンライン出版、文書マネジメントプラットフォームや、その他のアプリケーションやサービスへのアクセスにおいて、満足のいくユーザー体験を保証する上で重要な役割を担う強力なツールです。 MongoDBを使用することによって、オンライン・アプリケーションやシングルデータベースのウェブサイトに対し、高可用性を伴って簡単に新たな機能や属性を付け足すことができます。 

エンタープライズ・データウェアハウス

Apache Hadoopフレームワークはオープンソースモジュールのコレクションであり、 大容量のデータの保管、処理、分析のためにMongoDBと連携するHadoop分散ファイルシステムとHadoopのMapReduceを含みます。 組織はリスクモデリングや予測分析、およびリアルタイムデータ処理のためにMongoDBとHadoopを用いることができます。

Mongo DBの利点

長年をかけて、強力かつ拡張性の高いNoSQLデータベースを求めるビジネスにとって、MongoDBは信頼のおける解決方法になりました。 しかし、MongoDBは従来型のドキュメントベースのデータベースの枠には収まらず、他のDBMSとは一線を画す機能をいくつも持っています。

ロード・バランシング

企業のクラウドアプリケーションが拡張し、リソースの需要が増すにつれ、サービスの可用性と信頼性を確保する過程で問題が発生する可能性も高まります。 MongoDBの 負荷平準化 共有プロセスは、許容できる読み込みと書き込みのスループットを維持しつつ、大容量のデータセットを複数の 仮想マシン に一度に配布します。 この水平スケーリングは シャーディング と呼ばれており、組織のクラウドを活用した展開能力を拡大しつつ、ハードウェアの垂直スケーリングのコストを避けることを手助けします。

アドホック・データベース検証

他のデータベースと比べたMongoDBの最大の利点の一つは、定義済みスキーマを必要としないアドホック・クエリを扱えることです。 MongoDBデータベースは、SQLデータベースに似た照会言語を用いており、初心者と熟練した開発者の両方にとって使いやすくなっています。 このアクセス可能性は、一般的なヘルプの方法や簡単なシェルコマンドによるデータのプッシュ、照会、分類、アップデートとエクスポートを容易にします。

多言語サポート

MongoDBの優れた点の1つは、その複数言語サポートです。 MongoDBはいくつかのバージョンがリリースされ、Python、PHP、Ruby、Node.js、C++、Scala、JavaScriptなど、一般的なプログラミング言語用のドライバー・サポートとともに今も開発が続けられています。

MongoDBの導入とセットアップ

導入は2つの手順から成ります:MongoDBのインストールとデータベースの作成です。

MongoDBのインストール

データベースの作成

MongoDBをインストールした後は、データが格納される場所のディレクトリーを作成する必要があります。 これは、ローカルまたは公開またはプライベートのクラウドストレージソリューションを通じて行えます。 MongoDBを始めるにあたってより詳しく知りたい場合、 こちら(IBM外部へのリンク)をクリックして 包括的なガイドやチュートリアル、およびウォークスルーを参照してください。

関連ソリューション
IBM Cloud Databases for MongoDB

開発者の使いやすさと柔軟性を考慮して設計された強力な文書データ・ストア、IBM Cloud Databases for MongoDBの詳細をご覧ください。

IBM Cloud Databases for MongoDBの詳細はこちら
MongoDB Enterprise Advanced with IBM

MongoDBの実行をシンプルに:管理を自動化し、データベースのパフォーマンスを常に把握し、データを価値あるものに変える機会を提供します。

MongoDB Enterprise Advancedの詳細はこちら
IBM Cloud Pak for Data

所在場所を問わず、データを収集、編成、分析します。 データ・ファブリック・アーキテクチャーで構築されたプラットフォームを使用して迅速に結果を予測します。

Cloud Pak for Dataの詳細はこちら
参考情報 NoSQLとは

NoSQLは、リレーショナル・データベースに見られる従来の構造の外部にあるデータの保存と照会を可能にするデータベース設計のアプローチです。

クラウド・ストレージとは

クラウド・ストレージの仕組み、メリット、利用可能なさまざまなタイプのクラウド・ストレージなど、クラウド・ストレージの重要な側面について紹介します。

ロード・バランシングとは

ロード・バランシングは、ネットワーク・トラフィックを複数のサーバーに均等に分散させることにより、特定のコンピューティング・リソースが過負荷になることで発生する障害を防止します。

詳細情報はこちら

マルチクラウド環境への統合を進めながらNoSQLデータベースを管理するためのより良いソリューションを求める組織向けに、IBM Cloud® Databases for MongoDBは、すべてのエンタープライズ・ニーズに対応できる柔軟かつ拡張性の高いソリューションを提供します。 MongoDBの強力な索引付けと照会能力、そしてIBMの持つフルマネージドでセキュアなクラウド構成を活用することにより、エンタープライズ・データベース・マネジメントにおける非常に持続的かつ機密保護機能の高いソリューションを手に入れることができます。

Cloud Databases for MongoDBの詳細はこちら