A type-safe ADT for Mongo's native data format.
A type-safe ADT for Mongo's native data format. Note that this representation is not suitable for efficiently storing large quantities of data.
Identifies a collection in a specific database.
Identifies a collection in a specific database. Sometimes referred to as a "namespace" in MongoDB docs.
A subset of the information available from the collStats command.
A subset of the information available from the collStats command. Many more fields are available, some only in particular MongoDB versions or with particular storage engines.
The number of documents in the collection.
The total size "in memory" in bytes of all documents in the collection, not including headers or indexes.
Configuration parameters for MapReduce operations
Configuration parameters for MapReduce operations
The mapping function
The reducing function
Query selector to apply to input documents
Criteria to use to sort the input documents.
Limit the number of input documents to map
JavaScript function applied to the output after the
reduce
function.
Global variables made available to the map
, reduce
and
finalizer
functions.
Whether to avoid converting intermediate values to
BSON, leaving them as JavaScript objects instead.
Setting this to true
has implications on the size of
the input, see the MongoDB mapReduce
documentation
for details.
Whether to include additional information, such as timing, in the results.
Error conditions possible during Workflow
execution.
A Workflow is a graph of atomic operations, with WorkflowOps for the vertices.
A Workflow is a graph of atomic operations, with WorkflowOps for the
vertices. We crush them down into a WorkflowTask. This crush
gives us a
location to optimize our workflow decisions. EG, A sequence of simple ops
may be combined into a single pipeline request, but if one of those
operations contains JS, we have to execute that outside of a pipeline,
possibly reordering the other operations to avoid having two pipelines with
a JS operation in the middle.
We also implement the optimizations atomic http://docs.mongodb.org/manual/core/aggregation-pipeline-optimization/ so that we can build others potentially on top of them (including reordering non-pipelines around pipelines, etc.).