AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

時系列コレクション

このガイドでは、Rust ドライバーを使用して時系列コレクションを作成し、操作する方法を説明します。 時系列コレクションは、一定期間にわたる測定値の時系列を効率的に保存します。 時系列コレクション内の各ドキュメントには、次の情報が含まれています。

  • 時間の経過とともに測定されている数量

  • 測定を説明するメタデータ

  • 測定のタイムスタンプ

次の表では、時系列コレクションにデータを保存できるいくつかのサンプル状況について説明します。 各行は、各ドキュメントの状況、測定された数量、およびメタデータを説明します。

状況
測定値
Metadata

業種別の月間売上の記録

USD 建てでの収益

会社、国

気象変化の追跡

降量レベル

ロケーション、センサータイプ

家一軒の価格の変動を記録する

月額料金

ロケーション、通貨

このガイドには、次のセクションが含まれています。

重要

時系列コレクション用のサーバー バージョン

時系列コレクションを作成して操作するには、MongoDB 5.0 以降を実行している配置に接続する必要があります。

時系列コレクションを作成するには、次のアクションを実行します。

  1. 時系列コレクションのプロパティを指定するTimeseriesOptionsインスタンスを作成します。

  2. CreateCollectionOptionsインスタンスを作成し、 timeseriesフィールドの値をTimeseriesOptionsインスタンスに設定します。

  3. CreateCollectionOptionsインスタンスをcreate_collection()メソッドに渡します。 コレクション名もパラメーターとして渡す必要があります。

この例では、 precipitationデータベースに次の構成でsept2023時系列コレクションを作成します。

  • time_field に設定されている "precipitation_mm"

  • meta_field に設定されている "location"

  • granularity は 分に設定されています

let db = client.database("precipitation");
let ts_opts = TimeseriesOptions::builder()
.time_field("precipitation_mm".to_string())
.meta_field(Some("location".to_string()))
.granularity(Some(TimeseriesGranularity::Minutes))
.build();
let coll_opts = CreateCollectionOptions::builder()
.timeseries(ts_opts)
.build();
db.create_collection("sept2023", coll_opts).await?;

時系列コレクションが正常に作成されたことを確認するには、データベースでlist_collections()メソッドを実行し、結果を出力します。

let mut coll_list = db.list_collections(None, None).await?;
while let Some(c) = coll_list.try_next().await? {
println!("{:#?}", c);
}

時系列コレクションをクエリするには、他のコレクションに対して読み取りまたは集計操作を実行するときに使用するのと同じ構文と規則を使用できます。 これらの操作の詳細については、「追加情報」セクションを参照してください。

このガイドで言及されている概念の詳細については、次のサーバー マニュアル エントリを参照してください。

コレクションの作成の詳細については、「データベースとコレクション 」に関するガイドを参照してください。

読み取り操作の実行の詳細については、「読み取り操作」セクションのガイドを参照してください。

このガイドで言及されているメソッドとタイプの詳細については、次のAPIドキュメントを参照してください。