From 77f4717154bec69f68c5af64c7102951ce5c47c2 Mon Sep 17 00:00:00 2001 From: Sreedhar Pelluru <6722422+spelluru@users.noreply.github.com> Date: Thu, 23 Jul 2026 17:07:24 -0400 Subject: [PATCH 1/6] Freshness pass for Azure Data Explorer articles (#7554) * docs: freshness pass for Azure Data Explorer articles Full freshness review of data-explorer-overview, index landing page, web-query-data, kql-learning-resources, and manage-database-permissions. Updates ms.date and ai-usage, fixes stale/dead links (retired Time Series Insights, moved Azure Monitor/Defender paths, dead Pluralsight links), and applies metadata, accessibility, retrievability, SEO, and writing-style improvements. * docs: apply authoring assistant writing-style suggestions * docs: apply authoring assistant concise-sentence suggestion --- data-explorer/data-explorer-overview.md | 52 ++++++++++---------- data-explorer/index.yml | 10 ++-- data-explorer/kql-learning-resources.md | 16 ++++-- data-explorer/manage-database-permissions.md | 31 ++++++------ data-explorer/web-query-data.md | 52 +++++++++++--------- 5 files changed, 90 insertions(+), 71 deletions(-) diff --git a/data-explorer/data-explorer-overview.md b/data-explorer/data-explorer-overview.md index b898374a92..ad64251418 100644 --- a/data-explorer/data-explorer-overview.md +++ b/data-explorer/data-explorer-overview.md @@ -1,9 +1,10 @@ --- title: What is Azure Data Explorer? -description: Azure Data Explorer is a fast and highly scalable data exploration service for log and telemetry data. +description: Azure Data Explorer is a fast, fully managed, and highly scalable data analytics service for log and telemetry data. ms.reviewer: mblythe ms.topic: overview -ms.date: 06/10/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted adobe-target: true # Customer intent: As a data analyst, I want to understand Azure Data Explorer, so I can decide if it's suitable for my analytics workloads. @@ -13,23 +14,23 @@ adobe-target: true Azure Data Explorer is a fully managed, high-performance, big data analytics platform that makes it easy to analyze high volumes of data in near real time. The Azure Data Explorer toolbox gives you an end-to-end solution for data ingestion, query, visualization, and management. -By analyzing structured, semi-structured, and unstructured data across time series, and by using Machine Learning, Azure Data Explorer makes it simple to extract key insights, spot patterns and trends, and create forecasting models. Azure Data Explorer uses a traditional relational model, organizing data into tables with strongly typed schemas. Tables are stored within databases, and a cluster can manage multiple databases. Azure Data Explorer is scalable, secure, robust, and enterprise-ready, and is useful for log analytics, time series analytics, IoT, and general-purpose exploratory analytics. +By analyzing structured, semi-structured, and unstructured data across time series, and by using machine learning, Azure Data Explorer makes it simple to extract key insights, spot patterns and trends, and create forecasting models. Azure Data Explorer uses a traditional relational model, organizing data into tables with strongly typed schemas. Tables are stored within databases, and a cluster can manage multiple databases. Azure Data Explorer is scalable, secure, robust, and enterprise-ready. It's useful for log analytics, time series analytics, IoT, and general-purpose exploratory analytics. -Azure Data Explorer capabilities are extended by other services built on its query language: [Kusto Query Language (KQL)](/kusto/query/index?view=azure-data-explorer&preserve-view=true). These services include [Azure Monitor logs](/azure/log-analytics/), [Application Insights](/azure/application-insights/), [Time Series Insights](/azure/time-series-insights/), and [Microsoft Defender for Endpoint](/microsoft-365/security/defender-endpoint/microsoft-defender-endpoint). +Other services built on its query language, [Kusto Query Language (KQL)](/kusto/query/index?view=azure-data-explorer&preserve-view=true), extend Azure Data Explorer capabilities. These services include [Azure Monitor Logs](/azure/azure-monitor/logs/log-analytics-overview), [Application Insights](/azure/azure-monitor/app/app-insights-overview), and [Microsoft Defender for Endpoint](/defender-endpoint/microsoft-defender-endpoint). ## When should you use Azure Data Explorer? Use the following questions to help decide if Azure Data Explorer is right for your use case: -* **Interactive analytics**: Is interactive analysis part of the solution? For example, aggregation, correlation, or anomaly detection. -* **Variety, Velocity, Volume**: Is your schema diverse? Do you need to ingest massive amounts of data in near real-time? -* **Data organization**: Do you want to analyze raw data? For example, not fully curated star schema. +* **Interactive analytics**: Is interactive analysis part of the solution? For example, aggregation, correlation, or anomaly detection. +* **Variety, velocity, volume**: Is your schema diverse? Do you need to ingest massive amounts of data in near real time? +* **Data organization**: Do you want to analyze raw data? For example, data that isn't a fully curated star schema. * **Query concurrency**: Will multiple users or processes use Azure Data Explorer? -* **Build vs Buy**: Do you plan on customizing your data platform? +* **Build vs. buy**: Do you plan on customizing your data platform? -Azure Data Explorer is ideal for enabling interactive analytics capabilities over high velocity, diverse raw data. Use the following decision tree to help you decide if Azure Data Explorer is right for you: +Azure Data Explorer is ideal for enabling interactive analytics capabilities over high-velocity, diverse raw data. Use the following decision tree to help you decide if Azure Data Explorer is right for you: -:::image type="content" source="media/data-explorer-overview/decision-tree.png" alt-text="This image is a schematic workflow image of an Azure Data Explorer decision tree."::: +:::image type="content" source="media/data-explorer-overview/decision-tree.png" alt-text="Decision tree diagram that guides you through when to use Azure Data Explorer based on your analytics needs."::: ## What makes Azure Data Explorer unique? @@ -39,54 +40,53 @@ With Azure Data Explorer, you can ingest terabytes of data in minutes via queued ### User-friendly query language -Query Azure Data Explorer with the [Kusto Query Language (KQL)](/kusto/query/index?view=azure-data-explorer&preserve-view=true), an open-source language initially invented by the team. The language is simple to understand and learn, and highly productive. You can use simple operators and advanced analytics. Azure Data Explorer also supports [T-SQL](t-sql.md). +Query Azure Data Explorer by using [Kusto Query Language (KQL)](/kusto/query/index?view=azure-data-explorer&preserve-view=true), an open-source language that the Azure Data Explorer team created. The language is simple to understand and learn, and highly productive. You can use simple operators and advanced analytics. Azure Data Explorer also supports [T-SQL](t-sql.md). ### Advanced analytics -Use Azure Data Explorer for time series analysis with a large set of functions including: adding and subtracting time series, filtering, regression, seasonality detection, geospatial analysis, anomaly detection, scanning, and forecasting. Time series functions are optimized for processing thousands of time series in seconds. Pattern detection is made easy with cluster plugins that can diagnose anomalies and do root cause analysis. You can also extend Azure Data Explorer capabilities by [embedding python code](/kusto/query/python-plugin?view=azure-data-explorer&preserve-view=true) in KQL queries. +Use Azure Data Explorer for time series analysis with a large set of functions, including adding and subtracting time series, filtering, regression, seasonality detection, geospatial analysis, anomaly detection, scanning, and forecasting. Time series functions are optimized to process thousands of time series in seconds. Pattern detection is easy with cluster plugins that can diagnose anomalies and do root-cause analysis. You can also extend Azure Data Explorer capabilities by [embedding Python code](/kusto/query/python-plugin?view=azure-data-explorer&preserve-view=true) in KQL queries. ### Easy-to-use wizard -The [get data experience](ingest-data-overview.md) makes the data ingestion process easy, fast, and intuitive. The [Azure Data Explorer web UI](web-query-data.md) provides an intuitive and guided experience that helps you ramp-up quickly to start ingesting data, creating database tables, and mapping structures. It enables one time or a continuous ingestion from various sources and in various data formats. Table mappings and schema are auto suggested and easy to modify. +The [get data experience](ingest-data-overview.md) makes the data ingestion process easy, fast, and intuitive. The [Azure Data Explorer web UI](web-query-data.md) provides an intuitive and guided experience that helps you quickly start ingesting data, creating database tables, and mapping structures. It enables one-time or continuous ingestion from various sources and in various data formats. Table mappings and schema are automatically suggested and easy to modify. ### Versatile data visualization -Data visualization helps you gain important insights. Azure Data Explorer offers built-in visualization and [dashboarding](azure-data-explorer-dashboards.md) out of the box, with support for various charts and visualizations. It has native integration with [Power BI](power-bi-data-connector.md?tabs=connector), native connectors for [Grafana](grafana.md), [Kibana](k2bridge.md) and Databricks, ODBC support for [Tableau](tableau.md), [Sisense](sisense.md), Qlik, and more. +Data visualization helps you gain important insights. Azure Data Explorer offers built-in visualization and [dashboarding](azure-data-explorer-dashboards.md) out of the box, with support for various charts and visualizations. It has native integration with [Power BI](power-bi-data-connector.md?tabs=connector), native connectors for [Grafana](grafana.md), [Kibana](k2bridge.md), and Databricks, and ODBC support for [Tableau](tableau.md), [Sisense](sisense.md), Qlik, and more. ### Automatic ingest, process, and export -Azure Data Explorer supports server-side stored functions, continuous ingest, and continuous export to Azure Data Lake store. It also supports ingestion time-mapping transformations on the server side, update policies, and precomputed scheduled aggregates with materialized views. +Azure Data Explorer supports server-side stored functions, continuous ingest, and continuous export to Azure Data Lake Storage. It also supports ingestion-time mapping transformations on the server side, update policies, and precomputed scheduled aggregates with materialized views. ## Azure Data Explorer flow The following diagram shows the different aspects of working with Azure Data Explorer. -![Azure Data Explorer flow.](media/data-explorer-overview/workflow.png) +:::image type="content" source="media/data-explorer-overview/workflow.png" alt-text="Diagram that shows the Azure Data Explorer workflow, from creating a database through ingesting, querying, and visualizing data."::: -Generally speaking, when you interact with Azure Data Explorer, you're going to go through the following workflow: +When you interact with Azure Data Explorer, you typically follow this workflow: > [!NOTE] > You can access your Azure Data Explorer resources either in the [Azure Data Explorer web UI](web-query-data.md) or by using [SDKs](/kusto/api/index?view=azure-data-explorer&preserve-view=true). -1. **Create database:** Create a *cluster* and then create one or more *databases* in that cluster. Each Azure Data Explorer cluster can hold up to 10,000 databases and each database up to 10,000 tables. The data in each table is stored in data shards also called "extents". All data is automatically indexed and partitioned based on the ingestion time. This means you can store a large amount of varied data and because of the way it's stored, you get fast access to querying it. [Quickstart: Create an Azure Data Explorer cluster and database](create-cluster-and-database.md) +1. **Create a database:** Create a *cluster*, and then create one or more *databases* in that cluster. Each Azure Data Explorer cluster can hold up to 10,000 databases, and each database can hold up to 10,000 tables. The data in each table is stored in data shards, also called *extents*. All data is automatically indexed and partitioned based on the ingestion time. This storage architecture means you can store a large amount of varied data, and you get fast access when querying it. [Quickstart: Create an Azure Data Explorer cluster and database](create-cluster-and-database.md) 1. **Ingest data:** Load data into database tables so that you can run queries against it. Azure Data Explorer supports several [ingestion methods](ingest-data-overview.md), each with its own target scenarios. These methods include ingestion tools, connectors and plugins to diverse services, managed pipelines, programmatic ingestion using SDKs, and direct access to ingestion. Get started with the [get data experience](ingest-data-overview.md). -1. **Query database:** Azure Data Explorer uses the [Kusto Query Language](/kusto/query/index?view=azure-data-explorer&preserve-view=true), which is an expressive, intuitive, and highly productive query language. It offers a smooth transition from simple one-liners to complex data processing scripts, and supports querying structured, semi-structured, and unstructured (text search) data. There's a wide variety of query language operators and functions ([aggregation](/kusto/query/aggregation-functions?view=azure-data-explorer&preserve-view=true), filtering, [time series functions](/kusto/query/time-series-analysis?view=azure-data-explorer&preserve-view=true), [geospatial functions](/kusto/query/geospatial-grid-systems?view=azure-data-explorer&preserve-view=true), [joins](/kusto/query/join-operator?view=azure-data-explorer&preserve-view=true), [unions](/kusto/query/union-operator?view=azure-data-explorer&preserve-view=true), and more) in the language. KQL supports [cross-cluster and cross-database queries](/kusto/query/cross-cluster-or-database-queries?view=azure-data-explorer&preserve-view=true), and is feature rich from a parsing (json, XML, and more) perspective. The language also natively supports advanced analytics. +1. **Query a database:** Azure Data Explorer uses [Kusto Query Language](/kusto/query/index?view=azure-data-explorer&preserve-view=true), which is an expressive, intuitive, and highly productive query language. It offers a smooth transition from simple one-liners to complex data processing scripts, and it supports querying structured, semi-structured, and unstructured (text search) data. The language has a wide variety of query operators and functions, including [aggregation](/kusto/query/aggregation-functions?view=azure-data-explorer&preserve-view=true), filtering, [time series functions](/kusto/query/time-series-analysis?view=azure-data-explorer&preserve-view=true), [geospatial functions](/kusto/query/geospatial-grid-systems?view=azure-data-explorer&preserve-view=true), [joins](/kusto/query/join-operator?view=azure-data-explorer&preserve-view=true), and [unions](/kusto/query/union-operator?view=azure-data-explorer&preserve-view=true). KQL supports [cross-cluster and cross-database queries](/kusto/query/cross-cluster-or-database-queries?view=azure-data-explorer&preserve-view=true), and it's feature rich for parsing formats such as JSON and XML. The language also natively supports advanced analytics. - Use the web application to run, review, and share queries and results. You can also send queries programmatically (using an SDK) or to a REST API endpoint. If you're familiar with SQL, get started with the [SQL to Kusto cheat sheet](/kusto/query/sql-cheat-sheet?view=azure-data-explorer&preserve-view=true), and [Quickstart: Query data in Azure Data Explorer web UI](web-query-data.md). + Use the web application to run, review, and share queries and results. You can also send queries programmatically (using an SDK) or to a REST API endpoint. If you're familiar with SQL, get started with the [SQL to Kusto cheat sheet](/kusto/query/sql-cheat-sheet?view=azure-data-explorer&preserve-view=true) and [Quickstart: Query data in the Azure Data Explorer web UI](web-query-data.md). -1. **Visualize results:** Use different visual displays of your data in the native Azure Data Explorer [Dashboards](azure-data-explorer-dashboards.md). You can also display your results using connectors to some of the [leading visualization services](integrate-visualize-overview.md), such as [Power BI](power-bi-data-connector.md?tabs=connector) and [Grafana](grafana.md). Azure Data Explorer also has [ODBC](connect-odbc.md) and JDBC connector support to tools such as [Tableau](tableau.md) and [Sisense](sisense.md). +1. **Visualize results:** Use different visual displays of your data in the native Azure Data Explorer [dashboards](azure-data-explorer-dashboards.md). You can also display your results by using connectors to some of the [leading visualization services](integrate-visualize-overview.md), such as [Power BI](power-bi-data-connector.md?tabs=connector) and [Grafana](grafana.md). Azure Data Explorer also has [ODBC](connect-odbc.md) and JDBC connector support for tools such as [Tableau](tableau.md) and [Sisense](sisense.md). -## How to provide feedback +## Provide feedback -We would be thrilled to hear your feedback about Azure Data Explorer and the Kusto Query Language at: +To share feedback about Azure Data Explorer and Kusto Query Language, use the following resources: -* Ask questions +* Ask questions: * [Stack Overflow](https://stackoverflow.com/questions/tagged/azure-data-explorer) - * [Microsoft Q&A](/answers/topics/azure-data-explorer.html) * [Microsoft Tech Community](https://techcommunity.microsoft.com/t5/Azure-Data-Explorer/bd-p/Kusto) -* [Make product suggestions in User Voice](https://aka.ms/AzureDataExplorer.UserVoice) +* [Submit product suggestions on the Azure feedback forum](https://feedback.azure.com/d365community/forum/a952add5-eb24-ec11-b6e6-000d3a4f0da0) ## Related content diff --git a/data-explorer/index.yml b/data-explorer/index.yml index 4f64370db4..50c74b0ec3 100644 --- a/data-explorer/index.yml +++ b/data-explorer/index.yml @@ -10,7 +10,7 @@ metadata: ms.topic: landing-page author: spelluru ms.author: spelluru - ms.date: 06/12/2025 + ms.date: 07/23/2026 # linkListType: architecture | concept | deploy | download | get-started | how-to-guide | learn | overview | quickstart | reference | sample | tutorial | video | whats-new @@ -42,8 +42,10 @@ landingContent: linkLists: - linkListType: learn links: - - text: "Free Pluralsight training: Azure Data Explorer" - url: https://www.pluralsight.com/browse + - text: Data analysis in Azure Data Explorer with Kusto Query Language + url: /training/paths/data-analysis-data-explorer-kusto-query-language/ + - text: Kusto Query Language learning resources + url: kql-learning-resources.md # Card - title: Create cluster and database linkLists: @@ -102,7 +104,7 @@ landingContent: - linkListType: tutorial links: - text: Write KQL queries - url: /azure/data-explorer/kusto/query/tutorials/learn-common-operators + url: /kusto/query/tutorials/learn-common-operators - linkListType: how-to-guide links: - text: Query data in Azure Data Lake diff --git a/data-explorer/kql-learning-resources.md b/data-explorer/kql-learning-resources.md index 5f6e3d7cea..cabaee26a8 100644 --- a/data-explorer/kql-learning-resources.md +++ b/data-explorer/kql-learning-resources.md @@ -3,29 +3,30 @@ title: Kusto Query Language learning resources description: This article provides a list of different types of learning resources for ramping up on KQL. ms.reviewer: alexans ms.topic: concept-article -ms.date: 06/10/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted --- # Kusto Query Language learning resources -Kusto Query Language (KQL) is a powerful tool to explore your data and discover patterns, identify anomalies and outliers, create statistical modeling, and more. Are you new to KQL or want to improve your KQL skills? Take a look at the following learning resources. +Kusto Query Language (KQL) is a powerful tool to explore your data and discover patterns, identify anomalies and outliers, create statistical models, and more. Are you new to KQL or do you want to improve your KQL skills? Take a look at the following learning resources. + For more information on KQL, see [KQL overview](/kusto/query/index?view=azure-data-explorer&preserve-view=true). ## General training -This training isn't product-specific, and provides basic KQL learning: +This training isn't product-specific and provides basic KQL learning: * [Pluralsight: KQL from scratch](https://www.pluralsight.com/courses/kusto-query-language-kql-from-scratch) * [Kusto Detective Agency](https://detective.kusto.io/) * [Tutorial: Learn common operators](/kusto/query/tutorials/learn-common-operators?view=azure-data-explorer&preserve-view=true) * [Tutorial: Use aggregation functions](/kusto/query/tutorials/use-aggregation-functions?view=azure-data-explorer&preserve-view=true) * [Tutorial: Join data from multiple tables](/kusto/query/tutorials/join-data-from-multiple-tables?view=azure-data-explorer&preserve-view=true) -* [Cloud Academy: Introduction to Kusto Query Language](https://cloudacademy.com/lab/introduction-to-kusto-query-language/) +* [QA (formerly Cloud Academy): Introduction to Kusto Query Language](https://platform.qa.com/lab/introduction-to-kusto-query-language/) ## Azure Data Explorer * [Tutorial: Create geospatial visualizations](/kusto/query/tutorials/create-geospatial-visualizations?view=azure-data-explorer&preserve-view=true) * [Data analysis in Azure Data Explorer with Kusto Query Language](/training/paths/data-analysis-data-explorer-kusto-query-language/) -* [Free Pluralsight training: Azure Data Explorer](https://www.pluralsight.com/browse) ## Real-Time Intelligence in Microsoft Fabric @@ -44,3 +45,8 @@ This training isn't product-specific, and provides basic KQL learning: * [SC-200: Create queries for Microsoft Sentinel using Kusto Query Language (KQL)](/training/paths/sc-200-utilize-kql-for-azure-sentinel/) * [Infosec Train: Kusto Query Language (KQL) eLearning Training Program Online](https://www.infosectrain.com/self-paced-learning/kusto-query-language-training/) +## Related content + +* [KQL overview](/kusto/query/index?view=azure-data-explorer&preserve-view=true) +* [Tutorial: Learn common operators](/kusto/query/tutorials/learn-common-operators?view=azure-data-explorer&preserve-view=true) +* [Query data in the Azure Data Explorer web UI](web-query-data.md) diff --git a/data-explorer/manage-database-permissions.md b/data-explorer/manage-database-permissions.md index d872256106..5d1f8ea359 100644 --- a/data-explorer/manage-database-permissions.md +++ b/data-explorer/manage-database-permissions.md @@ -1,20 +1,23 @@ --- title: Manage database permissions in Azure Data Explorer -description: This article describes role-based access controls for databases and tables in Azure Data Explorer. +description: Learn how to manage role-based access control for Azure Data Explorer databases and tables by using the Azure portal. ms.reviewer: mblythe ms.topic: how-to -ms.date: 06/06/2025 +ms.date: 07/23/2026 ms.custom: sfi-image-nochange +ai-usage: ai-assisted --- -# Manage Azure Data Explorer database permissions in the Azure portal +# Manage database permissions in Azure Data Explorer by using the Azure portal -Azure Data Explorer allows you to control access to databases and tables using a *role-based access control* model. Under this model, *principals* (users, groups, and apps) are mapped to *roles*. Principals can access resources according to the roles they're assigned. For a list of available roles, see [role-based access control](/kusto/access-control/role-based-access-control?view=azure-data-explorer&preserve-view=true). +Azure Data Explorer uses a *role-based access control* model to control access to databases and tables. In this model, *principals* (users, groups, and apps) map to *roles*, and each principal can access resources according to its assigned roles. For a list of available roles, see [role-based access control](/kusto/access-control/role-based-access-control?view=azure-data-explorer&preserve-view=true). -This article describes the available roles and how to assign principals to those roles using the Azure portal. For information on how to set database permissions with management commands, see [Manage database security roles](/kusto/management/manage-database-security-roles?view=azure-data-explorer&preserve-view=true). +This article describes the available roles and how to assign principals to those roles by using the Azure portal. To set database permissions with management commands instead, see [Manage database security roles](/kusto/management/manage-database-security-roles?view=azure-data-explorer&preserve-view=true). -> [!NOTE] -> To create and delete a database, you need at least **Contributor** Azure Resource Manager (ARM) permissions on the cluster. To assign ARM permissions, see [Assign Azure roles using the Azure portal](/azure/role-based-access-control/role-assignments-portal). +## Prerequisites + +* An Azure Data Explorer cluster and database. [Create a cluster and database](create-cluster-and-database.md). +* At least **Contributor** Azure Resource Manager (ARM) permissions on the cluster to create or delete a database. To assign ARM permissions, see [Assign Azure roles using the Azure portal](/azure/role-based-access-control/role-assignments-portal). ## Add database principals @@ -22,15 +25,15 @@ This article describes the available roles and how to assign principals to those 1. Go to your Azure Data Explorer cluster. -1. In the **Overview** section, select the database where you want to manage permissions. For roles that apply to all databases, skip this phase and go directly to the next step. +1. In the **Overview** section, select the database where you want to manage permissions. For roles that apply to all databases, skip this step and go directly to the next step. - ![Select database.](media/manage-database-permissions/select-database.png) + ![Screenshot of the cluster Overview section with a database selected.](media/manage-database-permissions/select-database.png) -1. Select **Permissions** then **Add**. +1. Select **Permissions**, and then select **Add**. - ![Database permissions.](media/manage-database-permissions/database-permissions.png) + ![Screenshot of the database Permissions page with the Add button.](media/manage-database-permissions/database-permissions.png) -1. Look up the principal, select it, then **Select**. +1. Search for the principal, select it, and then select **Select**. :::image type="content" source="media/manage-database-permissions/new-principals.png" alt-text="Screenshot of the Azure portal New Principals page. A principal name and image are selected and highlighted. The Select button is also highlighted." border="false"::: @@ -42,7 +45,7 @@ This article describes the available roles and how to assign principals to those 1. In the **Overview** section, select the database where you want to manage permissions. For roles that apply to all databases, go directly to the next step. - ![Screenshot of select database.](media/manage-database-permissions/select-database.png) + ![Screenshot of the cluster Overview section with a database selected.](media/manage-database-permissions/select-database.png) 1. Select **Permissions**, and then select the principal to remove. @@ -51,6 +54,6 @@ This article describes the available roles and how to assign principals to those ## Related content * Learn about [Azure Data Explorer role-based access control](/kusto/access-control/role-based-access-control?view=azure-data-explorer&preserve-view=true). -* To set cluster level permissions, see [Manage cluster permissions](manage-cluster-permissions.md). +* To set cluster-level permissions, see [Manage cluster permissions](manage-cluster-permissions.md). * To set permissions for a database with management commands, see [Manage database security roles](/kusto/management/manage-database-security-roles?view=azure-data-explorer&preserve-view=true). * To grant a principal view access to a subset of tables, see [Manage table view access](/kusto/management/manage-table-view-access?view=azure-data-explorer&preserve-view=true). diff --git a/data-explorer/web-query-data.md b/data-explorer/web-query-data.md index 9c258944fd..ffd2c5f8be 100644 --- a/data-explorer/web-query-data.md +++ b/data-explorer/web-query-data.md @@ -1,19 +1,28 @@ --- -title: 'Quickstart: Learn How to Query Sample Data in the Azure Data Explorer Web UI' +title: 'Quickstart: Query sample data in the Azure Data Explorer web UI' description: In this quickstart, you learn how to query and share sample data in the Azure Data Explorer web UI. ms.reviewer: olgolden ms.topic: quickstart -ms.date: 06/03/2025 +ms.date: 07/23/2026 ms.custom: mode-portal +ai-usage: ai-assisted -#Customer intent: As a user of Azure Data Explorer, I want to query data in the Web UI and share data. This will allow me to understand my data and share analysis with colleagues. +#Customer intent: As a user of Azure Data Explorer, I want to query data in the web UI and share it. This allows me to understand my data and share analysis with colleagues. --- -# Quickstart: learn how to Query sample data +# Quickstart: Query sample data in the Azure Data Explorer web UI + +In this quickstart, you learn how to query data in the stand-alone Azure Data Explorer web UI. Azure Data Explorer provides a web experience that connects to your Azure Data Explorer clusters so you can write, run, and share [Kusto Query Language (KQL)](/kusto/query/index?view=azure-data-explorer&preserve-view=true) commands and queries. You can access the web experience in the Azure portal or as a stand-alone web application, the [Azure Data Explorer web UI](https://dataexplorer.azure.com). -In this Quickstart, you'll learn how to query data in the stand-alone Azure Data Explorer web UI. -Azure Data Explorer provides a web experience that enables you to connect to your Azure Data Explorer clusters and write, run, and share [Kusto Query Language (KQL)](/kusto/query/index?view=azure-data-explorer&preserve-view=true) commands and queries. The web experience is available in the Azure portal and as a stand-alone web application, the [Azure Data Explorer web UI](https://dataexplorer.azure.com). In the Azure Data Explorer web UI, the query editor provides suggestions and warnings as you write your queries. To customize which suggestions and warnings you receive, see [Set query recommendations](web-customize-settings.md#set-query-recommendations). +In this quickstart, you: + +> [!div class="checklist"] +> * Add a cluster connection. +> * Run KQL queries against sample data. +> * Format a query and render a chart. +> * Provide feedback and clean up resources. + ## Prerequisites Before you begin, make sure you have the following items: @@ -24,20 +33,20 @@ Before you begin, make sure you have the following items: ## Add clusters -When you first open the web UI, in the **Query** page, you should see a connection to the **help** cluster. The examples in this quickstart use the `StormEvents` table in the `Samples` database of the **help** cluster. +When you first open the web UI, on the **Query** page, you see a connection to the **help** cluster. The examples in this quickstart use the `StormEvents` table in the `Samples` database of the **help** cluster. -If you want to run queries on a different cluster, you must add a connection to that cluster. To add a new cluster connection, do the following: +To run queries on a different cluster, add a connection to that cluster. To add a new cluster connection, follow these steps: 1. On the left menu, select **Query**. 1. In the upper left pane, select **Add connection**. 1. In the **Add connection** dialog box, enter the cluster **Connection URI** and **Display name**. 1. Select **Add** to add the connection. -If you don't see the **help** cluster, add it using the previous steps and use "help" as the **Connection URI**. +If you don't see the **help** cluster, add it by using the preceding steps and enter `help` as the **Connection URI**. ## Run a query -To run a query, you must select the database on which you want to run the query in order to set the query context. +To run a query, select the database where you want to run the query to set the query context. 1. In the **Cluster connection** pane, under the **help** cluster, select the **Samples** database. :::image type="content" source="media/web-query-data/samples-db-context.png" alt-text="Screenshot of the Samples database selected."::: @@ -54,7 +63,7 @@ To run a query, you must select the database on which you want to run the query This query returns the 10 newest records in the **StormEvents** table. The result should look like the following table. - :::image type="content" source="media/web-query-data/result-set-take-10.png" alt-text="Screenshot of a table that lists data for 10 storm events in the Azure Data Explorer web U I." border="false"::: + :::image type="content" source="media/web-query-data/result-set-take-10.png" alt-text="Screenshot of a table that lists data for 10 storm events in the Azure Data Explorer web UI." border="false"::: 1. Copy and paste the following query into the query window, below the first query. Notice how it isn't formatted on separate lines like the first query. @@ -66,18 +75,18 @@ To run a query, you must select the database on which you want to run the query | project StartTime, EndTime, State, EventType, DamageProperty, EpisodeNarrative | take 10 ``` -1. Select the new query. Press *Shift+Alt+F* to format the query, so it looks like the following query. +1. Select the new query. Press **Shift+Alt+F** to format the query so it looks like the following query. :::image type="content" source="media/web-query-data/formatted-query.png" alt-text="Screenshot of a query with the correct formatting."::: -1. Select **Run** or press *Shift+Enter* to run a query. This query returns the same records as the first one, but includes only the columns specified in the `project` statement. The result should look like the following table. +1. Select **Run** or press **Shift+Enter** to run the query. This query returns the same records as the first one, but includes only the columns specified in the `project` statement. The result should look like the following table. - :::image type="content" source="media/web-query-data/result-set-project.png" alt-text="Screenshot of a table that lists the start time, end time, state, event type, damage property, and episode narrative for 10 storm events in the Azure Data Explorer web U I." border="false"::: + :::image type="content" source="media/web-query-data/result-set-project.png" alt-text="Screenshot of a table that lists the start time, end time, state, event type, damage property, and episode narrative for 10 storm events in the Azure Data Explorer web UI." border="false"::: > [!TIP] - > Select **Recall** at the top of the query window to show the result set from the first query without having to rerun the query. Often during analysis, you run multiple queries, and **Recall** allows you to retrieve the results of previous queries. + > Select **Recall** at the top of the query window to show the result set from the first query without having to rerun the query. Often during analysis, you run multiple queries, and **Recall** lets you retrieve the results of previous queries. -1. Let's run one more query to see a different type of output. +1. Run one more query to see a different type of output. > [!div class="nextstepaction"] > [Run the query](https://dataexplorer.azure.com/clusters/help/databases/Samples?query=H4sIAAAAAAAAA1WMsQ7CQAxDd74iYyt1KBtLGZDY2PoBKFyj9hBJUJprBeLjuYMFFkv2s927Gh8XEp83L5gTM1p8ElCJzkGTePfRqm6A4wAd4DJWBxqjnNBruDygd3QqazUvPteyWyeyvx/Yw3bXthndTa8U/DtsfjsZGslABkFviSVMaP4GmKtNLqQAAAA=) @@ -96,22 +105,21 @@ To run a query, you must select the database on which you want to run the query :::image type="content" source="media/web-query-data/column-chart.png" alt-text="Screenshot of a column chart as output from a query."::: > [!NOTE] - > Blank lines in the query expression can affect which part of the query is executed. + > Blank lines in the query expression can affect which part of the query runs. > - > * If no text selected, it's assumed that the query or command is separated by empty lines. - > * If text is selected, the selected text is run. + > * If you don't select any text, the query or command is assumed to be separated by empty lines. + > * If you select text, the selected text runs. ## Provide feedback -Do the following to provide feedback: +To provide feedback, follow these steps: 1. In the upper right of the application, select the feedback icon :::image type="icon" source="media/web-query-data/icon-feedback.png" border="false":::. 1. Enter your feedback, then select **Submit**. ## Clean up resources -You didn't create any resources in this quickstart, but if you'd like to remove one or both clusters from the application, right-click the cluster and select **Remove connection**. -Another option is to select **Clear local state** from the **Settings** > **General** tab. This action removes all cluster connections and closes all open query tabs. +You didn't create any resources in this quickstart. To remove one or both clusters from the application, right-click the cluster and select **Remove connection**. Another option is to select **Clear local state** on the **Settings** > **General** tab. This action removes all cluster connections and closes all open query tabs. ## Related content From 8ae7c1796ba982911bc745dadb3d0f6bf4fb1a2c Mon Sep 17 00:00:00 2001 From: spelluru <6722422+spelluru@users.noreply.github.com> Date: Thu, 23 Jul 2026 17:23:46 -0400 Subject: [PATCH 2/6] docs: freshness pass for Azure Data Explorer articles (batch 2) Full freshness review of power-bi-data-connector, kusto-emulator-install, how-it-works, dashboard-parameters, and start-for-free-web-ui. Updates ms.date and ai-usage, fixes a broken title/description, removes first-person and future tense, replaces Once/may/in order to, and corrects terminology. Preserves includes, code blocks, preserve-view params, and the sfi-image-nochange flag. --- data-explorer/dashboard-parameters.md | 11 ++++++----- data-explorer/how-it-works.md | 9 +++++---- data-explorer/kusto-emulator-install.md | 15 ++++++++------- data-explorer/power-bi-data-connector.md | 11 ++++++----- data-explorer/start-for-free-web-ui.md | 11 ++++++----- 5 files changed, 31 insertions(+), 26 deletions(-) diff --git a/data-explorer/dashboard-parameters.md b/data-explorer/dashboard-parameters.md index fafa6cbace..84e591bc64 100644 --- a/data-explorer/dashboard-parameters.md +++ b/data-explorer/dashboard-parameters.md @@ -3,14 +3,15 @@ title: Use parameters in Azure Data Explorer dashboards description: Learn how to use parameters as a building block for dashboard filters. ms.reviewer: gabil ms.topic: how-to -ms.date: 06/05/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted --- # Use parameters in Azure Data Explorer dashboards Parameters are used as building blocks for filters in Azure Data Explorer dashboards. They're managed in the dashboard scope, and can be added to queries to filter the data presented by the underlying visual. A query can use one or more parameters. -This document describes the creation and use of parameters and linked filters in dashboards. Parameters can be used to filter dashboard visuals either by selecting [parameter values in the filter bar](#use-parameters-in-your-query) or by using [cross-filters](#cross-filters-parameters). +This article describes the creation and use of parameters and linked filters in dashboards. Parameters can be used to filter dashboard visuals either by selecting [parameter values in the filter bar](#use-parameters-in-your-query) or by using [cross-filters](#cross-filters-parameters). > [!NOTE] > Parameter management is available in **Editing** mode to dashboard editors. @@ -77,10 +78,10 @@ The following indicators can be viewed in the parameter card: ## Use parameters in your query -A parameter must be used in the query to make the filter applicable for that query visual. Once defined, you can see the parameters in the **Query** page > filter top bar and in the query intellisense. +A parameter must be used in the query to make the filter applicable for that query visual. After you define a parameter, you can see it in the **Query** page filter top bar and in the query IntelliSense. > [!NOTE] -> If the parameter isn't used in the query, the filter remains inactive. Once the parameter is added to the query, the filter becomes active. +> If the parameter isn't used in the query, the filter remains inactive. After you add the parameter to the query, the filter becomes active. ## Parameter types @@ -107,7 +108,7 @@ StormEvents | top 5 by TotalEvents ``` -Once saved, the time range filter shows up on the dashboard. Now it can be used to filter the data on the card. You can filter your dashboard by selecting from the dropdown: **Time range** (last x minutes/hours/days) or a **Custom time range**. +After you save, the time range filter shows up on the dashboard. Now it can be used to filter the data on the card. You can filter your dashboard by selecting from the dropdown: **Time range** (last x minutes/hours/days) or a **Custom time range**. :::image type="content" source="media/dashboard-parameters/time-range-parameter.png" alt-text="Screenshot showing how to filter using custom time range."::: diff --git a/data-explorer/how-it-works.md b/data-explorer/how-it-works.md index a24d6dfd75..6116ed3632 100644 --- a/data-explorer/how-it-works.md +++ b/data-explorer/how-it-works.md @@ -3,7 +3,8 @@ title: How Azure Data Explorer works description: 'Learn more about how Azure Data Explorer works.' ms.reviewer: avnera ms.topic: how-to -ms.date: 06/10/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted --- # How Azure Data Explorer works @@ -11,7 +12,7 @@ Azure Data Explorer provides unparalleled performance for ingesting and querying ## Storage vs. compute -Azure Data Explorer separates storage and compute resources. Persistent data resides in Azure Blob Storage, while compute resources may store temporary data or act as a cache for persistent storage. +Azure Data Explorer separates storage and compute resources. Persistent data resides in Azure Blob Storage, while compute resources might store temporary data or act as a cache for persistent storage. This separation provides the following advantages: @@ -32,7 +33,7 @@ For more information on data storage, see [Extents overview](/kusto/management/e ## Data cache -Azure Data Explorer has a multi-hierarchy data cache system to ensure that the most relevant data is cached as closely as possible to the CPU. The cache system depends on the immutability of extents, and works entirely with [compressed data](#column-compression). In order to improve query performance, data remains compressed even in RAM and is only decompressed when required for a query. +Azure Data Explorer has a multi-hierarchy data cache system to ensure that the most relevant data is cached as closely as possible to the CPU. The cache system depends on the immutability of extents, and works entirely with [compressed data](#column-compression). To improve query performance, data remains compressed even in RAM and is only decompressed when required for a query. For more information on caching, see [Cache policy](/kusto/management/cache-policy?view=azure-data-explorer&preserve-view=true). @@ -40,7 +41,7 @@ For more information on caching, see [Cache policy](/kusto/management/cache-poli Azure Data Explorer is designed to efficiently index free-text ([string](/kusto/query/scalar-data-types/string?view=azure-data-explorer&preserve-view=true)) and JSON-like ([dynamic](/kusto/query/scalar-data-types/dynamic?view=azure-data-explorer&preserve-view=true)) columns as data is ingested. The indexes maintain a level of granularity that enables evaluation of parts of the query based on the index without scanning the data. -Continuous background optimization of extents through merging improves compression and indexing, ensuring efficient storage and low query latency. Once extents reach a certain size, only the indexes are merged to enhance query performance without compromising efficiency. +Continuous background optimization of extents through merging improves compression and indexing, ensuring efficient storage and low query latency. After extents reach a certain size, only the indexes are merged to enhance query performance without compromising efficiency. For more information on extent and index merging, see [Merge policy](/kusto/management/merge-policy?view=azure-data-explorer&preserve-view=true). diff --git a/data-explorer/kusto-emulator-install.md b/data-explorer/kusto-emulator-install.md index 8c0539fdef..9e5c7b1bbf 100644 --- a/data-explorer/kusto-emulator-install.md +++ b/data-explorer/kusto-emulator-install.md @@ -3,7 +3,8 @@ title: Install the Azure Data Explorer Kusto emulator description: In this article, you learn how to install the Azure Data Explorer Kusto emulator and run your first query. ms.reviewer: vplauzon ms.topic: how-to -ms.date: 06/30/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted ms.custom: sfi-image-nochange --- @@ -39,7 +40,7 @@ This article focuses on how to install the Linux Docker container on a Windows c > [!IMPORTANT] > Linux distros only support Linux container images. -> ARM processors are not supported. +> ARM processors aren't supported. ## Install the Kusto emulator @@ -52,7 +53,7 @@ The following steps are for using a shell to start the emulator using the [Kusto > [!NOTE] > - > - The first time this command is run, Docker pulls the container image which is several GBs in size and might take several minutes to download. Once downloaded, the image is cached and available for subsequent runs without having to download it again. + > - The first time you run this command, Docker pulls the container image, which is several GBs in size and might take several minutes to download. After it downloads, the image is cached and available for subsequent runs without having to download it again. 1. To start the Linux container, make sure you use the `latest` or `stable` tag: @@ -74,7 +75,7 @@ The following steps are for using a shell to start the emulator using the [Kusto a8b51bce21ad mcr.microsoft.com/azuredataexplorer/kustainer-linux:latest "powershell -Command¦" 11 minutes ago Up 10 minutes 0.0.0.0:8080->8080/tcp contoso ``` -1. Run the following command to verify that Kusto emulator is running. This command is for PowerShell, you could do something similar using `curl` in a Linux environment. The command runs the `.show cluster` query against the management API and it should return a *StatusCode* with value *200*. +1. Run the following command to verify that the Kusto emulator is running. This command is for PowerShell; you can do something similar by using `curl` in a Linux environment. The command runs the `.show cluster` query against the management API and should return a *StatusCode* with value *200*. ```powershell Invoke-WebRequest -Method post -ContentType 'application/json' -Body '{"csl":".show cluster"}' http://localhost:8080/v1/rest/mgmt @@ -114,7 +115,7 @@ You can use any of the following options when running the emulator: docker run -v d:\host\local:/kustodata -e ACCEPT_EULA=Y -m 4G -d -p 8080:8080 -t mcr.microsoft.com/azuredataexplorer/kustainer-linux:latest ``` -- Run on a different port: The Kusto emulator exposes access to the Kusto Query Engine on port 8080; hence in other examples you mapped the host port 8080 to the emulator port 8080. You can use this option to map a different host to the engine. +- Run on a different port: The Kusto emulator exposes access to the Kusto Query Engine on port 8080. In other examples, you mapped the host port 8080 to the emulator port 8080. You can use this option to map a different host to the engine. For example, to map port 9000 on the host to the engine, use the following command on Windows Server: @@ -150,9 +151,9 @@ In the following sections, you use Kusto.Explorer to create a database, ingest d To store data and run queries, create a database or attach the emulator to an existing database. -A database can be persisted in a container folder or on a [mounted folder](#run-emulator-options). The former's lifetime is bound to the container, so restarting the container loses any changes. Also, the container virtual storage is less efficient than native one. Mounted folder enables you to keep the data between container runs. +A database can be persisted in a container folder or on a [mounted folder](#run-emulator-options). A container folder's lifetime is bound to the container, so restarting the container loses any changes. Also, the container's virtual storage is less efficient than native storage. A mounted folder enables you to keep the data between container runs. -In this example, we keep the data on the container. +In this example, you keep the data in the container. In the [Kusto.Explorer Query mode](/kusto/tools/kusto-explorer-using?view=azure-data-explorer&preserve-view=true#query-mode), run the following command to create a persistent database: diff --git a/data-explorer/power-bi-data-connector.md b/data-explorer/power-bi-data-connector.md index 81815511f6..fe8399638b 100644 --- a/data-explorer/power-bi-data-connector.md +++ b/data-explorer/power-bi-data-connector.md @@ -3,14 +3,15 @@ title: Use data from Azure Data Explorer in Power BI description: Learn how to use Azure Data Explorer data in Power BI. ms.reviewer: danyhoter ms.topic: how-to -ms.date: 06/05/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted #Customer intent: As a data analyst, I want to understand connection options in Power BI so I can choose the option most appropriate to my scenario. --- # Use Azure Data Explorer data in Power BI -In this article, you'll learn about the different ways in which you can connect Azure Data Explorer as a data source to Power BI. Once connected, you can proceed to build Power BI reports. +In this article, you learn about the different ways to connect Azure Data Explorer as a data source to Power BI. After you connect, you can build Power BI reports. ## Prerequisites @@ -40,7 +41,7 @@ You can connect Azure Data Explorer as a data source to Power BI in the followin * Starting in Azure Data Explorer web UI and then pasting the data in Power BI Desktop. * Starting directly in Power BI Desktop and then adding the Azure Data Explorer connector. -In the following steps, we'll be using the StormEvents table from our [help cluster](https://help.kusto.windows.net/) to demonstrate how to use Azure Data explorer data in Power BI. +The following steps use the StormEvents table from the [help cluster](https://help.kusto.windows.net/) to demonstrate how to use Azure Data Explorer data in Power BI. ## [Web UI](#tab/web-ui/) @@ -53,7 +54,7 @@ In the following steps, we'll be using the StormEvents table from our [help clus | take 1000 ``` -1. From the **Export** menu, select **Query to Power BI**. +1. From the **Export** menu, select **Query to Power BI**. :::image type="content" source="media/power-bi-data-connector/query-to-power-bi.png" alt-text="Screenshot of Azure Data Explorer web UI, showing the open Share menu with the Query to Power BI option highlighted."::: @@ -83,7 +84,7 @@ In the following steps, we'll be using the StormEvents table from our [help clus 1. Search for *Azure Data Explorer*, select **Azure Data Explorer (Kusto)**, and then select **Connect**. - :::image type="content" source="media/power-bi-data-connector/connect-data.png" alt-text="Screenshot of the Get Data window, showing Azure Data Explorer in the search bar with the connect option highlighted."::: + :::image type="content" source="media/power-bi-data-connector/connect-data.png" alt-text="Screenshot of the Get Data window, showing Azure Data Explorer in the search bar with the connect option highlighted."::: 1. In the window that appears, fill out the form with the following information. diff --git a/data-explorer/start-for-free-web-ui.md b/data-explorer/start-for-free-web-ui.md index afa4b0ea51..caa108a80f 100644 --- a/data-explorer/start-for-free-web-ui.md +++ b/data-explorer/start-for-free-web-ui.md @@ -1,16 +1,17 @@ --- -title: Create a free Azure Data Explorer cluster. -description: This article you learn how to create a free cluster, ingest data, and run queries to gain insights into your data using your free cluster. +title: Create a free Azure Data Explorer cluster +description: Learn how to create a free cluster, ingest data, and run queries to gain insights into your data. ms.reviewer: avnera ms.topic: how-to -ms.date: 06/10/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted --- # Create a free Azure Data Explorer cluster -Creating your own [free cluster](start-for-free.md) gives you the opportunity to explore some of the incredible capabilities of Azure Data Explorer. In particular, it's a great way to experience our fast and highly scalable data exploration service for log and telemetry data, and use the powerful and intuitive Kusto Query Language to gain business insights into your data. +Creating your own [free cluster](start-for-free.md) lets you explore the capabilities of Azure Data Explorer. It's a great way to experience the fast and highly scalable data exploration service for log and telemetry data, and to use the Kusto Query Language to gain business insights into your data. -In this article, we show you how to create a free cluster, ingest data, and run queries using your free cluster. +In this article, you learn how to create a free cluster, ingest data, and run queries using your free cluster. ## Prerequisites From 471e131a4c40c4687efd2650e639f353f3c8ab1d Mon Sep 17 00:00:00 2001 From: Sreedhar Pelluru <6722422+spelluru@users.noreply.github.com> Date: Thu, 23 Jul 2026 17:34:28 -0400 Subject: [PATCH 3/6] Freshness pass for Kusto (KQL) articles (#7555) * docs: freshness pass for Kusto (KQL) articles Full freshness review of the KQL overview, create-app-to-run-basic-queries, graph-semantics-overview, graph-best-practices, and graph-sample-data articles. Updates ms.date and ai-usage, fixes grammar/sentence fragments, terminology (use vs. leverage/utilize), alt text, heading casing/levels, and a stale double-blank line. Preserves monikers, includes, and preserve-view params. * docs: apply authoring assistant writing-style suggestions --- .../kusto/api/get-started/app-basic-query.md | 17 ++++++------ .../kusto/query/graph-best-practices.md | 26 +++++++++---------- .../kusto/query/graph-sample-data.md | 11 ++++---- .../kusto/query/graph-semantics-overview.md | 23 ++++++++-------- data-explorer/kusto/query/index.md | 11 ++++---- 5 files changed, 46 insertions(+), 42 deletions(-) diff --git a/data-explorer/kusto/api/get-started/app-basic-query.md b/data-explorer/kusto/api/get-started/app-basic-query.md index 780cf51878..78ff884a18 100644 --- a/data-explorer/kusto/api/get-started/app-basic-query.md +++ b/data-explorer/kusto/api/get-started/app-basic-query.md @@ -3,7 +3,8 @@ title: Create an app to run basic queries description: Learn how to create an app to run basic queries using Kusto client libraries. ms.reviewer: yogilad ms.topic: how-to -ms.date: 05/28/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted ms.custom: sfi-ropc-nochange #customer intent: To learn about creating an app to run basic queries using Kusto client libraries. --- @@ -26,7 +27,7 @@ In this article, you learn how to: ## Run a basic query and process the results -In your preferred IDE or text editor, create a project or file named *basic query* using the convention appropriate for your preferred language. Then add the following code: +In your IDE or text editor, create a project or file named *basic query* by using the naming convention for your language. Then add the following code: 1. Create a client app that connects to the [help cluster](https://dataexplorer.azure.com/clusters/help). @@ -112,7 +113,7 @@ In your preferred IDE or text editor, create a project or file named *basic quer --- -1. Define the database and query to run. The query returns the date, state, and total tornado related damage where the total damage exceeded 100 million dollars. +1. Define the database and query to run. The query returns the date, state, and total tornado-related damage where the total damage exceeds $100 million. ### [C\#](#tab/csharp) @@ -433,7 +434,7 @@ For example, you can modify the previous code to access the values of the `Start ### [C\#](#tab/csharp) -In C#, you can only access the values of the columns by their ordinal positions in the result set. You can't use the column names; hence, the code remains the same. +In C#, you can only access the values of the columns by their ordinal positions in the result set. You can't use the column names, so the code remains the same. ```csharp int columnNoStartTime = response.GetOrdinal("StartTime"); @@ -564,13 +565,13 @@ KustoOperationResult response = kusto_client.execute(database, query, crp); ## Use query parameters to protect user input -Query parameters are important for maintaining the security and protection of your data. It safeguards it from potential malicious actors that may attempt to gain unauthorized access to or corrupt your data. For more information about parameterized queries, see [Query parameters declaration statement](../../query/query-parameters-statement.md). +Query parameters help protect your data. They safeguard it from malicious actors who might attempt to gain unauthorized access to or corrupt your data. For more information about parameterized queries, see [Query parameters declaration statement](../../query/query-parameters-statement.md). For example, you can modify the previous code to pass the *EventType* value and *DailyDamage* minimum value as parameters to the query. To use parameters: -1. Declare the parameters in the query text -1. Substitute the property values in the query text with the parameter names -1. Set the parameter values in the client request properties passed to the execute method +1. Declare the parameters in the query text. +1. Substitute the property values in the query text with the parameter names. +1. Set the parameter values in the client request properties passed to the execute method. ### [C\#](#tab/csharp) diff --git a/data-explorer/kusto/query/graph-best-practices.md b/data-explorer/kusto/query/graph-best-practices.md index feff930eee..7748c3401b 100644 --- a/data-explorer/kusto/query/graph-best-practices.md +++ b/data-explorer/kusto/query/graph-best-practices.md @@ -1,9 +1,10 @@ --- title: Best practices for Kusto Query Language (KQL) graph semantics -description: Learn about the best practices for Kusto Query Language (KQL) graph semantics. +description: Learn best practices for KQL graph semantics, including transient and persistent graphs, performance tuning, and multitenant partitioning. ms.reviewer: herauch ms.topic: best-practice -ms.date: 05/29/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted # Customer intent: As a data analyst, I want to learn about best practices for KQL graph semantics. --- @@ -29,11 +30,11 @@ There are two approaches for working with graphs: transient and persistent. ### Transient graphs -Created dynamically using the [`make-graph`](make-graph-operator.md) operator. These graphs exist only during query execution and are optimal for ad-hoc or exploratory analysis on small to medium datasets. +Create transient graphs dynamically by using the [`make-graph`](make-graph-operator.md) operator. They exist only during query execution and are optimal for ad hoc or exploratory analysis on small to medium datasets. ### Persistent graphs -Defined using [graph models](../management/graph/graph-model-overview.md) and [graph snapshots](../management/graph/graph-snapshot-overview.md). These graphs are stored in the database, support schema and versioning, and are optimized for repeated, large-scale, or collaborative analysis. +Define persistent graphs by using [graph models](../management/graph/graph-model-overview.md) and [graph snapshots](../management/graph/graph-snapshot-overview.md). They're stored in the database, support schema and versioning, and are optimized for repeated, large-scale, or collaborative analysis. :::moniker-end @@ -43,7 +44,7 @@ Transient graphs, created in-memory using the `make-graph` operator, are ideal f ### Optimize graph size for performance -The [`make-graph`](make-graph-operator.md) creates an in-memory representation including both structure and properties. Optimize performance by: +The [`make-graph`](make-graph-operator.md) operator creates an in-memory representation that includes both structure and properties. Optimize performance by: - **Apply filters early** - Select only relevant nodes, edges, and properties before graph creation - **Use projections** - Remove unnecessary columns to minimize memory consumption @@ -124,7 +125,7 @@ Use the [arg_max aggregation](arg-max-aggregation-function.md) function to deter **Step 3: Create helper functions** -Ensure only the materialized component is used and apply another filters: +Make sure the query uses only the materialized component, and apply extra filters: ```kusto .create function currentEmployees () { @@ -197,7 +198,7 @@ When working with complex graphs containing multiple node types, use a canonical Consider a factory manager investigating equipment issues and responsible personnel. The scenario combines asset graphs of production equipment with maintenance staff hierarchy: -:::image type="content" source="media/graphs/factory-maintenance-analysis.png" alt-text="A graph of factory people, equiptment, and measurements"::: +:::image type="content" source="media/graphs/factory-maintenance-analysis.png" alt-text="A graph of factory people, equipment, and measurements"::: The data for those entities can be stored directly in your cluster or acquired using query federation to a different service. To illustrate the example, the following tabular data is created as part of the query: @@ -277,7 +278,6 @@ let edges = With the standardized nodes and edges data, you can create a graph using the [make-graph operator](make-graph-operator.md) - ```kusto let graph = edges | make-graph source --> destination with nodes on nodeId; @@ -310,15 +310,15 @@ The projection in `graph-match` shows that the temperature sensor exhibited an a ## Best practices for persistent graphs -Persistent graphs, defined using [graph models](../management/graph/graph-model-overview.md), and [graph snapshots](../management/graph/graph-snapshot-overview.md), provide robust solutions for advanced graph analytics needs. These graphs excel in scenarios requiring repeated analysis of large, complex, or evolving data relationships, and facilitate collaboration by enabling teams to share standardized graph definitions and consistent analytical results. By persisting graph structures in the database, this approach significantly enhances performance for recurring queries and supports sophisticated versioning capabilities. +Persistent graphs, defined using [graph models](../management/graph/graph-model-overview.md) and [graph snapshots](../management/graph/graph-snapshot-overview.md), support advanced graph analytics. They suit repeated analysis of large, complex, or evolving relationships, and let teams share standardized graph definitions for consistent results. Persisting graph structures in the database improves performance for recurring queries and supports versioning. ### Use schema and definition for consistency and performance -A clear schema for your graph model is essential, as it specifies node and edge types along with their properties. This approach ensures data consistency and enables efficient querying. Utilize the `Definition` section to specify how nodes and edges are constructed from your tabular data through `AddNodes` and `AddEdges` steps. +A clear schema for your graph model is essential, as it specifies node and edge types along with their properties. This approach ensures data consistency and enables efficient querying. Use the `Definition` section to specify how nodes and edges are constructed from your tabular data through `AddNodes` and `AddEdges` steps. ### Use static and dynamic labels for flexible modeling -When modeling your graph, you can utilize both static and dynamic labeling approaches for optimal flexibility. Static labels are ideal for well-defined node and edge types that rarely change—define these in the `Schema` section and reference them in the `Labels` array of your steps. For cases where node or edge types are determined by data values (for example, when the type is stored in a column), use dynamic labels by specifying a `LabelsColumn` in your step to assign labels at runtime. This approach is especially useful for graphs with heterogeneous or evolving schemas. Both mechanisms can be effectively combined—you can define a `Labels` array for static labels and also specify a `LabelsColumn` to incorporate labels from your data, providing maximum flexibility when modeling complex graphs with both fixed and data-driven categorization. +When modeling your graph, use both static and dynamic labeling approaches for optimal flexibility. Static labels work well for well-defined node and edge types that rarely change. Define these labels in the `Schema` section and reference them in the `Labels` array of your steps. For cases where node or edge types are determined by data values (for example, when the type is stored in a column), use dynamic labels by specifying a `LabelsColumn` in your step to assign labels at runtime. This approach is especially useful for graphs with heterogeneous or evolving schemas. You can effectively combine both mechanisms. You can define a `Labels` array for static labels and also specify a `LabelsColumn` to incorporate labels from your data, providing maximum flexibility when modeling complex graphs with both fixed and data-driven categorization. #### Example: Using dynamic labels for multiple node and edge types @@ -363,9 +363,9 @@ This dynamic labeling approach provides exceptional flexibility when modeling gr ## Multitenant partitioning strategies for large-scale ISV scenarios -In large organizations, particularly ISV scenarios, graphs can consist of multiple billions of nodes and edges. This scale presents unique challenges that require strategic partitioning approaches to maintain performance while managing costs and complexity. +In large organizations, particularly independent software vendor (ISV) scenarios, graphs can consist of billions of nodes and edges. This scale presents unique challenges that require strategic partitioning approaches to maintain performance while managing costs and complexity. -### Understanding the challenge +### Large-scale multitenant challenges Large-scale multitenant environments often exhibit the following characteristics: diff --git a/data-explorer/kusto/query/graph-sample-data.md b/data-explorer/kusto/query/graph-sample-data.md index 079600be2d..3ac0ffd7da 100644 --- a/data-explorer/kusto/query/graph-sample-data.md +++ b/data-explorer/kusto/query/graph-sample-data.md @@ -1,15 +1,16 @@ --- title: Graph sample datasets and examples -description: Graph examples with detailed descriptions, use cases, and visualizations +description: Explore prebuilt graph sample datasets on the Kusto help cluster and learn how to query them with graph operators in Kusto Query Language (KQL). ms.topic: concept-article ms.author: spelluru author: cosh -ms.date: 08/14/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted --- # Graph sample datasets and examples -This page lists existing graphs on our help cluster at [https://help.kusto.windows.net](https://help.kusto.windows.net) in the **Samples** database and shows how to query them using the Kusto Query Language (KQL). These examples demonstrate querying prebuilt graph models without requiring any creation or setup steps. +This article lists the graphs in the **Samples** database on the help cluster at [https://help.kusto.windows.net](https://help.kusto.windows.net) and shows how to query them by using the Kusto Query Language (KQL). These examples demonstrate querying prebuilt graph models without requiring any creation or setup steps. ## Simple educational graph for learning fundamentals @@ -385,9 +386,9 @@ Usage: `graph("BloodHound_Entra")` **Graph Instance Example**: -This example demonstrates Microsoft Entra and Entra identity relationships with complex privilege structures and potential attack paths in a cloud environment. +This example demonstrates Microsoft Entra identity relationships with complex privilege structures and potential attack paths in a cloud environment. -:::image type="content" source="media/graphs/graph-example-bloodhound-entra-instance.png" alt-text="A graph containing a sample subgraph of the BloodHound Entra dataset"::: +:::image type="content" source="media/graphs/graph-example-bloodhound-entra-instance.png" alt-text="A graph containing a sample subgraph of the BloodHound Entra dataset."::: **Use Cases**: diff --git a/data-explorer/kusto/query/graph-semantics-overview.md b/data-explorer/kusto/query/graph-semantics-overview.md index 0fd5dfd79c..146a871b92 100644 --- a/data-explorer/kusto/query/graph-semantics-overview.md +++ b/data-explorer/kusto/query/graph-semantics-overview.md @@ -2,7 +2,8 @@ title: Graph semantics overview description: Learn about graph semantics and the different approaches to create and query graphs ms.topic: concept-article -ms.date: 05/29/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted --- # Graph semantics overview @@ -15,17 +16,17 @@ Graphs excel at representing complex data with many-to-many relationships, hiera The following graph illustrates a cybersecurity attack path scenario. Nodes represent entities such as external sources, users, and critical assets, while edges represent actions or relationships that form a potential attack sequence. -:::image type="content" source="media/graphs/graph-scenario-cybersecurity.png" alt-text="Graph showing the cybersecurity scenario including phishing email and path to accessing a sensitive database."::: +:::image type="content" source="media/graphs/graph-scenario-cybersecurity.png" alt-text="Graph of a cybersecurity attack path from a phishing email to a sensitive database."::: -Graph queries leverage graph structure to perform sophisticated operations such as finding paths, patterns, shortest distances, communities, and centrality measures. These capabilities make graphs powerful for modeling relationships, interactions, dependencies, and flows across domains—including social networks, supply chains, IoT device networks, digital twins, recommendation systems, and organizational structures. +Graph queries use graph structure to perform sophisticated operations such as finding paths, patterns, shortest distances, communities, and centrality measures. These capabilities make graphs powerful for modeling relationships, interactions, dependencies, and flows across domains - including social networks, supply chains, IoT device networks, digital twins, recommendation systems, and organizational structures. The following graph shows a supply chain scenario where nodes represent suppliers, manufacturers, and distributors, and edges represent supply relationships. This example demonstrates how graphs model flows and dependencies across different business contexts. -:::image type="content" source="media/graphs/graph-supply-chain.png" alt-text="Graph of two suppliers, manufacturer, and distributor, and the supply relationship."::: +:::image type="content" source="media/graphs/graph-supply-chain.png" alt-text="Supply chain graph connecting two suppliers, a manufacturer, and a distributor through supply relationships."::: ## Why use graph semantics? -Graph capabilities offer significant advantages by **leveraging existing data investments** while adding sophisticated relationship modeling: +Graph capabilities offer significant advantages by **using existing data investments** while adding sophisticated relationship modeling: - **No data migration required** - Build graph models directly from current data without duplication. - **Cost-effective solution** - Eliminates the complexity and expense of dedicated graph databases. @@ -87,13 +88,13 @@ Persistent graphs are essential for: - **Production workflows** - Automated systems requiring consistent graph access - **Historical comparison** - Time-based analysis of graph evolution and changes -##### Example: Digital Twin Persistent Graph +#### Example: Digital twin persistent graph :::image type="content" source="media/graphs/digital-twin-persistent-graph.png" alt-text="A graph showing the digital twin factory example with device relationships and equipment dependencies."::: In digital twin and IoT scenarios, persistent graphs support regular analysis of device relationships, equipment dependencies, and system evolution over time. Historical analysis allows comparing system states across different periods, tracking the evolution of assets, and conducting long-term trend analysis. -##### Example: IoT and digital twin persistent graph +#### Example: IoT and digital twin persistent graph IoT and digital twin applications benefit significantly from persistent graphs when modeling complex relationships between physical devices and their virtual representations across distributed systems. These graphs enable organizations to: @@ -111,7 +112,7 @@ This persistent approach proves invaluable for managing complex IoT ecosystems a ## Graph querying capabilities -Once a graph is established (through `make-graph` or from a snapshot), you can leverage the full suite of KQL graph operators for comprehensive analysis: +After you create a graph (through `make-graph` or from a snapshot), you can use the full suite of KQL graph operators for comprehensive analysis: **Core operators:** @@ -133,7 +134,7 @@ These capabilities support diverse use cases including customer journey analysis The following decision tree helps you select the most appropriate graph creation approach based on your specific requirements and constraints. -### Decision Tree: Transient vs Persistent Graphs +### Decision tree: transient vs. persistent graphs :::image type="content" source="media/graphs/decision-matrix-persistent-or-transient.png" alt-text="Flowchart showing a decision tree for when to use persistent or transient graphs."::: @@ -168,14 +169,14 @@ Persistent graphs are essential when working with enterprise-scale data or when ### Memory usage - **Transient graphs** - Limited by single cluster node memory, constraining use to datasets within available RAM -- **Persistent graphs** - Leverage distributed storage and optimized access patterns for enterprise-scale data +- **Persistent graphs** - Use distributed storage and optimized access patterns for enterprise-scale data. ### Query latency - **Transient graphs** - Include construction time in each query, with delays increasing for large datasets or external data sources - **Persistent graphs** - Eliminate construction latency through prebuilt snapshots, enabling rapid analysis -External data source dependencies, such as cross cluster queries or external tables to SQL and CosmosDB, can significantly affect transient graph construction time because each query must wait for external responses. +External data source dependencies, such as cross-cluster queries or external tables to SQL and Azure Cosmos DB, can significantly affect transient graph construction time because each query must wait for external responses. ### Data freshness diff --git a/data-explorer/kusto/query/index.md b/data-explorer/kusto/query/index.md index d74dfcc713..5517e815fb 100644 --- a/data-explorer/kusto/query/index.md +++ b/data-explorer/kusto/query/index.md @@ -1,10 +1,11 @@ --- -title: Kusto Query Language (KQL) overview -description: Learn about how to use Kusto Query Language (KQL) to explore data, discover patterns, identify anomalies, and create statistical models. +title: Kusto Query Language (KQL) overview +description: Learn how to use Kusto Query Language (KQL) to explore data, discover patterns, identify anomalies, and create statistical models. ms.reviewer: alexans ms.topic: landing-page ms.custom: build-2023, build-2023-dataai -ms.date: 06/03/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted adobe-target: true monikerRange: "microsoft-fabric || azure-data-explorer || azure-monitor || microsoft-sentinel" --- @@ -12,9 +13,9 @@ monikerRange: "microsoft-fabric || azure-data-explorer || azure-monitor || micro > [!INCLUDE [applies](../includes/applies-to-version/applies.md)] [!INCLUDE [fabric](../includes/applies-to-version/fabric.md)] [!INCLUDE [azure-data-explorer](../includes/applies-to-version/azure-data-explorer.md)] [!INCLUDE [monitor](../includes/applies-to-version/monitor.md)] [!INCLUDE [sentinel](../includes/applies-to-version/sentinel.md)] -Kusto Query Language (KQL) is a powerful tool for exploring your data and discovering patterns, identifying anomalies and outliers, creating statistical modeling, and more. +Kusto Query Language (KQL) is a powerful tool for exploring your data and discovering patterns, identifying anomalies and outliers, creating statistical models, and more. -KQL is a simple yet powerful language to query structured, semi-structured, and unstructured data. The language is expressive, easy to read and understand the query intent, and optimized for authoring experiences. KQL is optimal for querying telemetry, metrics, and logs with deep support for text search and parsing, time-series operators and functions, analytics and aggregation, geospatial, vector similarity searches, and many other language constructs that provide the most optimal language for data analysis. The query uses schema entities that are organized in a hierarchy similar to SQLs: databases, tables, and columns. +KQL is a simple yet powerful language to query structured, semi-structured, and unstructured data. The language is expressive, easy to read and understand the query intent, and optimized for authoring experiences. KQL is optimal for querying telemetry, metrics, and logs with deep support for text search and parsing, time-series operators and functions, analytics and aggregation, geospatial, vector similarity searches, and many other language constructs that provide the most optimal language for data analysis. The query uses schema entities that are organized in a hierarchy similar to SQL: databases, tables, and columns. If you have a background in scripting or working with databases, much of the content of this article should feel familiar. If not, don't worry, as the intuitive nature of the language quickly enables you to start writing your own queries and driving value for your organization. From 2f612f93996395404dc1ca8813b53436b0ceb452 Mon Sep 17 00:00:00 2001 From: spelluru <6722422+spelluru@users.noreply.github.com> Date: Thu, 23 Jul 2026 17:34:31 -0400 Subject: [PATCH 4/6] docs: apply authoring assistant writing-style suggestions --- data-explorer/dashboard-parameters.md | 8 ++++---- data-explorer/how-it-works.md | 4 ++-- data-explorer/kusto-emulator-install.md | 4 ++-- data-explorer/start-for-free-web-ui.md | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/data-explorer/dashboard-parameters.md b/data-explorer/dashboard-parameters.md index 84e591bc64..2bff240103 100644 --- a/data-explorer/dashboard-parameters.md +++ b/data-explorer/dashboard-parameters.md @@ -11,7 +11,7 @@ ai-usage: ai-assisted Parameters are used as building blocks for filters in Azure Data Explorer dashboards. They're managed in the dashboard scope, and can be added to queries to filter the data presented by the underlying visual. A query can use one or more parameters. -This article describes the creation and use of parameters and linked filters in dashboards. Parameters can be used to filter dashboard visuals either by selecting [parameter values in the filter bar](#use-parameters-in-your-query) or by using [cross-filters](#cross-filters-parameters). +This article describes the creation and use of parameters and linked filters in dashboards. You can use parameters to filter dashboard visuals either by selecting [parameter values in the filter bar](#use-parameters-in-your-query) or by using [cross-filters](#cross-filters-parameters). > [!NOTE] > Parameter management is available in **Editing** mode to dashboard editors. @@ -78,10 +78,10 @@ The following indicators can be viewed in the parameter card: ## Use parameters in your query -A parameter must be used in the query to make the filter applicable for that query visual. After you define a parameter, you can see it in the **Query** page filter top bar and in the query IntelliSense. +To make a filter work for a query visual, you must use a parameter in the query. When you define a parameter, you see it in the **Query** page filter top bar and in the query IntelliSense. > [!NOTE] -> If the parameter isn't used in the query, the filter remains inactive. After you add the parameter to the query, the filter becomes active. +> If you don't use the parameter in the query, the filter stays inactive. When you add the parameter to the query, the filter becomes active. ## Parameter types @@ -108,7 +108,7 @@ StormEvents | top 5 by TotalEvents ``` -After you save, the time range filter shows up on the dashboard. Now it can be used to filter the data on the card. You can filter your dashboard by selecting from the dropdown: **Time range** (last x minutes/hours/days) or a **Custom time range**. +After you save, the time range filter shows up on the dashboard. Now you can use it to filter the data on the card. You can filter your dashboard by selecting from the dropdown: **Time range** (last x minutes, hours, or days) or a **Custom time range**. :::image type="content" source="media/dashboard-parameters/time-range-parameter.png" alt-text="Screenshot showing how to filter using custom time range."::: diff --git a/data-explorer/how-it-works.md b/data-explorer/how-it-works.md index 6116ed3632..18057e90a8 100644 --- a/data-explorer/how-it-works.md +++ b/data-explorer/how-it-works.md @@ -33,7 +33,7 @@ For more information on data storage, see [Extents overview](/kusto/management/e ## Data cache -Azure Data Explorer has a multi-hierarchy data cache system to ensure that the most relevant data is cached as closely as possible to the CPU. The cache system depends on the immutability of extents, and works entirely with [compressed data](#column-compression). To improve query performance, data remains compressed even in RAM and is only decompressed when required for a query. +Azure Data Explorer uses a multilevel data cache system to keep the most relevant data as close as possible to the CPU. This cache system relies on the immutability of extents and works entirely with [compressed data](#column-compression). To boost query performance, data stays compressed even in RAM and is only decompressed when a query needs it. For more information on caching, see [Cache policy](/kusto/management/cache-policy?view=azure-data-explorer&preserve-view=true). @@ -41,7 +41,7 @@ For more information on caching, see [Cache policy](/kusto/management/cache-poli Azure Data Explorer is designed to efficiently index free-text ([string](/kusto/query/scalar-data-types/string?view=azure-data-explorer&preserve-view=true)) and JSON-like ([dynamic](/kusto/query/scalar-data-types/dynamic?view=azure-data-explorer&preserve-view=true)) columns as data is ingested. The indexes maintain a level of granularity that enables evaluation of parts of the query based on the index without scanning the data. -Continuous background optimization of extents through merging improves compression and indexing, ensuring efficient storage and low query latency. After extents reach a certain size, only the indexes are merged to enhance query performance without compromising efficiency. +Continuous background optimization of extents through merging improves compression and indexing, ensuring efficient storage and low query latency. After extents reach a certain size, only the indexes merge to boost query performance without hurting efficiency. For more information on extent and index merging, see [Merge policy](/kusto/management/merge-policy?view=azure-data-explorer&preserve-view=true). diff --git a/data-explorer/kusto-emulator-install.md b/data-explorer/kusto-emulator-install.md index 9e5c7b1bbf..e5ac43d80e 100644 --- a/data-explorer/kusto-emulator-install.md +++ b/data-explorer/kusto-emulator-install.md @@ -115,7 +115,7 @@ You can use any of the following options when running the emulator: docker run -v d:\host\local:/kustodata -e ACCEPT_EULA=Y -m 4G -d -p 8080:8080 -t mcr.microsoft.com/azuredataexplorer/kustainer-linux:latest ``` -- Run on a different port: The Kusto emulator exposes access to the Kusto Query Engine on port 8080. In other examples, you mapped the host port 8080 to the emulator port 8080. You can use this option to map a different host to the engine. +- Run on a different port: The Kusto emulator exposes access to the Kusto Query Engine on port 8080. In other examples, you mapped the host port 8080 to the emulator port 8080. Use this option to map a different host port to the engine. For example, to map port 9000 on the host to the engine, use the following command on Windows Server: @@ -151,7 +151,7 @@ In the following sections, you use Kusto.Explorer to create a database, ingest d To store data and run queries, create a database or attach the emulator to an existing database. -A database can be persisted in a container folder or on a [mounted folder](#run-emulator-options). A container folder's lifetime is bound to the container, so restarting the container loses any changes. Also, the container's virtual storage is less efficient than native storage. A mounted folder enables you to keep the data between container runs. +You can persist a database in a container folder or on a [mounted folder](#run-emulator-options). A container folder's lifetime is bound to the container, so restarting the container loses any changes. Also, the container's virtual storage is less efficient than native storage. A mounted folder enables you to keep the data between container runs. In this example, you keep the data in the container. diff --git a/data-explorer/start-for-free-web-ui.md b/data-explorer/start-for-free-web-ui.md index caa108a80f..e3e7840625 100644 --- a/data-explorer/start-for-free-web-ui.md +++ b/data-explorer/start-for-free-web-ui.md @@ -9,9 +9,9 @@ ai-usage: ai-assisted # Create a free Azure Data Explorer cluster -Creating your own [free cluster](start-for-free.md) lets you explore the capabilities of Azure Data Explorer. It's a great way to experience the fast and highly scalable data exploration service for log and telemetry data, and to use the Kusto Query Language to gain business insights into your data. +By creating your own [free cluster](start-for-free.md), you can explore the capabilities of Azure Data Explorer. It's a great way to experience the fast and highly scalable data exploration service for log and telemetry data. Use the Kusto Query Language to gain business insights into your data. -In this article, you learn how to create a free cluster, ingest data, and run queries using your free cluster. +In this article, you learn how to create a free cluster, ingest data, and run queries by using your free cluster. ## Prerequisites From d82610d15caee5306d44c71056ab990e8d9e6f40 Mon Sep 17 00:00:00 2001 From: spelluru <6722422+spelluru@users.noreply.github.com> Date: Thu, 23 Jul 2026 17:40:36 -0400 Subject: [PATCH 5/6] docs: apply authoring assistant concise-sentence suggestion --- data-explorer/dashboard-parameters.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data-explorer/dashboard-parameters.md b/data-explorer/dashboard-parameters.md index 2bff240103..a83ca9d043 100644 --- a/data-explorer/dashboard-parameters.md +++ b/data-explorer/dashboard-parameters.md @@ -11,7 +11,7 @@ ai-usage: ai-assisted Parameters are used as building blocks for filters in Azure Data Explorer dashboards. They're managed in the dashboard scope, and can be added to queries to filter the data presented by the underlying visual. A query can use one or more parameters. -This article describes the creation and use of parameters and linked filters in dashboards. You can use parameters to filter dashboard visuals either by selecting [parameter values in the filter bar](#use-parameters-in-your-query) or by using [cross-filters](#cross-filters-parameters). +This article describes the creation and use of parameters and linked filters in dashboards. Use parameters to filter dashboard visuals either by selecting [parameter values in the filter bar](#use-parameters-in-your-query) or by using [cross-filters](#cross-filters-parameters). > [!NOTE] > Parameter management is available in **Editing** mode to dashboard editors. From e3adf684056f0b3fdae7b44bf3d1bfb9108dde29 Mon Sep 17 00:00:00 2001 From: spelluru <6722422+spelluru@users.noreply.github.com> Date: Thu, 23 Jul 2026 17:52:49 -0400 Subject: [PATCH 6/6] docs: freshness pass for remaining Kusto (KQL) graph articles Full freshness review of graph-scenarios and graph-exploration-basics. Updates ms.date and ai-usage, fixes 'This page'->'This article', a subject-verb error, first-person 'our', and an alt-text double space. Preserves monikers, includes, query links, and preserve-view params. --- data-explorer/kusto/query/graph-exploration-basics.md | 7 ++++--- data-explorer/kusto/query/graph-scenarios.md | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/data-explorer/kusto/query/graph-exploration-basics.md b/data-explorer/kusto/query/graph-exploration-basics.md index 762c7392d6..47d8850755 100644 --- a/data-explorer/kusto/query/graph-exploration-basics.md +++ b/data-explorer/kusto/query/graph-exploration-basics.md @@ -3,7 +3,8 @@ title: Graph exploration basics description: Reusable Kusto Query Language (KQL) query patterns for exploring and analyzing graphs with graph semantics. ms.reviewer: herauch ms.topic: how-to -ms.date: 08/21/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted # Customer intent: As a data analyst, I want ready-to-run KQL graph queries to explore graph datasets quickly. --- @@ -11,14 +12,14 @@ ms.date: 08/21/2025 >[!INCLUDE [applies](../includes/applies-to-version/applies.md)] [!INCLUDE [fabric](../includes/applies-to-version/fabric.md)] [!INCLUDE [azure-data-explorer](../includes/applies-to-version/azure-data-explorer.md)] -This page provides reusable Kusto Query Language (KQL) patterns for quickly exploring graph datasets and answering common questions about structure, nodes, edges, and properties. +This article provides reusable Kusto Query Language (KQL) patterns for quickly exploring graph datasets and answering common questions about structure, nodes, edges, and properties. > [!TIP] > Looking for design and performance guidance? See [Best practices for graph semantics](graph-best-practices.md). ## Common analysis queries -These reusable query patterns work across all graph models and help you understand the structure and characteristics of any graph dataset. The example below use sample graphs available on our [help cluster](https://help.kusto.windows.net) in the **Samples** database. For detailed information about these graphs, see [Graph sample datasets and examples](graph-sample-data.md). Use these queries to explore new graphs, perform basic analysis, or as starting points for more complex graph investigations. +These reusable query patterns work across all graph models and help you understand the structure and characteristics of any graph dataset. These examples use sample graphs on the [help cluster](https://help.kusto.windows.net) in the **Samples** database. For detailed information about these graphs, see [Graph sample datasets and examples](graph-sample-data.md). Use these queries to explore new graphs, perform basic analysis, or as starting points for more complex graph investigations. ### Graph overview and statistics diff --git a/data-explorer/kusto/query/graph-scenarios.md b/data-explorer/kusto/query/graph-scenarios.md index d921d7494e..4e7184d468 100644 --- a/data-explorer/kusto/query/graph-scenarios.md +++ b/data-explorer/kusto/query/graph-scenarios.md @@ -3,7 +3,8 @@ title: Scenarios for using Kusto Query Language (KQL) graph semantics description: Learn about common scenarios for using Kusto Query Language (KQL) graph semantics. ms.reviewer: spelluru ms.topic: concept-article -ms.date: 05/28/2025 +ms.date: 07/23/2026 +ai-usage: ai-assisted # Customer intent: As a data analyst, I want to learn about common scenarios for using Kusto Query Language (KQL) graph semantics. --- @@ -204,7 +205,7 @@ For implementation examples and detailed code samples, see the [Time Series and Digital twins provide virtual representations of physical objects or systems, enabling precise modeling and simulation of real-world entities. Graph semantics in KQL excels in digital twin scenarios because relationships between entities—facilities, equipment, sensors, and people—naturally form graph structures. -:::image type="content" source="media/graphs/digital-twins-graph-historization.png" alt-text="Example image of a workflow diagram using digital twins and graph historization."::: +:::image type="content" source="media/graphs/digital-twins-graph-historization.png" alt-text="Example image of a workflow diagram using digital twins and graph historization."::: ### Digital twin capabilities with KQL