MongoDB と Node.js PlatoBlockchain データ インテリジェンスの統合。垂直検索。あい。

MongoDB と Node.js の統合

ロボストの現代アプリケーションには、非リレーショナル (PostgresQL、MongoDB など) とリレーショナル (MySQL、Oracle など) の両方で動作できるノード アプリケーションなど、バックエンドにデータを保存する媒体があります。

MongoDB は、比較的使いやすく強力な非リレーショナル データベースです。MongoDB がもたらす利点と、Node アプリケーションとの安全な統合の作成を開始する方法を知りたい Node.js 開発者であれば、これを参照してください。はあなたのためのガイドです!

この記事では、MongoDB を統合/接続する方法を学びます。 Node.js を使用した非常に人気のある非リレーショナル データベースを、Node アプリケーション内でどのように使用できるかを見てみましょう。

注: 手順を進めるには、Node.js をインストールする必要があります。最長安定バージョン (LTS) をダウンロードして、ローカル マシンにインストールできます。 公式ダウンロードページ.

MongoDB の概要

MongoDB は最も人気があり、最も先進的なドキュメントベースのデータベースであり、すべてのデータは BSON として知られるバイナリ JSON (JavaScript Object Notation) で保存されます。 BSONとは、 ドキュメント事前定義されたデータ スキーマは必要ありません。これにより、アプリケーションによって頻繁にアクセスされるデータを同じ場所に保存できるようになり、データベースの読み取りが簡単かつ高速になります。

リレーショナル テーブルとは異なり、コレクションは自己完結型であるため、操作がはるかに簡単になります。 MongoDB コレクションで新しいドキュメントが作成されると、そのコレクションに一意となるように ID が割り当てられます。また、ドキュメント内で複数のフィールドを定義できます。ここで、値は配列、文字列、整数、オブジェクトなどのさまざまなデータ型である可能性があります。

データを操作するには、データベース全体で基本的な作成、読み取り、更新、削除 (CRUD) 操作を実行するクエリ API が役立ちます。最適化を確実にし、一般的なクエリを非常に高速にするためにセカンダリ インデックスを作成することもできます。地理空間クエリもサポートされており、特定の地理的位置にあるドキュメントを検索できます。

MongoDB の入門

Node アプリケーションから MongoDB への接続を開始する前に、MongoDB の公式 Web サイトにアクセスして、 Try Free ボタン (まだアカウントをお持ちでない場合):

アカウントを作成したら、 Build a Database ボタンをクリックし、データベースを作成します。

MongoDB と Node.js PlatoBlockchain データ インテリジェンスの統合。垂直検索。あい。

次に、共有クラスターを作成し (永久に無料です!)、任意の名前を付けます。

共有クラスターは、限られたサンドボックスでの実験に最適です。いつでも実稼働クラスターにアップグレードできます。

MongoDB と Node.js PlatoBlockchain データ インテリジェンスの統合。垂直検索。あい。

クラスターが正常に作成されたら、 Connect ボタンをクリックしてクラスターに接続します。

MongoDB と Node.js PlatoBlockchain データ インテリジェンスの統合。垂直検索。あい。

MongoDB に接続する方法について 4 つの異なる方法が表示されますが、Node アプリケーションに接続したいので、 Connect your application オプション:

MongoDB と Node.js PlatoBlockchain データ インテリジェンスの統合。垂直検索。あい。

次に、接続方法を選択するように求められます。ここでは、必ずドライバーとして Node.js を選択し、適切なバージョンを選択してください (この記事を書いているときは 4.1 以降を使用しています)。

MongoDB クラスターを Node アプリケーションに接続するのに役立つ接続文字列も表示されます。

MongoDB と Node.js PlatoBlockchain データ インテリジェンスの統合。垂直検索。あい。

次に、MongoDB データベースに接続するための Node.js アプリケーションを作成する必要があります。

ノードアプリケーションの構築

このプロジェクトの任意のディレクトリに、新しいフォルダーを作成します。

$ mkdir integrating-mongodb-node

それから、走ってください npm init ターミナルで、Node アプリケーションを初期化するために、 package.json アプリケーションの依存関係を追跡できるようにするファイル:

