時系列コレクション
Overview
このガイドでは、Rust ドライバーを使用して時系列コレクションを作成し、操作する方法を説明します。 時系列コレクションは、一定期間にわたる測定値の時系列を効率的に保存します。 時系列コレクション内の各ドキュメントには、次の情報が含まれています。
時間の経過とともに測定されている数量
測定を説明するメタデータ
測定のタイムスタンプ
次の表では、時系列コレクションにデータを保存できるいくつかのサンプル状況について説明します。 各行は、各ドキュメントの状況、測定された数量、およびメタデータを説明します。
状況 | 測定値 | Metadata |
---|---|---|
業種別の月間売上の記録 | USD 建てでの収益 | 会社、国 |
気象変化の追跡 | 降量レベル | ロケーション、センサータイプ |
家一軒の価格の変動を記録する | 月額料金 | ロケーション、通貨 |
このガイドには、次のセクションが含まれています。
「時系列コレクションの作成」 では、時系列コレクションを作成するための構文を説明し、サンプル コードを紹介します
「時系列コレクションのクエリ」では、時系列コレクションに対して操作を実行する方法について説明します
追加情報では、このガイドで言及されている型とメソッドのリソースとAPIドキュメントへのリンクを提供します
時系列コレクションの作成
重要
時系列コレクション用のサーバー バージョン
時系列コレクションを作成して操作するには、MongoDB 5.0 以降を実行している配置に接続する必要があります。
時系列コレクションを作成するには、次のアクションを実行します。
時系列コレクションのプロパティを指定する
TimeseriesOptions
インスタンスを作成します。create_collection()
メソッドを呼び出し、コレクション名をパラメーターとして渡します。timeseries()
メソッドをcreate_collection()
メソッドにチェーンします。TimeseriesOptions
インスタンスをパラメータとしてtimeseries()
に渡します。
例
この例では、 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(); db.create_collection("sept2023") .timeseries(ts_opts) .await?;
時系列コレクションが正常に作成されたことを確認するには、データベースでlist_collections()
メソッドを実行し、結果を出力します。
let mut coll_list = db.list_collections().await?; while let Some(c) = coll_list.try_next().await? { println!("{:#?}", c); }
CollectionSpecification { name: "sept2023", collection_type: Timeseries, options: CreateCollectionOptions { ... timeseries: Some( TimeseriesOptions { time_field: "precipitation_mm", meta_field: Some( "location", ), granularity: Some( Minutes, ), }, ), ... }, ... }
時系列コレクションをクエリする
時系列コレクションをクエリするには、他のコレクションに対して読み取りまたは集計操作を実行するときに使用するのと同じ構文と規則を使用できます。 これらの操作の詳細については、「追加情報」セクションを参照してください。
詳細情報
このガイドで言及されている概念の詳細については、次のサーバー マニュアル エントリを参照してください。
コレクションの作成の詳細については、「 データベースとコレクション 」に関するガイドを参照してください。
読み取り操作の実行の詳細については、「読み取り操作」カテゴリのガイドを参照してください。
API ドキュメント
このガイドで言及されているメソッドとタイプの詳細については、次のAPIドキュメントを参照してください。