Docs Menu
Docs Home
/
MongoDBマニュアル
/

時系列クイック スタート

項目一覧

  • 手順
  • サンプル データ
  • 学習の概要
  • 次のステップ
  • 詳細

このクイック スタートでは、 MongoDB Atlasまたは自己管理型配置で時系列コレクションを構成、作成、クエリする方法について説明します。

必要時間: 30 分

1
  1. 無料の Atlas アカウントを作成するか、既存のアカウントにサインインします。

  2. Atlas クラスターがまだない場合は、 無料の M0 クラスターを作成します 。 Atlas クラスターの作成の詳細については、「 クラスターの作成 」を参照してください。

    注意

    プロジェクトごとに作成できる 無料クラスターは 1 つだけです。M0

  3. 左側のサイドバーで、[ 概要 ] をクリックします。クラスターを選択し、Connect をクリックします。

  4. [ ツールを使用してデータにアクセス ] の下にある [Shell] をクリックします。

    まだ行っていない場合は、提供される手順に従ってmongosh をダウンロードしてインストールします。

  5. 接続文字列をコピーし、Done をクリックします。

2

mongosh自己管理型または Atlas 配置に接続するには、 を使用します。 (例: )。

mongosh "mongodb+srv://my-test-cluster.1twap.mongodb.net/" --apiVersion 1
--username <user>
3
use timeseries

これにより、空の "時系列"データベースが作成され、切り替えられます。

4

注意

このパフォーマンスでは、 株式ティッカーのサンプルデータ を使用します。date フィールドには時間データが保存され、ticker フィールドには個別の株式が識別されます。

  1. timeFieldmetaFieldgranularity を設定します。

    timeseries: {
    timeField: "date",
    metaField: "ticker",
    granularity: "seconds"
    }

    または、カスタム粒度を指定します。

    バージョン 6.3 で追加

    timeseries: {
    timeField: "date",
    metaField: "ticker",
    granularity: "seconds",
    bucketMaxSpanSeconds: "300",
    bucketRoundingSeconds: "300"
    }
  2. メソッドを使用してコレクションを作成します。db.createCollection()

    db.createCollection(
    "stocks",
    {
    timeseries: {
    timeField: "date",
    metaField: "ticker",
    granularity: "seconds"
    }
    })

    これにより、stocks という名前の空の時系列コレクションが作成されます。

5

db.collection.insertMany()メソッドを実行して、次のサンプルドキュメントをコレクションに追加します。

db.stocks.insertMany([
{ ticker: "MDB", date: ISODate("2021-12-18T15:59:00.000Z"), close: 252.47, volume: 55046.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:58:00.000Z"), close: 252.93, volume: 44042.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:57:00.000Z"), close: 253.61, volume: 40182.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:56:00.000Z"), close: 253.63, volume: 27890.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:55:00.000Z"), close: 254.03, volume: 40270.00}
])

Atlas でMongoDB を実行中場合は、Browse collections をクリックしてサンプルデータを表示できます。

6

他のMongoDBコレクションと同様に、時系列コレクションをクエリします。詳細については、「 時系列データのクエリについて 」を参照してください。

時系列データの一般的なクエリは、metaField をクエリして単一の時系列のデータを取得するか、timeField で範囲クエリを使用して特定の時間範囲のデータを取得することです。

単一の時系列の metaField をクエリするには:

db.stocks.find( { ticker: "MDB" } )

timeField時間範囲をクエリするには次のようにします。

db.stocks.find({ date : {
$gte : ISODate("2021-12-18T15:50:00.000Z"),
$lte : ISODate("2021-12-18T15:56:00.000Z")}
});
1

詳細な手順については、「前提条件 」を参照してください。

  1. Atlas CLI をインストールします。

    Homebrew を使用する場合は、ターミナルで次のコマンドを実行できます。

    brew install mongodb-atlas-cli

    その他のオペレーティング システムへのインストール手順については、「 Atlas CLI のインストール 」を参照してください。

  2. Docker をインストールします。

    Docker では、MongoDB イメージをプルしてキャッシュするためにネットワーク接続が必要です。

2
  1. Atlas アカウントをお持ちでない場合は、ターミナルでatlas setupを実行するか、新しいアカウントを作成してください。

  2. atlas deployments setupを実行し、プロンプトに従ってローカル配置を作成します。 配置への接続を求められたら、 skipを選択します。

    詳細な手順については、「ローカル Atlas 配置の作成 」を参照してください。

3
4

mongosh自己管理型または Atlas 配置に接続するには、 を使用します。 (例: )。

mongosh "mongodb+srv://my-test-cluster.1twap.mongodb.net/" --apiVersion 1
--username <user>
5
use timeseries

これにより、空の "時系列"データベースが作成され、切り替えられます。

6

注意

