Skip to content

Commit 7a2160d

Browse files
authored
[Java Sync] TOC Revision (#655)
1 parent f56ba21 commit 7a2160d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+1823
-1626
lines changed

config/redirects

+58-58
Original file line numberDiff line numberDiff line change
@@ -14,61 +14,61 @@ raw: ${prefix}/master -> ${base}/upcoming/
1414
[*-master]: ${prefix}/${version}/fundamentals/crud/write-operations/change-a-document/ -> ${base}/${version}/fundamentals/crud/write-operations/modify/
1515
[*-v4.10]: ${prefix}/${version}/fundamentals/connection/socks/ -> ${base}/${version}/
1616
[*-v4.8]: ${prefix}/${version}/connection-troubleshooting/ -> ${base}/${version}/
17-
[master]: ${prefix}/${version}/fundamentals/crud/ -> ${base}/${version}/crud/
18-
[master]: ${prefix}/${version}/fundamentals/crud/read-operations/ -> ${base}/${version}/crud/read-operations/
19-
[master]: ${prefix}/${version}/fundamentals/crud/read-operations/retrieve/ -> ${base}/${version}/crud/read-operations/retrieve/
20-
[master]: ${prefix}/${version}/fundamentals/crud/read-operations/cursor/ -> ${base}/${version}/crud/read-operations/cursor/
21-
[master]: ${prefix}/${version}/fundamentals/crud/read-operations/change-streams/ -> ${base}/${version}/logging-monitoring/change-streams/
22-
[master]: ${prefix}/${version}/fundamentals/crud/read-operations/sort/ -> ${base}/${version}/crud/read-operations/sort/
23-
[master]: ${prefix}/${version}/fundamentals/crud/read-operations/skip/ -> ${base}/${version}/crud/read-operations/skip/
24-
[master]: ${prefix}/${version}/fundamentals/crud/read-operations/limit/ -> ${base}/${version}/crud/read-operations/limit/
25-
[master]: ${prefix}/${version}/fundamentals/crud/read-operations/project/ -> ${base}/${version}/crud/read-operations/project/
26-
[master]: ${prefix}/${version}/fundamentals/crud/read-operations/geo/ -> ${base}/${version}/crud/read-operations/geo/
27-
[master]: ${prefix}/${version}/fundamentals/crud/read-operations/text/ -> ${base}/${version}/crud/read-operations/text/
28-
[master]: ${prefix}/${version}/fundamentals/crud/write-operations/ -> ${base}/${version}/crud/write-operations/
29-
[master]: ${prefix}/${version}/fundamentals/crud/write-operations/insert/ -> ${base}/${version}/crud/write-operations/insert/
30-
[master]: ${prefix}/${version}/fundamentals/crud/write-operations/delete/ -> ${base}/${version}/crud/write-operations/delete/
31-
[master]: ${prefix}/${version}/fundamentals/crud/write-operations/modify/ -> ${base}/${version}/crud/write-operations/modify/
32-
[master]: ${prefix}/${version}/fundamentals/crud/write-operations/embedded-arrays/ -> ${base}/${version}/crud/write-operations/embedded-arrays/
33-
[master]: ${prefix}/${version}/fundamentals/crud/write-operations/upsert/ -> ${base}/${version}/crud/write-operations/upsert/
34-
[master]: ${prefix}/${version}/fundamentals/crud/write-operations/bulk/ -> ${base}/${version}/crud/write-operations/bulk/
35-
[master]: ${prefix}/${version}/fundamentals/crud/query-document/ -> ${base}/${version}/crud/query-document/
36-
[master]: ${prefix}/${version}/fundamentals/crud/compound-operations/ -> ${base}/${version}/crud/compound-operations/
37-
[master]: ${prefix}/${version}/fundamentals/data-formats/ -> ${base}/${version}/data-formats/
38-
[master]: ${prefix}/${version}/fundamentals/data-formats/document-data-format-bson/ -> ${base}/${version}/data-formats/document-data-format-bson/
39-
[master]: ${prefix}/${version}/fundamentals/data-formats/document-data-format-extended-json/ -> ${base}/${version}/data-formats/document-data-format-extended-json/
40-
[master]: ${prefix}/${version}/fundamentals/data-formats/documents/ -> ${base}/${version}/data-formats/documents/
41-
[master]: ${prefix}/${version}/fundamentals/data-formats/document-data-format-pojo/ -> ${base}/${version}/data-formats/document-data-format-pojo/
42-
[master]: ${prefix}/${version}/fundamentals/data-formats/document-data-format-record/ -> ${base}/${version}/data-formats/document-data-format-record/
43-
[master]: ${prefix}/${version}/fundamentals/data-formats/pojo-customization/ -> ${base}/${version}/data-formats/pojo-customization/
44-
[master]: ${prefix}/${version}/fundamentals/data-formats/codecs/ -> ${base}/${version}/data-formats/codecs/
45-
[master]: ${prefix}/${version}/fundamentals/connection/ -> ${base}/${version}/connection/
46-
[master]: ${prefix}/${version}/fundamentals/connection/connect/ -> ${base}/${version}/connection/mongoclient
47-
[master]: ${prefix}/${version}/fundamentals/connection/connection-options/ -> ${base}/${version}/connection/connection-options/
48-
[master]: ${prefix}/${version}/fundamentals/connection/mongoclientsettings/ -> ${base}/${version}/connection/mongoclientsettings/
49-
[master]: ${prefix}/${version}/fundamentals/connection/network-compression/ -> ${base}/${version}/connection/network-compression/
50-
[master]: ${prefix}/${version}/fundamentals/connection/socks/ -> ${base}/${version}/connection/socks/
51-
[master]: ${prefix}/${version}/fundamentals/connection/tls/ -> ${base}/${version}/security/tls/
52-
[master]: ${prefix}/${version}/fundamentals/connection/jndi/ -> ${base}/${version}/connection/jndi/
53-
[master]: ${prefix}/${version}/fundamentals/builders/ -> ${base}/${version}/crud/builders/
54-
[master]: ${prefix}/${version}/fundamentals/builders/aggregates/ -> ${base}/${version}/crud/builders/aggregates/
55-
[master]: ${prefix}/${version}/fundamentals/builders/filters/ -> ${base}/${version}/crud/builders/filters/
56-
[master]: ${prefix}/${version}/fundamentals/builders/indexes/ -> ${base}/${version}/crud/builders/indexes/
57-
[master]: ${prefix}/${version}/fundamentals/builders/projections/ -> ${base}/${version}/crud/builders/projections/
58-
[master]: ${prefix}/${version}/fundamentals/builders/sort/ -> ${base}/${version}/crud/builders/sort/
59-
[master]: ${prefix}/${version}/fundamentals/builders/updates/ -> ${base}/${version}/crud/builders/updates/
60-
[master]: ${prefix}/${version}/fundamentals/builders/vector-search -> ${base}/${version}/atlas-vector-search/
61-
[master]: ${prefix}/${version}/fundamentals/aggregation/ -> ${base}/${version}/crud/aggregation/
62-
[master]: ${prefix}/${version}/fundamentals/aggregation-expression-operations/ -> ${base}/${version}/crud/aggregation-expression-operations/
63-
[master]: ${prefix}/${version}/fundamentals/collations/ -> ${base}/${version}/crud/collations/
64-
[master]: ${prefix}/${version}/fundamentals/stable-api/ -> ${base}/${version}/connection/stable-api/
65-
[master]: ${prefix}/${version}/connection-troubleshooting/ -> ${base}/${version}/connection/connection-troubleshooting/
66-
[master]: ${prefix}/${version}/fundamentals/gridfs/ -> ${base}/${version}/crud/gridfs/
67-
[master]: ${prefix}/${version}/fundamentals/transactions/ -> ${base}/${version}/crud/transactions/
68-
[master]: ${prefix}/${version}/fundamentals/time-series/ -> ${base}/${version}/data-formats/time-series/
69-
[master]: ${prefix}/${version}/quick-start/ -> ${base}/${version}/getting-started/
70-
[master]: ${prefix}/${version}/fundamentals/databases-collections/ -> ${base}/${version}/getting-started/databases-collections/
71-
[master]: ${prefix}/${version}/integrations/ -> ${base}/${version}/getting-started/integrations/
72-
[master]: ${prefix}/${version}/quick-reference/ -> ${base}/${version}/getting-started/quick-reference/
73-
[master]: ${prefix}/${version}/fundamentals/enterprise-auth/ -> ${base}/${version}/security/enterprise-auth/
74-
[master]: ${prefix}/${version}/connection/socks/ -> ${base}/${version}/security/socks/
17+
[*-master]: ${prefix}/${version}/fundamentals/crud/ -> ${base}/${version}/crud/
18+
[*-master]: ${prefix}/${version}/fundamentals/crud/read-operations/ -> ${base}/${version}/crud/query-documents/
19+
[*-master]: ${prefix}/${version}/fundamentals/crud/read-operations/retrieve/ -> ${base}/${version}/crud/query-documents/find/
20+
[*-master]: ${prefix}/${version}/fundamentals/crud/read-operations/cursor/ -> ${base}/${version}/crud/query-documents/cursor/
21+
[*-master]: ${prefix}/${version}/fundamentals/crud/read-operations/change-streams/ -> ${base}/${version}/logging-monitoring/change-streams/
22+
[*-master]: ${prefix}/${version}/fundamentals/crud/read-operations/sort/ -> ${base}/${version}/crud/query-documents/sort/
23+
[*-master]: ${prefix}/${version}/fundamentals/crud/read-operations/skip/ -> ${base}/${version}/crud/query-documents/skip/
24+
[*-master]: ${prefix}/${version}/fundamentals/crud/read-operations/limit/ -> ${base}/${version}/crud/query-documents/limit/
25+
[*-master]: ${prefix}/${version}/fundamentals/crud/read-operations/project/ -> ${base}/${version}/crud/query-documents/project/
26+
[*-master]: ${prefix}/${version}/fundamentals/crud/read-operations/geo/ -> ${base}/${version}/crud/query-documents/geo/
27+
[*-master]: ${prefix}/${version}/fundamentals/crud/read-operations/text/ -> ${base}/${version}/crud/query-documents/text/
28+
[*-master]: ${prefix}/${version}/fundamentals/crud/write-operations/ -> ${base}/${version}/crud/insert/
29+
[*-master]: ${prefix}/${version}/fundamentals/crud/write-operations/insert/ -> ${base}/${version}/crud/insert/
30+
[*-master]: ${prefix}/${version}/fundamentals/crud/write-operations/delete/ -> ${base}/${version}/crud/update-documents/delete/
31+
[*-master]: ${prefix}/${version}/fundamentals/crud/write-operations/modify/ -> ${base}/${version}/crud/update-documents/
32+
[*-master]: ${prefix}/${version}/fundamentals/crud/write-operations/embedded-arrays/ -> ${base}/${version}/crud/update-documents/embedded-arrays/
33+
[*-master]: ${prefix}/${version}/fundamentals/crud/write-operations/upsert/ -> ${base}/${version}/crud/update-documents/upsert/
34+
[*-master]: ${prefix}/${version}/fundamentals/crud/write-operations/bulk/ -> ${base}/${version}/crud/bulk/
35+
[*-master]: ${prefix}/${version}/fundamentals/crud/query-document/ -> ${base}/${version}/crud/query-documents/specify-query/
36+
[*-master]: ${prefix}/${version}/fundamentals/crud/compound-operations/ -> ${base}/${version}/crud/compound-operations/
37+
[*-master]: ${prefix}/${version}/fundamentals/data-formats/ -> ${base}/${version}/data-formats/
38+
[*-master]: ${prefix}/${version}/fundamentals/data-formats/document-data-format-bson/ -> ${base}/${version}/data-formats/document-data-format-bson/
39+
[*-master]: ${prefix}/${version}/fundamentals/data-formats/document-data-format-extended-json/ -> ${base}/${version}/data-formats/document-data-format-extended-json/
40+
[*-master]: ${prefix}/${version}/fundamentals/data-formats/documents/ -> ${base}/${version}/data-formats/documents/
41+
[*-master]: ${prefix}/${version}/fundamentals/data-formats/document-data-format-pojo/ -> ${base}/${version}/data-formats/document-data-format-pojo/
42+
[*-master]: ${prefix}/${version}/fundamentals/data-formats/document-data-format-record/ -> ${base}/${version}/data-formats/document-data-format-record/
43+
[*-master]: ${prefix}/${version}/fundamentals/data-formats/pojo-customization/ -> ${base}/${version}/data-formats/pojo-customization/
44+
[*-master]: ${prefix}/${version}/fundamentals/data-formats/codecs/ -> ${base}/${version}/data-formats/codecs/
45+
[*-master]: ${prefix}/${version}/fundamentals/connection/ -> ${base}/${version}/connection/
46+
[*-master]: ${prefix}/${version}/fundamentals/connection/connect/ -> ${base}/${version}/connection/mongoclient
47+
[*-master]: ${prefix}/${version}/fundamentals/connection/connection-options/ -> ${base}/${version}/connection/connection-options/
48+
[*-master]: ${prefix}/${version}/fundamentals/connection/mongoclientsettings/ -> ${base}/${version}/connection/mongoclientsettings/
49+
[*-master]: ${prefix}/${version}/fundamentals/connection/network-compression/ -> ${base}/${version}/connection/network-compression/
50+
[*-master]: ${prefix}/${version}/fundamentals/connection/socks/ -> ${base}/${version}/connection/socks/
51+
[*-master]: ${prefix}/${version}/fundamentals/connection/tls/ -> ${base}/${version}/security/tls/
52+
[*-master]: ${prefix}/${version}/fundamentals/connection/jndi/ -> ${base}/${version}/connection/jndi/
53+
[*-master]: ${prefix}/${version}/fundamentals/builders/ -> ${base}/${version}/builders/
54+
[*-master]: ${prefix}/${version}/fundamentals/builders/aggregates/ -> ${base}/${version}/builders/aggregates/
55+
[*-master]: ${prefix}/${version}/fundamentals/builders/filters/ -> ${base}/${version}/builders/filters/
56+
[*-master]: ${prefix}/${version}/fundamentals/builders/indexes/ -> ${base}/${version}/builders/indexes/
57+
[*-master]: ${prefix}/${version}/fundamentals/builders/projections/ -> ${base}/${version}/builders/projections/
58+
[*-master]: ${prefix}/${version}/fundamentals/builders/sort/ -> ${base}/${version}/builders/sort/
59+
[*-master]: ${prefix}/${version}/fundamentals/builders/updates/ -> ${base}/${version}/builders/updates/
60+
[*-master]: ${prefix}/${version}/fundamentals/builders/vector-search -> ${base}/${version}/atlas-vector-search/
61+
[*-master]: ${prefix}/${version}/fundamentals/aggregation/ -> ${base}/${version}/aggregation/
62+
[*-master]: ${prefix}/${version}/fundamentals/aggregation-expression-operations/ -> ${base}/${version}/aggregation/aggregation-expression-operations/
63+
[*-master]: ${prefix}/${version}/fundamentals/collations/ -> ${base}/${version}/crud/collations/
64+
[*-master]: ${prefix}/${version}/fundamentals/stable-api/ -> ${base}/${version}/connection/stable-api/
65+
[*-master]: ${prefix}/${version}/connection-troubleshooting/ -> ${base}/${version}/connection/connection-troubleshooting/
66+
[*-master]: ${prefix}/${version}/fundamentals/gridfs/ -> ${base}/${version}/crud/gridfs/
67+
[*-master]: ${prefix}/${version}/fundamentals/transactions/ -> ${base}/${version}/crud/transactions/
68+
[*-master]: ${prefix}/${version}/fundamentals/time-series/ -> ${base}/${version}/data-formats/time-series/
69+
[*-master]: ${prefix}/${version}/quick-start/ -> ${base}/${version}/getting-started/
70+
[*-master]: ${prefix}/${version}/fundamentals/databases-collections/ -> ${base}/${version}/getting-started/databases-collections/
71+
[*-master]: ${prefix}/${version}/integrations/ -> ${base}/${version}/getting-started/integrations/
72+
[*-master]: ${prefix}/${version}/quick-reference/ -> ${base}/${version}/getting-started/quick-reference/
73+
[*-master]: ${prefix}/${version}/fundamentals/enterprise-auth/ -> ${base}/${version}/security/enterprise-auth/
74+
[*-master]: ${prefix}/${version}/connection/socks/ -> ${base}/${version}/security/socks/

snooty.toml

+5-3
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,14 @@ intersphinx = [
77
]
88

99
toc_landing_pages = [
10-
"/get-started",
1110
"/connection",
1211
"/connection/specify-connection-options",
13-
"/crud",
14-
"/crud/builders",
12+
"/crud/update-documents",
13+
"/aggregation",
14+
"/builders",
1515
"/data-formats",
16+
"/references",
17+
"/logging-monitoring",
1618
"/api-documentation",
1719
"/security",
1820
"/security/auth"

source/aggregation.txt

+91
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
.. _java-aggregation:
2+
3+
===========
4+
Aggregation
5+
===========
6+
7+
.. facet::
8+
:name: genre
9+
:values: reference
10+
11+
.. meta::
12+
:keywords: code example, transform, computed
13+
14+
.. contents:: On this page
15+
:local:
16+
:backlinks: none
17+
:depth: 2
18+
:class: singlecol
19+
20+
.. toctree::
21+
:caption: Aggregation
22+
23+
Aggregation Expressions </aggregation/aggregation-expression-operations>
24+
Aggregation Examples </aggregation/aggregation-examples>
25+
26+
Overview
27+
--------
28+
29+
In this guide, you can learn how to use the {+driver-short+} to perform
30+
**aggregation operations**.
31+
32+
Aggregation operations process data in your MongoDB collections and
33+
return computed results. The MongoDB Aggregation framework, which is
34+
part of the Query API, is modeled on the concept of data processing
35+
pipelines. Documents enter a pipeline comprised of one or more stages,
36+
and this pipeline transforms the documents into an aggregated result.
37+
38+
An aggregation operation is similar to a car factory. A car factory has
39+
an assembly line, which contains assembly stations with specialized
40+
tools to do specific jobs, like drills and welders. Raw parts enter the
41+
factory, and then the assembly line transforms and assembles them into a
42+
finished product.
43+
44+
The **aggregation pipeline** is the assembly line, **aggregation
45+
stages** are the assembly stations, and **operator expressions** are the
46+
specialized tools.
47+
48+
For more information about aggregation in the {+driver-short+}, see the
49+
following pages:
50+
51+
- :ref:`<java-aggregation-expression-operations>`
52+
- :ref:`<java-aggregation-examples>`
53+
54+
Compare Aggregation and Find Operations
55+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
56+
57+
You can use find operations to perform the following actions:
58+
59+
- Select *what* documents to return
60+
- Select *what* fields to return
61+
- Sort the results
62+
63+
You can use aggregation operations to perform the following actions:
64+
65+
- Perform find operations
66+
- Rename fields
67+
- Calculate fields
68+
- Summarize data
69+
- Group values
70+
71+
Aggregation operations have some :manual:`limitations </core/aggregation-pipeline-limits/>` you must keep in mind:
72+
73+
- Returned documents must not violate the :manual:`BSON document size limit </reference/limits/#mongodb-limit-BSON-Document-Size>`
74+
of 16 megabytes.
75+
76+
- Pipeline stages have a memory limit of 100 megabytes by default. If required, you can exceed this limit by using
77+
the `allowDiskUse <{+api+}/apidocs/mongodb-driver-sync/com/mongodb/client/AggregateIterable.html#allowDiskUse(java.lang.Boolean)>`__
78+
method.
79+
80+
.. important:: ``$graphLookup`` exception
81+
82+
The :manual:`$graphLookup </reference/operator/aggregation/graphLookup/>` stage has a strict memory limit of 100 megabytes
83+
and will ignore ``allowDiskUse``.
84+
85+
Useful References
86+
~~~~~~~~~~~~~~~~~
87+
88+
- :manual:`Aggregation pipeline </core/aggregation-pipeline/>`
89+
- :manual:`Aggregation stages </meta/aggregation-quick-reference/#stages>`
90+
- :manual:`Operator expressions </meta/aggregation-quick-reference/#operator-expressions>`
91+
- :ref:`Aggregation Builders <aggregates-builders>`

source/crud/aggregation.txt source/aggregation/aggregation-examples.txt

+5-64
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
.. _java-aggregation:
1+
.. _java-aggregation-examples:
22

3-
===========
4-
Aggregation
5-
===========
3+
====================
4+
Aggregation Examples
5+
====================
66

77
.. facet::
88
:name: genre
@@ -20,66 +20,7 @@ Aggregation
2020
Overview
2121
--------
2222

23-
In this guide, you can learn how to use the {+driver-short+} to perform
24-
**aggregation operations**.
25-
26-
Aggregation operations process data in your MongoDB collections and
27-
return computed results. The MongoDB Aggregation framework, which is
28-
part of the Query API, is modeled on the concept of data processing
29-
pipelines. Documents enter a pipeline comprised of one or more stages,
30-
and this pipeline transforms the documents into an aggregated result.
31-
32-
An aggregation operation is similar to a car factory. A car factory has
33-
an assembly line, which contains assembly stations with specialized
34-
tools to do specific jobs, like drills and welders. Raw parts enter the
35-
factory, and then the assembly line transforms and assembles them into a
36-
finished product.
37-
38-
The **aggregation pipeline** is the assembly line, **aggregation
39-
stages** are the assembly stations, and **operator expressions** are the
40-
specialized tools.
41-
42-
Compare Aggregation and Find Operations
43-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
44-
45-
You can use find operations to perform the following actions:
46-
47-
- Select *what* documents to return
48-
- Select *what* fields to return
49-
- Sort the results
50-
51-
You can use aggregation operations to perform the following actions:
52-
53-
- Perform find operations
54-
- Rename fields
55-
- Calculate fields
56-
- Summarize data
57-
- Group values
58-
59-
Aggregation operations have some :manual:`limitations </core/aggregation-pipeline-limits/>` you must keep in mind:
60-
61-
- Returned documents must not violate the :manual:`BSON document size limit </reference/limits/#mongodb-limit-BSON-Document-Size>`
62-
of 16 megabytes.
63-
64-
- Pipeline stages have a memory limit of 100 megabytes by default. If required, you can exceed this limit by using
65-
the `allowDiskUse <{+api+}/apidocs/mongodb-driver-sync/com/mongodb/client/AggregateIterable.html#allowDiskUse(java.lang.Boolean)>`__
66-
method.
67-
68-
.. important:: ``$graphLookup`` exception
69-
70-
The :manual:`$graphLookup </reference/operator/aggregation/graphLookup/>` stage has a strict memory limit of 100 megabytes
71-
and will ignore ``allowDiskUse``.
72-
73-
Useful References
74-
~~~~~~~~~~~~~~~~~
75-
76-
- :manual:`Aggregation pipeline </core/aggregation-pipeline/>`
77-
- :manual:`Aggregation stages </meta/aggregation-quick-reference/#stages>`
78-
- :manual:`Operator expressions </meta/aggregation-quick-reference/#operator-expressions>`
79-
- :ref:`Aggregation Builders <aggregates-builders>`
80-
81-
Runnable Examples
82-
-----------------
23+
This page demonstrates how to use aggregation pipelines.
8324

8425
Import Classes
8526
~~~~~~~~~~~~~~

0 commit comments

Comments
 (0)