{"id":5722,"date":"2023-03-14T08:50:14","date_gmt":"2023-03-14T15:50:14","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/cosmosdb\/?p=5722"},"modified":"2023-03-14T09:20:03","modified_gmt":"2023-03-14T16:20:03","slug":"enabling-real-time-dashboards-azure-cosmos-db-now-supports-power-bi-directquery-mode-and-dataflows-in-preview","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/cosmosdb\/enabling-real-time-dashboards-azure-cosmos-db-now-supports-power-bi-directquery-mode-and-dataflows-in-preview\/","title":{"rendered":"Enabling real-time dashboards: Power BI DirectQuery mode and Dataflows support in Azure Cosmos DB"},"content":{"rendered":"<p><span data-contrast=\"auto\">The <\/span><a href=\"https:\/\/aka.ms\/cosmos-db-v2-connector-power-bi\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Azure Cosmos DB V2 Connector for Power BI<\/span><\/a><span data-contrast=\"auto\">, with support for querying the Azure Cosmos DB transactional store in both DirectQuery and Import modes, is now in preview. The new V2 connector also supports Azure Cosmos DB as a data source in <\/span><a href=\"https:\/\/learn.microsoft.com\/power-bi\/transform-model\/dataflows\/dataflows-introduction-self-service\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Power BI dataflows<\/span><\/a><span data-contrast=\"auto\">. <span class=\"ui-provider a b c d e f g h i j k l m n o p q r s t u v w x y z ab ac ae af ag ah ai aj ak\" dir=\"ltr\">It\u2019s available now on <a class=\"fui-Link ___1qmgydl f3rmtva f1ewtqcl fyind8e f1k6fduh f1w7gpdv fk6fouc fjoy568 figsok6 f1hu3pq6 f11qmguv f19f4twv f1tyq0we f1g0x7ka fhxju0i f1qch9an f1cnd47f fqv5qza f1vmzxwi f1o700av f13mvf36 f1cmlufx f9n3di6 f1ids18y f1tx3yz7 f1deo86v f1eh06m1 f1iescvh ftqa4ok f2hkw1w fhgqx19 f1olyrje f1p93eir f1h8hb77 f1x7u7e9 f10aw75t fsle3fq\" title=\"https:\/\/learn.microsoft.com\/power-bi\/fundamentals\/power-bi-overview#the-parts-of-power-bi\" href=\"https:\/\/learn.microsoft.com\/power-bi\/fundamentals\/power-bi-overview#the-parts-of-power-bi\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Link Power BI components\">Power BI components<\/a> including Desktop, Power BI service, Power BI Mobile and on the <a class=\"fui-Link ___1qmgydl f3rmtva f1ewtqcl fyind8e f1k6fduh f1w7gpdv fk6fouc fjoy568 figsok6 f1hu3pq6 f11qmguv f19f4twv f1tyq0we f1g0x7ka fhxju0i f1qch9an f1cnd47f fqv5qza f1vmzxwi f1o700av f13mvf36 f1cmlufx f9n3di6 f1ids18y f1tx3yz7 f1deo86v f1eh06m1 f1iescvh ftqa4ok f2hkw1w fhgqx19 f1olyrje f1p93eir f1h8hb77 f1x7u7e9 f10aw75t fsle3fq\" title=\"https:\/\/learn.microsoft.com\/power-query\/connectors\/azure-cosmos-db-v2\" href=\"https:\/\/learn.microsoft.com\/power-query\/connectors\/azure-cosmos-db-v2\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Link Power Query\">Power Query<\/a> platform.<\/span><\/span><\/p>\n<h3>Real-time reporting without importing data<\/h3>\n<p><span data-contrast=\"auto\">The DirectQuery mode enables queries pushdown, including aggregations to the Azure Cosmos DB container, when a filter on partition key is specified. This new capability unlocks real time reporting and enables connecting directly to Cosmos DB without needing to import the data into Power BI cache. The DirectQuery mode in the V2 connector enables you to query and visualize large Azure Cosmos DB datasets without the limitations imposed by the Import mode.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Before the V2 connector, Power BI developers and users were limited to the imported dataset, refreshed or not with a fixed schedule. Now with the support for in-partition aggregations, you can obtain data in real time and optimize performance with the aggregations being executed in Azure Cosmos DB, avoiding the load of big volumes of data into Power BI cache.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Imagine a hypothetical IoT scenario where thousands of devices send billions of data points per day. Users want to monitor totals per day and when necessary, dig into one specific device. With the Import mode in V1 connector, users had to import the entire dataset into Power BI cache to dynamically perform aggregations and apply filters based on the given device. Now with the DirectQuery Mode, users can create a dashboard that will dynamically pass the <strong><em>DeviceId<\/em> <\/strong>as a parameter to the query that is pushed down to Azure Cosmos DB.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">For partitioned Azure Cosmos DB containers, a SQL query with an aggregate function is pushed down to Azure Cosmos DB if the query also contains a filter (WHERE clause) on the Partition Key. For example, considering <strong><em>DeviceId<\/em><\/strong> from the scenario above as the partition key, then a SQL query with aggregations can be pushed down when there is a filter on this property:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">SELECT SUM(<strong><em>ColumnName<\/em><\/strong>) FROM <strong><em>TableName<\/em> <\/strong>WHERE <strong><em>DeviceId<\/em> <\/strong>= &#8216;1234&#8217; <\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">This is what we call in-partition aggregations. If you need cross-partition aggregations, we recommend <\/span><a href=\"https:\/\/learn.microsoft.com\/azure\/cosmos-db\/synapse-link\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Azure Synapse Link for Azure Cosmos DB<\/span><\/a><span data-contrast=\"auto\">.<\/span><\/p>\n<p><span class=\"ui-provider a b c d e f g h i j k l m n o p q r s t u v w x y z ab ac ae af ag ah ai aj ak\" dir=\"ltr\">Please note that although aggregations would not be pushed down to Azure Cosmos DB when the query does not contain a filter on the Partition Key, the projections and filters would still be pushed down. For eg: if <strong><em>DeviceId<\/em> <\/strong>was not the partition key on the Cosmos DB container in the above query, the filter will be pushed down to Cosmos DB and the Sum aggregation of <i><strong>ColumnName<\/strong><\/i> will be performed in the Power BI cache.\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">The most optimal way to specify Partition Key filter is to use <\/span><a href=\"https:\/\/learn.microsoft.com\/power-bi\/connect-data\/desktop-dynamic-m-query-parameters\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Power BI dynamic M Parameters<\/span><\/a><span data-contrast=\"auto\">. For that, you need a <\/span><a href=\"https:\/\/learn.microsoft.com\/power-bi\/visuals\/power-bi-visualization-slicers?tabs=powerbi-desktop\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Dashboard Slicer<\/span><\/a><span data-contrast=\"auto\"> to list the possible Partition Keys and the selected value is used as a parameter for the dashboard with the aggregation.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<h3><span data-contrast=\"none\">How to use Azure Cosmos DB V2 connector for Power BI<\/span><span data-ccp-props=\"{&quot;134245418&quot;:true,&quot;134245529&quot;:true,&quot;201341983&quot;:0,&quot;335559738&quot;:40,&quot;335559739&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/h3>\n<p><span data-contrast=\"auto\">To start creating your Power BI dashboard, follow these steps:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<h4><span data-contrast=\"auto\">Step 1 &#8211; Get Data<\/span><\/h4>\n<p><span data-contrast=\"auto\">Click on <\/span><b><span data-contrast=\"auto\">Get Data<\/span><\/b><span data-contrast=\"auto\"> in Power BI Desktop and search for Azure Cosmos DB and choose the <\/span><b><span data-contrast=\"auto\">Azure Cosmos DB V2 (Beta)<\/span><\/b><span data-contrast=\"auto\"> option. If a <\/span><b><span data-contrast=\"auto\">third-party<\/span><\/b><span data-contrast=\"auto\"> warning pops up, ignore it, and click on <\/span><b><span data-contrast=\"auto\">continue<\/span><\/b><span data-contrast=\"auto\">. In the next screen is where you will decide between <\/span><b><span data-contrast=\"auto\">Import<\/span><\/b><span data-contrast=\"auto\"> or <\/span><b><span data-contrast=\"auto\">DirectQuery<\/span><\/b><span data-contrast=\"auto\"> modes. They are both supported now.<\/span><\/p>\n<p><figure id=\"attachment_5726\" aria-labelledby=\"figcaption_attachment_5726\" class=\"wp-caption aligncenter\" ><a href=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Connection.png\"><img decoding=\"async\" class=\"size-full wp-image-5726\" src=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Connection.png\" alt=\"Configure your connection to Azure Cosmos DB using the V2 connector, including the DirectQuery mode now\" width=\"928\" height=\"557\" srcset=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Connection.png 928w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Connection-300x180.png 300w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Connection-768x461.png 768w\" sizes=\"(max-width: 928px) 100vw, 928px\" \/><\/a><figcaption id=\"figcaption_attachment_5726\" class=\"wp-caption-text\"><em>Configure your connection to Azure Cosmos DB using the V2 connector, including the DirectQuery mode now<\/em><\/figcaption><\/figure><\/p>\n<h4><\/h4>\n<h4>Step 2 &#8211; Specify the partition key dynamic filter<\/h4>\n<p><span data-contrast=\"auto\">To specify the Partition Key filter using dynamic M parameters after the initial configuration, you would create a dataset with unique Partition Key values, create a parameter, add it as filter on main dataset, bind it to the unique Partition key dataset, and use it as a slicer for the main dataset. Please follow the detailed steps to <\/span><a href=\"https:\/\/learn.microsoft.com\/power-query\/connectors\/azure-cosmos-db-v2#connect-to-azure-cosmos-db\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">specify the Partition Key filter using dynamic M parameters<\/span><\/a><span data-contrast=\"auto\">. You can then add visualizations and apply Partition Key filter from the slicer as shown below.<\/span><\/p>\n<p><figure id=\"attachment_5728\" aria-labelledby=\"figcaption_attachment_5728\" class=\"wp-caption aligncenter\" ><a href=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Filter.png\"><img decoding=\"async\" class=\"size-full wp-image-5728\" src=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Filter.png\" alt=\"Filter on a partition key to push aggregations down to Azure Cosmos DB\" width=\"1715\" height=\"992\" srcset=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Filter.png 1715w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Filter-300x174.png 300w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Filter-1024x592.png 1024w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Filter-768x444.png 768w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Filter-1536x888.png 1536w\" sizes=\"(max-width: 1715px) 100vw, 1715px\" \/><\/a><figcaption id=\"figcaption_attachment_5728\" class=\"wp-caption-text\"><em>Filter on a partition key to push aggregations down to Azure Cosmos DB<\/em><\/figcaption><\/figure><\/p>\n<h3><\/h3>\n<h3>Use Azure Cosmos DB as source in Power BI dataflows<\/h3>\n<p><span data-contrast=\"auto\">The <\/span><a href=\"https:\/\/aka.ms\/Cosmosdb-PowerBI-v2-connector\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Azure Cosmos DB V2 Connector for Power BI<\/span><\/a><span data-contrast=\"auto\"> supports Azure Cosmos DB as data source in <\/span><a href=\"https:\/\/learn.microsoft.com\/power-bi\/transform-model\/dataflows\/dataflows-introduction-self-service\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Power BI dataflows,<\/span><\/a><span data-contrast=\"auto\"> which can be used to create reusable transformation logic and can be shared across datasets, reports, and dashboards. To create a dataflow with Azure Cosmos DB as data source, use the \u201cDefine new tables\u201d option from dataflow interface, choose Azure Cosmos DB v2 as data source, as shown below and specify any transformation logic that that can be reused across Power BI artifacts.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><a style=\"font-weight: bold; font-size: inherit; background-color: #f7f7f9; text-align: var(--bs-body-text-align);\" href=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Data-Sources.png\"><img decoding=\"async\" class=\"size-full wp-image-5727\" src=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Data-Sources.png\" alt=\"Image PBI V2 Connector Data Sources\" width=\"1875\" height=\"951\" srcset=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Data-Sources.png 1875w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Data-Sources-300x152.png 300w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Data-Sources-1024x519.png 1024w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Data-Sources-768x390.png 768w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Data-Sources-1536x779.png 1536w\" sizes=\"(max-width: 1875px) 100vw, 1875px\" \/><\/a><\/p>\n<p><em>Azure Cosmos DB V2 is now a supported data source on Power Query platform.<\/em><\/p>\n<p><span data-contrast=\"auto\">Once the Dataflow is created, it can be consumed from Power BI Desktop and Power BI service. To consume the Azure Cosmos DB based Dataflow from Power BI Desktop, select \u201cDataflows\u201d in the Get Data dropdown. Select the Azure Cosmos DB Dataflow to create a dataset that will allow you to create reports and dashboards. You can <\/span><a href=\"https:\/\/learn.microsoft.com\/power-bi\/transform-model\/dataflows\/dataflows-directquery\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">connect to the Dataflow in both DirectQuery and Import modes.<\/span><\/a><\/p>\n<p><figure id=\"attachment_5729\" aria-labelledby=\"figcaption_attachment_5729\" class=\"wp-caption aligncenter\" ><a href=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Get-Data.png\"><img decoding=\"async\" class=\"size-full wp-image-5729\" src=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Get-Data.png\" alt=\"Dataflow Get Data in Power BI Desktop\" width=\"787\" height=\"867\" srcset=\"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Get-Data.png 787w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Get-Data-272x300.png 272w, https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-content\/uploads\/sites\/52\/2023\/03\/PBI-V2-Connector-Get-Data-768x846.png 768w\" sizes=\"(max-width: 787px) 100vw, 787px\" \/><\/a><figcaption id=\"figcaption_attachment_5729\" class=\"wp-caption-text\"><em>Dataflow Get Data in Power BI Desktop<\/em><\/figcaption><\/figure><\/p>\n<h3><\/h3>\n<h3><span data-contrast=\"none\">What to use When<\/span><span data-ccp-props=\"{&quot;134245418&quot;:true,&quot;134245529&quot;:true,&quot;201341983&quot;:0,&quot;335559738&quot;:40,&quot;335559739&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/h3>\n<p><span data-contrast=\"auto\">With this announcement, customers now have three options to implement Business Intelligence solutions on top of their Azure Cosmos DB data: <\/span><a href=\"https:\/\/aka.ms\/Cosmosdb-PowerBI-v2-connector\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Azure Cosmos DB V2 connector for Power BI<\/span><\/a><span data-contrast=\"auto\">, <\/span><a href=\"https:\/\/learn.microsoft.com\/azure\/cosmos-db\/synapse-link\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Azure Synapse Link<\/span><\/a><span data-contrast=\"auto\">, and <\/span><a href=\"https:\/\/learn.microsoft.com\/azure\/cosmos-db\/nosql\/odbc-driver\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Azure Cosmos DB ODBC driver<\/span><\/a><span data-contrast=\"auto\">. But what is the right option for you?<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<table style=\"width: 100%; height: 727px;\" data-tablestyle=\"MsoTableGrid\" data-tablelook=\"1184\" aria-rowcount=\"5\">\n<tbody>\n<tr style=\"height: 28px;\" aria-rowindex=\"1\">\n<td style=\"width: 18.3316%; height: 28px;\" data-celllook=\"0\"><b><span data-contrast=\"auto\">Option<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/td>\n<td style=\"width: 81.6684%; height: 28px;\" data-celllook=\"0\"><b><span data-contrast=\"auto\">Used for\u2026<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/td>\n<\/tr>\n<tr style=\"height: 54px;\" aria-rowindex=\"2\">\n<td style=\"width: 18.3316%; height: 54px;\" data-celllook=\"0\"><span data-contrast=\"auto\">Azure Cosmos DB V1 connector for Power BI<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/td>\n<td style=\"width: 81.6684%; height: 54px;\" data-celllook=\"0\">\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"7\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Legacy version now, upgrade to V2 when possible.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr style=\"height: 249px;\" aria-rowindex=\"3\">\n<td style=\"width: 18.3316%; height: 249px;\" data-celllook=\"0\"><span data-contrast=\"auto\">Azure Cosmos DB V2 connector for Power BI<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/td>\n<td style=\"width: 81.6684%; height: 249px;\" data-celllook=\"0\">\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Azure Cosmos DB for NoSQL API only<\/span><\/b><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Real time BI:<\/span><\/b><span data-contrast=\"auto\"> Create Power BI reports using the last inserted data on its original JSON format and <\/span><a href=\"https:\/\/learn.microsoft.com\/power-bi\/connect-data\/desktop-directquery-about\"><span data-contrast=\"none\">Power BI DirectQuery<\/span><\/a><span data-contrast=\"auto\"> mode.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">In-partition aggregations:<\/span><\/b><span data-contrast=\"auto\"> Filter on a Partition Key and get back only aggregated data from the database, improving performance by reducing the amount of data transferred.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Joins in Power BI:<\/span><\/b><span data-contrast=\"auto\"> Add collections to your Power BI dashboard as datasets and create relationships between them. The join happens in Power BI.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Share throughput between transactional and BI workloads: <\/span><\/b><span data-contrast=\"auto\">Use your Azure Cosmos DB RU\/s to support your transactional and BI workloads, provisioning throughput enough for both.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr style=\"height: 326px;\" aria-rowindex=\"4\">\n<td style=\"width: 18.3316%; height: 326px;\" data-celllook=\"0\"><span data-contrast=\"auto\">Azure Synapse Link for Cosmos DB<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/td>\n<td style=\"width: 81.6684%; height: 326px;\" data-celllook=\"0\">\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Azure Cosmos DB for NoSQL, MongoDB, or Gremlin APIs.<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">No impact on OLTP performance: <\/span><\/b><span data-contrast=\"auto\">No impact to OLTP performance while running BI queries.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">In-partition or cross partitions aggregations:<\/span><\/b><span data-contrast=\"auto\"> Perform aggregations with no limitations.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"6\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Joins between collections:<\/span><\/b><span data-contrast=\"auto\"> Using Azure Synapse Serverless SQL pools, you can leverage many T-SQL capabilities including views, joins between collections, stored procedures, and joins between collections and data located in your Azure Data Lake Store. The joins happen in the storage level.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"7\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Advanced Analytics, Data Science, and Data Engineering:<\/span><\/b><span data-contrast=\"auto\"> unlock typical big data workloads using <\/span><a href=\"https:\/\/learn.microsoft.com\/azure\/synapse-analytics\/get-started-analyze-spark\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Apache Spark in Azure Synapse Analytics<\/span><\/a><span data-contrast=\"auto\">.\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Near real time BI:<\/span><\/b><span data-contrast=\"auto\"> Create BI reports, with any BI tool, using <\/span><a href=\"https:\/\/learn.microsoft.com\/azure\/cosmos-db\/analytical-store-introduction\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">analytical store<\/span><\/a><span data-contrast=\"auto\">, <\/span><a href=\"https:\/\/learn.microsoft.com\/azure\/synapse-analytics\/get-started-analyze-sql-on-demand\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Azure Synapse Serverless SQL pools<\/span><\/a><span data-contrast=\"auto\">, and <\/span><a href=\"https:\/\/learn.microsoft.com\/power-bi\/connect-data\/desktop-directquery-about\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Power BI DirectQuery<\/span><\/a><span data-contrast=\"auto\"> mode. Transactional store data will be available within 2 minutes.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Reduce your Azure CosmosDB Costs: <\/span><\/b><span data-contrast=\"auto\">Consumption-based pricing. No impact to RUs provisioned for transactional workloads.<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr style=\"height: 70px;\" aria-rowindex=\"5\">\n<td style=\"width: 18.3316%; height: 70px;\" data-celllook=\"0\"><span data-contrast=\"auto\">Azure Cosmos DB ODBC driver<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/td>\n<td style=\"width: 81.6684%; height: 70px;\" data-celllook=\"0\">\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">You can\u2019t use Power BI<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"6\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">You can\u2019t use Azure Synapse Link<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<h3>Get Started<\/h3>\n<p><a href=\"https:\/\/cosmos.azure.com\/try\/\" target=\"_blank\" rel=\"noopener\">Try Azure Cosmos DB<\/a> free with no sign-up or credit cards.<\/p>\n<p>Power BI Desktop is free, and you can get started now by downloading the latest version <a href=\"https:\/\/powerbi.microsoft.com\/downloads\/\" target=\"_blank\" rel=\"noopener\">here<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<h3 aria-level=\"2\"><span data-contrast=\"none\">Conclusion<\/span><span data-ccp-props=\"{&quot;134245418&quot;:true,&quot;134245529&quot;:true,&quot;201341983&quot;:0,&quot;335559738&quot;:40,&quot;335559739&quot;:0,&quot;335559740&quot;:259}\">\u00a0<\/span><\/h3>\n<p><span data-contrast=\"auto\">Azure Cosmos DB now offers multiple options for BI and Analytics. You can leverage our new V2 connector to improve the performance of your Power BI dashboards, reports, or dataflows by pushing filters and aggregations down in real time with the DirectQuery mode.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Azure Cosmos DB V2 Connector for Power BI, with support for querying the Azure Cosmos DB transactional store in both DirectQuery and Import modes, is now in preview. The new V2 connector also supports Azure Cosmos DB as a data source in Power BI dataflows. It\u2019s available now on Power BI components including Desktop, [&hellip;]<\/p>\n","protected":false},"author":21894,"featured_media":5730,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[14],"tags":[],"class_list":["post-5722","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-core-sql-api"],"acf":[],"blog_post_summary":"<p>The Azure Cosmos DB V2 Connector for Power BI, with support for querying the Azure Cosmos DB transactional store in both DirectQuery and Import modes, is now in preview. The new V2 connector also supports Azure Cosmos DB as a data source in Power BI dataflows. It\u2019s available now on Power BI components including Desktop, [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-json\/wp\/v2\/posts\/5722","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-json\/wp\/v2\/users\/21894"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-json\/wp\/v2\/comments?post=5722"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-json\/wp\/v2\/posts\/5722\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-json\/wp\/v2\/media\/5730"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-json\/wp\/v2\/media?parent=5722"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-json\/wp\/v2\/categories?post=5722"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cosmosdb\/wp-json\/wp\/v2\/tags?post=5722"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}