@@ -145,7 +145,68 @@ To learn more about these settings, see :ref:`datalake-configuration-file`.
145
145
{+dl+} automatically detects the file format and creates the virtual databases
146
146
and collections you specified in your {+dl+} configuration. When you
147
147
:doc:`connect </tutorial/connect>` to your {+dl+} and run queries, {+dl+}
148
- processes your queries against the data and returns the query results.
148
+ processes your queries against the data and returns the query results.
149
+
150
+ If you query a collection in {+adl+} that is mapped to only one |service|
151
+ collection, {+adl+} acts as a proxy and forwards your query to |service|.
152
+ When acting as a proxy, {+adl+} doesn't scan data into its virtual collection
153
+ to proces the query thus improving performance and reducing cost. This
154
+ optimization is not available for queries on {+adl+} collections that are
155
+ mapped to multiple |service| collections.
156
+
157
+ .. example::
158
+
159
+ Consider the following {+dl+} storage configuration:
160
+
161
+ .. code-block:: json
162
+
163
+ {
164
+ "stores" : [
165
+ {
166
+ "name" : "atlas-store",
167
+ "provider": "atlas",
168
+ "clusterName": "myCluster",
169
+ "projectId": "5e2211c17a3e5a48f5497de3"
170
+ }
171
+ ],
172
+ "databases" : [
173
+ {
174
+ "name" : "atlas-db",
175
+ "collections" : [
176
+ {
177
+ "name" : "foo",
178
+ "dataSources" : [
179
+ {
180
+ "storeName" : "atlas-store",
181
+ "database" : "myFooData",
182
+ "collection" : "foo"
183
+ }
184
+ ]
185
+ },
186
+ {
187
+ "name" : "barbaz",
188
+ "dataSources" : [
189
+ {
190
+ "storeName" : "atlas-store",
191
+ "database" : "myBarData",
192
+ "collection" : "bar"
193
+ },
194
+ {
195
+ "storeName" : "atlas-store",
196
+ "database" : "myBazData",
197
+ "collection" : "baz"
198
+ }
199
+ ]
200
+ }
201
+ ]
202
+ }
203
+ ]
204
+ }
205
+
206
+ For the above storage configuration, {+adl+} acts as a proxy for queries
207
+ on ``foo`` collection and forwards the queries to |service|. This
208
+ performance and cost optimization is not available for queries on ``barbaz``
209
+ collection because ``barbaz`` is mapped to multiple |service| collections.
149
210
150
211
.. _query-http:
151
212
0 commit comments