クラス: Mongo::Collection::View::Aggregation

継承:
オブジェクト
  • オブジェクト
すべて表示
次による拡張機能。
転送可能
次のことが含まれます。
列挙可能、説明可能不変反復可能 、ログ可能再試行可能
定義:
build/ruby-Driver-v 2.19 /lib/mongo/collection/view/aggregation.rb

Overview

コレクション ビューで 集計パイプライン の動作を提供します。

以来

  • 2.0.0

既知のサブクラスを直接確認

ChangeStream

定数の概要の削減

REDIRECT =
非推奨。

リルート メッセージ。

以来

  • 2.1.0

'集計操作をプライマリ サーバーにリルーティングします'.freeze

Loggableに含まれる定数

ログ可能::PRFIX

Explainableに含まれる定数

説明可能::ALL_PLANS_EXECUTION説明可能:EXECUTION_STATS説明可能::QUERY_PLANNER

インスタンス属性の概要を折りたたむ

イテラブルに含まれる属性

#cursor

不変に含まれる属性

#options

インスタンス メソッドの概要を折りたたむ

再試行可能な に含まれるメソッド

#read_worker#select_server#write_worker

Loggableに含まれるメソッド

#log_debug, #log_error, #log_fatal, #log_info, #log_warn, #logger

イテラブルに含まれるメソッド

#close_query

コンストラクターの詳細

#初期化(ビュー、パイプライン、オプション = {}) =集計

指定されたコレクション ビュー、パイプライン、オプションの集計を初期化します。

例:

新しい集計ビューを作成します。

Aggregation.view.new(view, pipeline)

パラメーター:

  • 表示 コレクション::View

    コレクションビュー。

  • パイプライン <Hash>配列 )

    の操作パイプライン。

  • options ハッシュ (デフォルトは{}です)

    集計オプション。

オプション ハッシュ( options ):

  • :allow_disk_use truefalse

    集計中にディスクの使用が許可されている場合は、 を true に設定します。

  • :batch_size 整数

    バッチするごとに返すドキュメントの数。

  • :bypass_document_validation truefalse

    ドキュメント レベルの検証をスキップするかどうか。

  • :collation ハッシュ

    使用する照合。

  • :comment オブジェクト

    このコマンドに添付するユーザー指定のコメント。

  • :hint string

    集計に使用するインデックス。

  • :let ハッシュ

    パイプラインで使用する変数のマッピング。 詳細については、 サーバーのドキュメントを 参照してください。

  • :max_time_ms 整数

    集計の実行を許可する最大時間(ミリ秒単位)。

  • :use_cursor truefalse

    コマンドがカーソルを使用してサーバーに結果の提供をリクエストするかどうかを示します。 サーバー バージョン3.6以降、集計では常にカーソルを使用して結果が提供され、このオプションは有効ではないことに注意してください。

  • :session セッション

    使用するセッション。

以来

  • 2.0.0



97
98
99
100
101
102
103
104
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/collection/view/aggregation.rb', 行97

デフォルト 初期化(表示, パイプライン, options = {})
  @view = 表示
  @ pipeline = パイプライン.dup
  ただし、 mongo.break_view_aggregate || 表示.フィルター.空の場合
    @ pipeline.unshift(:$match => 表示.フィルター)
  end
  @options = BSON::ドキュメント.新着情報(options).freeze
end

インスタンス属性の詳細

#パイプライン= Array<Hash> (読み取り専用)

パイプライン 集計パイプラインを返します。

次の値を返します。

  • <Hash>配列 )

    pipeline 集計パイプライン。

以来

  • 2.0.0



37
38
39
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/collection/view/aggregation.rb', 行37

デフォルト パイプライン
  @ pipeline
end

#表示=表示(readonly)

コレクション ビューのビューを返します。

次の値を返します。

  • ビュー

    view コレクションビュー。

以来

  • 2.0.0



35
36
37
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/collection/view/aggregation.rb', 行35

デフォルト 表示
  @view
end

インスタンス メソッドの詳細

# allow_disk_use (value = nil) = true , ...

集計中にディスクの使用が許可されている場合は、 を true に設定します。

例:

Set disk usage flag.

aggregation.allow_disk_use(true)

パラメーター:

  • 価値 truefalse (デフォルトはnil

    フラグの値。

次の値を返します。

  • truefalse集計

    値が設定されている場合は 集計 、または getter として使用されている場合は 値。

以来

  • 2.0.0



62
63
64
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/collection/view/aggregation.rb', 行62

デフォルト allow_disk_use(価値 = nil)
  構成する(:allow_disk_use, 価値)
end

# explain =ハッシュ

集計の説明プランを取得します。

例:

集計の説明プランを取得します。

aggregation.explain

次の値を返します。

  • ハッシュ

    説明プラン。

以来

  • 2.0.0



114
115
116
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/collection/view/aggregation.rb', 行114

デフォルト explain
  自己.クラス.新着情報(表示, パイプライン, options.merge(explain: true)).最初に
end

#書込み? =ブール値

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

この集計がその結果をデータベース コレクションに書き込むかどうか。

次の値を返します。

  • ブール値

    集計が結果をコレクションに書き込むかどうか。

以来

  • 2.0.0



124
125
126
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/collection/view/aggregation.rb', 行124

デフォルト 書込み (write)?
  パイプライン.any? { |op| op.key?(' $out ') || op.key?(:$out) || op.key?(' $merge ') || op.key?(:$merge) }
end