このパフォーマンスでは、 株式ティッカーのサンプルデータ を使用します。date フィールドには時間データが保存され、ticker フィールドには個別の株式が識別されます。

  1. timeFieldmetaFieldgranularity を設定します。

    timeseries: {
    timeField: "date",
    metaField: "ticker",
    granularity: "seconds"
    }

    または、カスタム粒度を指定します。

    バージョン 6.3 で追加

    timeseries: {
    timeField: "date",
    metaField: "ticker",
    granularity: "seconds",
    bucketMaxSpanSeconds: "300",
    bucketRoundingSeconds: "300"
    }
  2. メソッドを使用してコレクションを作成します。db.createCollection()

    db.createCollection(
    "stocks",
    {
    timeseries: {
    timeField: "date",
    metaField: "ticker",
    granularity: "seconds"
    }
    })

    これにより、stocks という名前の空の時系列コレクションが作成されます。

7

db.collection.insertMany()メソッドを実行して、次のサンプルドキュメントをコレクションに追加します。

db.stocks.insertMany([
{ ticker: "MDB", date: ISODate("2021-12-18T15:59:00.000Z"), close: 252.47, volume: 55046.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:58:00.000Z"), close: 252.93, volume: 44042.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:57:00.000Z"), close: 253.61, volume: 40182.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:56:00.000Z"), close: 253.63, volume: 27890.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:55:00.000Z"), close: 254.03, volume: 40270.00}
])

Atlas でMongoDB を実行中場合は、Browse collections をクリックしてサンプルデータを表示できます。

8

他のMongoDBコレクションと同様に、時系列コレクションをクエリします。詳細については、「 時系列データのクエリについて 」を参照してください。

時系列データの一般的なクエリは、metaField をクエリして単一の時系列のデータを取得するか、timeField で範囲クエリを使用して特定の時間範囲のデータを取得することです。

単一の時系列の metaField をクエリするには:

db.stocks.find( { ticker: "MDB" } )

timeField時間範囲をクエリするには次のようにします。

db.stocks.find({ date : {
$gte : ISODate("2021-12-18T15:50:00.000Z"),
$lte : ISODate("2021-12-18T15:56:00.000Z")}
});
1

自己管理型配置 を実行中場合は、 MongoDB のバージョン、エディション、およびプラットフォームのインストール手順に従います。

2
3

mongosh自己管理型または Atlas 配置に接続するには、 を使用します。 (例: )。

mongosh "mongodb+srv://my-test-cluster.1twap.mongodb.net/" --apiVersion 1
--username <user>
4
use timeseries

これにより、空の "時系列"データベースが作成され、切り替えられます。

5

注意

このパフォーマンスでは、 株式ティッカーのサンプルデータ を使用します。date フィールドには時間データが保存され、ticker フィールドには個別の株式が識別されます。

  1. timeFieldmetaFieldgranularity を設定します。

    timeseries: {
    timeField: "date",
    metaField: "ticker",
    granularity: "seconds"
    }

    または、カスタム粒度を指定します。

    バージョン 6.3 で追加

    timeseries: {
    timeField: "date",
    metaField: "ticker",
    granularity: "seconds",
    bucketMaxSpanSeconds: "300",
    bucketRoundingSeconds: "300"
    }
  2. メソッドを使用してコレクションを作成します。db.createCollection()

    db.createCollection(
    "stocks",
    {
    timeseries: {
    timeField: "date",
    metaField: "ticker",
    granularity: "seconds"
    }
    })

    これにより、stocks という名前の空の時系列コレクションが作成されます。

6

db.collection.insertMany()メソッドを実行して、次のサンプルドキュメントをコレクションに追加します。

db.stocks.insertMany([
{ ticker: "MDB", date: ISODate("2021-12-18T15:59:00.000Z"), close: 252.47, volume: 55046.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:58:00.000Z"), close: 252.93, volume: 44042.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:57:00.000Z"), close: 253.61, volume: 40182.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:56:00.000Z"), close: 253.63, volume: 27890.00},
{ ticker: "MDB", date: ISODate("2021-12-18T15:55:00.000Z"), close: 254.03, volume: 40270.00}
])

Atlas でMongoDB を実行中場合は、Browse collections をクリックしてサンプルデータを表示できます。

7

他のMongoDBコレクションと同様に、時系列コレクションをクエリします。詳細については、「 時系列データのクエリについて 」を参照してください。

時系列データの一般的なクエリは、metaField をクエリして単一の時系列のデータを取得するか、timeField で範囲クエリを使用して特定の時間範囲のデータを取得することです。

単一の時系列の metaField をクエリするには:

db.stocks.find( { ticker: "MDB" } )

timeField時間範囲をクエリするには次のようにします。

db.stocks.find({ date : {
$gte : ISODate("2021-12-18T15:50:00.000Z"),
$lte : ISODate("2021-12-18T15:56:00.000Z")}
});

このクイック スタートにより、次のドキュメント構造を持つ stocks時系列コレクションが作成されます。

{
_id: ObjectId(...),
ticker: <string>,
date: ISODate(...),
close: <double>,
volume: <double>
}

このクイック スタートでは、新しい時系列コレクションの作成に焦点を当てています。時系列コレクションは時間データ用に最適化されているため、そのパフォーマンスは、作成時にコレクションをどのように構成するかによって大きく異なります。詳細については、「 時系列コレクションに関する考慮事項 」を参照してください。

戻る

時系列