sql >> データベース >  >> NoSQL >> MongoDB

Mongodbを使用した非リレーショナルデータベースの使用を開始する🍃

    リレーショナルデータベースとは何ですか?

    しばらくの間データベースを使用していた場合は、リレーショナルデータベースを使用してキャリアを開始した可能性があります。リレーショナルデータベースの例としては、Microsoft Access、MySql、Oracleなどがあります。

    リレーショナルデータベースは、テーブルを使用してデータを格納する従来のデータベースです。リレーショナルデータベースでは、各フィールドデータ型が定義されています。つまり、特定のフィールドを定義して、たとえば人の年齢などの数字のみを受け入れる場合、そのフィールドはa〜zの文字を受け入れません。

    非リレーショナルデータベースとは何ですか?

    非リレーショナルデータベースとは何かを完全に説明する前に、非リレーショナルデータベースとその動作をよりよく理解するのに役立ついくつかの重要な用語を定義する必要があります。これらは次のとおりです。

    • キーと値のペア。
    • ドキュメント。
    • コレクション。

    キーと値のペア

    キーと値のペアは、識別子と対応する値です。この作業がどのように行われるかを知る簡単な方法は、バーに足を踏み入れてウェイターを頼むことを前提としています。このシナリオの「ウェイター」は識別子であり、ウェイターの名前(たとえば「Bhagya」)は値です。したがって、JSON形式では、これは次のように表すことができます。

    {
        "waiter": "Bhagya Indimagedara"
    }
    

    ドキュメントとは何ですか?

    ドキュメントはJSONデータのセットです。これは基本的に、エンティティに関する詳細情報を提供するキーと値のペアのセットです。以下は、ウェイターの例のドキュメントの例です。ウェイターの個人情報が含まれています。

    {
        "id": 1,
        "name": "Bhagya Indimagedara",
        "username": "bhagya",
        "email": "[email protected]",
        "phone": "+947623496905",
        "website": "bhagya.org"
    }
    

    コレクションとは何ですか?

    コレクションはドキュメントのセットです。これは、複数のエンティティに関する情報です。リレーショナルデータベースでは、コレクションはテーブルと呼ばれるものです。

    [
      {
        "id": 1,
        "name": "Bhagya Indimagedara",
        "username": "bhagya",
        "email": "[email protected]",
        "phone": "+947623496905",
        "website": "bhagya.org",
      },
      {
        "id": 2,
        "name": "Nimesh Indimagedara",
        "username": "Nimezzz",
        "email": "[email protected]",
        "phone": "+94710876322",
        "website": "nimesh.net",
      },
      {
        "id": 3,
        "name": "Nethmini",
        "username": "nethmini",
        "email": "[email protected]",
        "phone": "+9476245555533",
        "website": "nethmini.info",
      }
    ]
    
    

    したがって、前述の定義された用語を使用して、非リレーショナルデータベースを、キーと値のペアによって実現されるJSONのような形式でデータを格納するデータベースとして定義できます。非リレーショナルデータベースの例としては、MongoDB、Redis、Couchbaseなどがあります。

    MongoDBを使い始めますか?

    MongoDBは非リレーショナルデータベースです。つまり、データを列と行に保存するのではなく、BSON形式で保存します。これは2007年に設立されたオープンソースデータベースです。オープンソースアプリケーションは、コードベースが他の開発者からの貢献に開かれているソフトウェアです。

    MongoDBの操作には、2つのバリエーションがあります。 MongoDBアトラスを使用してオンラインでアクセスするか、コンピューターにローカルでダウンロードできます。ローカルダウンロードの場合、エンタープライズエディションとコミュニティエディションの2つのエディションがあります。エンタープライズ版は有料版ですが、コミュニティ版は無料で使用できますが、前者と比較すると明らかに機能が制限されています。

    からオンラインでアクセスできます

    •MongoDBシェル

    •MongoDBコンパス

    MongoDBAtlasへの登録

    ツールを使用してデータベース操作の実行を開始する前に、MongoDBAtlasにアカウントを登録する必要があります。これはクラウドデータベースです。独自のサーバーをホストする代わりに、登録するだけで、バックエンドで必要な処理を実行できます。アトラスアカウントを作成するには、以下の手順に従ってください

    • mongodb.comにアクセスします
    • 練習するには、[無料で試す]オプションをクリックします。これにより、開発目的でAtlasを使用できます。
    • バイオデータフォームが表示されますので、必要な詳細を入力してください。 Gmailアカウントを使用して登録することもできます。
    • 次に、作成したログイン情報を使用してログインします
    • [クラスターの構築]をクリックして、無料のクラスターの展開を続行できます。
    • 3つの異なるオプションを利用できます。専用オプションとサーバーレスオプションはどちらも有料バージョンです。開発目的で、共有バージョンをクリックしてください。
    • これで、クラウドプロバイダーとリージョンの選択に進むことができます。
    • [クラスターの作成]ボタンをクリックします。
    • 登録後、データベースアクセスを有効にするとともに、ユーザー名とパスワードを作成する必要があります。
    • データベースアクセスをクリックします。データベースユーザーを追加するように求められます。
    • ご希望のユーザー名とパスワードを入力してください。
    • 左側のペインでネットワークアクセスをクリックします。
    • [IPアドレスの追加]をクリックします。
    • 特定のIPアドレスを許可するか、開発目的でどこからでもアクセスを許可するかを選択できます。
    • 確認をクリックします。これで、MongoDBシェルまたはコンパスの使用に進むことができます。

    MongoDBシェルの使用

    MongoDBシェルは、データベースへのアクセスに使用できるコマンドライン環境です。

    MongoDBコンパスの使用

    MongoDB Compassは、データベースとの対話に使用できるMongoDBシェルのようなツールです。ただし、主にコマンドプロンプトインターフェイスであるMongoDBシェルとは異なり、コンパスにはグラフィカルユーザーインターフェイスがあり、操作が簡単です。

    コンパスをダウンロードして操作するには、以下の手順に従ってください。

    • ダウンロードしてインストールします。
    • Atlasホームページに戻り、[接続]をクリックします。
    • MongoDBCompassを使用して接続をクリックします。
    • Atlasから接続文字列をコピーして、以下に示すファイルパスに貼り付けます。
    • [接続]をクリックします。

    接続が成功すると、作成されたすべてのデータベースが一覧表示されます。それぞれをクリックすると表示できます。また、[データベースの作成]ボタンをクリックして新しいデータベースを作成することもできます。

    MongoDBコンパスを使用すると、データベース、コレクション、およびドキュメントを非常にシームレスな方法で作成できます。さらに詳しく知りたい場合は、公式ドキュメントを参照してください。このチュートリアルでは、少し複雑なMongoDBシェルに焦点を当てます。それでは、MongoDBシェルを使用してCRUD操作を実行する方法を見てみましょう。

    データベースでCRUD操作を実行する

    CRUDは、プログラミングでの作成、読み取り、更新、および削除の頭字語です。読み取り、更新、または削除操作を実行するには、最初にデータベースにレコードを作成する必要があります。レコードの作成とは、エンティティに関するデータを追加することです。読み取り操作とは、データベース内のレコードを取得または表示することを意味します。更新操作は、表示されているレコードに変更を加えることです。削除操作とは、特定のレコードを削除することを意味します。


    1. サーバー側のタイムスタンプをスコアとしてRedisでソートされたセットに保存するにはどうすればよいですか?

    2. mongodbシェルクエリでGUIDを使用するにはどうすればよいですか

    3. ClusterControlを使用してMongoDBを自動化および管理する方法

    4. 公式C#ドライバーを使用したMongoDBでのアップサーティング