@@ -145,7 +145,68 @@ To learn more about these settings, see :ref:`datalake-configuration-file`.
145145{+dl+} automatically detects the file format and creates the virtual databases
146146and collections you specified in your {+dl+} configuration. When you
147147: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.
149210
150211.. _query-http:
151212
0 commit comments