クラス: Mongo::Collection::View::MapReduce
- 継承:
-
オブジェクト
- オブジェクト
- Mongo::Collection::View::MapReduce
- 次による拡張機能。
- 転送可能
- 定義:
- lib/mongo/コレクション/view/map_reduce.rb
Overview
コレクション ビューの map/reduce 操作に関する動作を提供します。
定数の概要の削減
- INLIN =
インライン オプション。
'インライン'- REDIRECT =
非推奨。
メッセージをリルートします。
'MapReduce操作のプライマリサーバーへのリルーティング'
Loggableに含まれる定数
インスタンス属性の概要を折りたたむ
-
# map_function = string
readOnly
Map マップ 関数。
-
# reduce_function = string
readOnly
reduce 関数を使用します。
-
#view ⇒ View
readOnly
コレクション ビューを表示します。
不変に含まれる属性
インスタンス メソッドの概要を折りたたむ
-
各{|Each| ... } = 列挙型
map/reduce によって返されたドキュメントを反復処理します。
-
# execution = Mongo::Operation::Result
コレクションに出力される場合、結果を検索するために取得クエリを実行せずに、map reduce を実行します。
-
# finalize (function = nil) = mapReduce, string
操作の finalize 関数を設定または取得します。
-
#初期化(表示、マッピング、削減、オプション = {}) = MapReduce
コンストラクター
指定されたコレクション ビュー、関数、オプションの map/reduce を初期化します。
-
# js_mode (値 = nil) = MapReduce, ...
操作用の jsMode フラグを設定または取得します。
-
#out (ロケーション= nil)= MapReduce、ハッシュ
操作の出力場所を設定または取得します。
-
#out_collection_name ⇒ Object
map-reduce の結果が書き込まれるコレクション名を返します。
-
#out_database_name =オブジェクト
map-reduce の結果が書き込まれるデータベース名を返します。
-
#スコープ(オブジェクト = nil)= MapReduce、ハッシュ
操作のスコープを設定または取得します。
-
#冗長(値 = nil) = MapReduce、ハッシュ
結果にタイミング情報を含めるかどうか。
再試行可能な に含まれるメソッド
#read_worker、#select_server、#with_overload_retry、#write_worker
Loggableに含まれるメソッド
#log_debug, #log_error, #log_fatal, #log_info, #log_warn, #logger
コンストラクターの詳細
#初期化(表示、マッピング、削減、オプション = {}) = MapReduce
指定されたコレクション ビュー、関数、オプションの map/reduce を初期化します。
118 119 120 121 122 123 124 125 126 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 118 デフォルト 初期化(表示, map, reduce, = {}) @view = 表示 @map_function = map.dup.freeze @reduce_function = reduce.dup.freeze @options = BSON::ドキュメント.新着情報().freeze 非推奨.WARN(:map_reduce, ' map_reduce操作は非推奨です。代わりに集計パイプラインを使用してください。') end |
インスタンス属性の詳細
#map_function = string (読み取り専用)
map 関数を返します。
46 47 48 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 46 デフォルト map_function @map_function end |
#reduce_function = string (読み取り専用)
reduce 関数の reduce を返します。
49 50 51 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 49 デフォルト reduce_function @reduce_function end |
#表示=表示(readonly)
コレクション ビューのビューを返します。
43 44 45 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 43 デフォルト 表示 @view end |
インスタンス メソッドの詳細
各{|Each| ... } =列挙型
map/reduce によって返されたドキュメントを反復処理します。
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 69 デフォルト 各(&ブロック) @cursor = nil セッション = クライアント.get_session(@options) サーバー = クラスター.next_primary(nil, セッション) context = 操作::Context.新着情報(クライアント: クライアント, セッション: セッション, operation_timeouts: 表示.operation_timeouts) 場合 サーバー.load_ balancer? カーソルが空のときに接続がチェックインされます。 接続 = サーバー.プール.checkpoint_out(context: context) 結果 = send_initial_query_with_ connection(接続, context.セッション, context: context) 結果 = send_fetch_query_with_ connection(接続, セッション) ただし、 インライン else 結果 = send_initial_query(サーバー, context) 結果 = send_fetch_query(サーバー, セッション) ただし、 インライン end @cursor = Cursor.新着情報(表示, 結果, サーバー, セッション: セッション) 場合 ブロック_指定 @cursor.各(&ブロック) else @cursor.to_enum end end |
# execution = Mongo::Operation::Result
コレクションに出力される場合、結果を検索するために取得クエリを実行せずに、map reduce を実行します。
229 230 231 232 233 234 235 236 237 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 229 デフォルト 実行する 表示.送信(:with_session, @options) 行う |セッション| write_concern = 表示.write_concern_with_session(セッション) context = 操作::Context.新着情報(クライアント: クライアント, セッション: セッション) nro_write_with_retry(write_concern, context: context) 行う |接続, _txn_num, context| send_initial_query_with_ connection(接続, セッション, context: context) end end end |
# finalize (function =nil) = mapReduce , string
操作の finalize 関数を設定または取得します。
103 104 105 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 103 デフォルト finalize(関数 = nil) 構成する(: finalize, 関数) end |
# js_mode (値 = nil) = MapReduce 、...
操作用の jsMode フラグを設定または取得します。
139 140 141 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 139 デフォルト js_mode(価値 = nil) 構成する(:js_mode, 価値) end |
#out (ロケーション= nil)= MapReduce 、ハッシュ
操作の出力場所を設定または取得します。
163 164 165 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 163 デフォルト out(ロケーション = nil) 構成する(:out, ロケーション) end |
#out_collection_name ⇒ Object
map-reduce の結果が書き込まれるコレクション名を返します。 結果がインラインで返される場合、 は nil を返します。
169 170 171 172 173 174 175 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 169 デフォルト out_collection_name 場合 [:out].respond_to?(:keys) [:out][OUT_ACTIONS.find 行う |アクション| [:out][アクション] end] end || [:out] end |
#out_database_name =オブジェクト
map-reduce の結果が書き込まれるデータベース名を返します。 結果がインラインで返される場合、 は nil を返します。
179 180 181 182 183 184 185 186 187 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 179 デフォルト out_database_name return ただし、 [:out] 場合 [:out].respond_to?(:keys) & & (db = [:out][:db]) db else database.name end end |
#スコープ(オブジェクト = nil)= MapReduce 、ハッシュ
操作のスコープを設定または取得します。
200 201 202 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 200 デフォルト scope(オブジェクト = nil) 構成する(:scope, オブジェクト) end |
#冗長(値 = nil) = MapReduce 、ハッシュ
結果にタイミング情報を含めるかどうか。
216 217 218 |
# ファイル 'lib/mongo/ コレクション/view/map_reduce.rb' 行 216 デフォルト verbose(価値 = nil) 構成する(:verbose, 価値) end |