$ npm init

package name: (codes) integrating-mongodb-node
version: (1.0.0)
description: learning how to connect mongodb to a node app
entry point: (server.js)
test command:
git repository:
keywords:
author:
Is this OK? (yes) yes

ベストプラクティス、業界で認められた標準、および含まれているチートシートを含む、Gitを学習するための実践的で実用的なガイドを確認してください。 グーグルGitコマンドを停止し、実際に 学ぶ それ!

これで初期化に成功しました package.jsonでは、サーバーの構築に役立つ 2 つのパッケージをインストールしてみましょう。 1 つ目は Express.js で、Node アプリケーションを迅速かつ簡単に開発するための Web フレームワークです。

$ yarn add express -D

インストールする 2 番目のパッケージは Mongoose パッケージです。これは、Node アプリでデータベースに適切なスキーマを構築するのに役立ちます。

$ yarn add mongoose -D

必要な開発依存関係が正常にインストールされたので、MongoDB データベースを Node アプリケーションに接続するコードを作成できるようになりました。

プロジェクト用に作成したばかりのディレクトリに、 server.js file

$ touch server.js

次に、Node アプリケーションの基本セットアップを定義します。 server.js、単純な Express サーバーを作成します。



const express = require("express");
const mongoose = require("mongoose");
const app = express();

const port = 8000;

app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

ターミナルで次のコードを実行すると、サーバーが正常に実行されていることを確認できます。

$ node server.js

その結果は次のようになります。

Server started at port 8000

ここで、MongoDB ダッシュボードに戻って、Node アプリをデータベースに接続するために URI (Uniform Resource Idenfier) をコピーできます。

I server.js ユニフォームリソース識別子を格納する変数を作成し、URI で置き換えます。 MongoDB アカウントのパスワードを使用します。



const express = require("express");
const mongoose = require("mongoose");
const app = express();

const uri =
  "mongodb+srv://UcheAzubuko:@stackabusecluster.fgavg5s.mongodb.net/?retryWrites=true&w=majority";

const port = 8000;

app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

次に、データベースに接続するまでに関数が完了するまでにどれくらいの時間がかかるかわからないため、MongoDB に接続できるようにする非同期関数を作成します。

const express = require("express");
const mongoose = require("mongoose");
const app = express();

const uri =
  "mongodb+srv://UcheAzubuko:@stackabusecluster.fgavg5s.mongodb.net/?retryWrites=true&w=majority";
async function connect() {
  try {
    await mongoose.connect(uri);
    console.log("Connected to MongoDB");
  } catch (error) {
    console.log(error);
  }
}
connect();

const port = 8000;
app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

ログを記録する非同期関数を作成しました。 Connected to MongoDB MongoDB と Node アプリの間で接続が正常に確立された場合はメッセージが表示され、エラーが発生した場合はエラーがログに記録されます。

ここで、サーバーを再起動する必要があります。

$ node server.js

そして、MongoDB データベースと Node アプリケーションの間に安全な接続が確立されたことを知らせるメッセージが正常に表示されます。

Server started at port 8000
Connected to MongoDB

この時点で、プロジェクト クラスターのダッシュボードに戻ると、最近データベースに接続されたことを示す情報が表示されます。

MongoDB と Node.js PlatoBlockchain データ インテリジェンスの統合。垂直検索。あい。

はい、皆さん、以上です! MongoDB データベースを Node.js アプリケーション内に統合することに成功しました。

まとめ

この記事では、Node.js アプリケーションと MongoDB データベースの間に安全な接続を作成する方法を学習しました。 MongoDB を使用してアプリケーションを構築する必要がある場合も、同じことを簡単に行うことができます。エコシステム内で非常に人気のある非リレーショナル データベース。

それを忘れないでください MongoDB ドキュメント MongoDB について学ぶための親友です。Express アプリケーションの構築について詳しく知りたい場合は、 エクスプレスドキュメント のためにペンを持つ時間も見つけています。

チュートリアルの実行中に行き詰まった場合は、自由に考えてください。 プロジェクトの GitHub リポジトリ 自分の道を見つけるために。

その他のリソース

タイムスタンプ:

より多くの スタックアバス