You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/sentinel/datalake/kql-jobs.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ ms.author: edbaynash
7
7
ms.service: microsoft-sentinel
8
8
ms.subservice: sentinel-platform
9
9
ms.topic: how-to
10
-
ms.date: 11/19/2025
10
+
ms.date: 03/26/2026
11
11
ms.collection: ms-security
12
12
13
13
# Customer intent: As a security engineer or administrator, I want to create jobs in the Microsoft Sentinel data lake so that I can run KQL queries against the data in the lake tier and promote the results to the analytics tier.
@@ -17,7 +17,7 @@ ms.collection: ms-security
17
17
18
18
# Create KQL jobs in the Microsoft Sentinel data lake
19
19
20
-
KQL jobs are one-time or scheduled KQL queries on data in the Microsoft Sentinel data lake. Use jobs for investigative and analytical scenarios, such as:
20
+
KQL jobs are one-time or scheduled KQL queries on data in the Microsoft Sentinel data lake and federated tables. Use jobs for investigative and analytical scenarios, such as:
21
21
+ Long-running one-time queries for incident investigations and incident response (IR)
22
22
+ Data aggregation tasks that support enrichment workflows using low-fidelity logs
23
23
+ Historical threat intelligence (TI) matching scans for retrospective analysis
@@ -27,7 +27,7 @@ KQL jobs are especially effective when queries use joins or unions across differ
27
27
28
28
Use jobs to promote data from the data lake tier to the analytics tier. Once in the analytics tier, use the advanced hunting KQL editor to query the data. Promoting data to the analytics tier has the following benefits:
29
29
30
-
+ Combine current and historical data in the analytics tier to run advanced analytics and machine learning models on your data.
30
+
+ Combine current and historical data in the analytics tier or from federated tables to run advanced analytics and machine learning models on your data.
31
31
+ Reduce query costs by running queries in the analytics tier.
32
32
+ Combine data from multiple workspaces to a single workspace in the analytics tier.
33
33
+ Combine Microsoft Entra ID, Microsoft 365, and Microsoft Resource Graph data in the analytics tier to run advanced analytics across data sources.
@@ -68,7 +68,7 @@ For more information on assigning roles to managed identities, see [Assign Azure
68
68
69
69
## Create a job
70
70
71
-
You can create jobs to run on a schedule or one-time. When you create a job, you specify the destination workspace and table for the results. You can write the results to a new table or append them to an existing table in the analytics or data lake tier. You can create a new KQL job or create a job from a template containing the query and job settings. For more information, see [Create a KQL job from a template](#create-a-job-from-a-template).
71
+
You can create jobs to run on a schedule or one-time. When you create a job, you specify the destination workspace and table for the results. You can write the results to a new table or append them to an existing table in the analytics or data lake tier. You can't write the results to federated tables. You can create a new KQL job or create a job from a template containing the query and job settings. For more information, see [Create a KQL job from a template](#create-a-job-from-a-template).
72
72
73
73
74
74
1. Start the job creation process from KQL query editor, or from the jobs management page.
@@ -211,7 +211,7 @@ KQL jobs can write data to either the Analytics tier or the Data lake tier, depe
211
211
212
212
## Data lake ingestion latency
213
213
214
-
The data lake tier stores data in cold storage. Unlike hot or near real-time analytics tiers, cold storage is optimized for long-term retention and cost efficiency and doesn't provide immediate access to newly ingested data. When new rows are added to existing tables in the data lake, there's a typical latency of up to 15 minutes before the data is available for querying. Account for the ingestion latency when you run queries and schedule KQL jobs by ensuring that lookback windows and job schedules are configured to avoid data that isn't available yet.
214
+
The data lake tier stores data in cold storage. Unlike hot or near real-time analytics tiers, cold storage is optimized for long-term retention and cost efficiency and doesn't provide immediate access to newly ingested data. When new rows are added to existing tables in the data lake or in federated tables, there's a typical latency of up to 15 minutes before the data is available for querying. Account for the ingestion latency when you run queries and schedule KQL jobs by ensuring that lookback windows and job schedules are configured to avoid data that isn't available yet.
215
215
216
216
To avoid querying data that might not yet be available, include a delay parameter in your KQL queries or jobs. For example, when you schedule automated jobs, set the query's end time to `now() - delay`, where `delay` matches the typical data readiness latency of 15 minutes. This approach ensures that queries only target data that's fully ingested and ready for analysis.
Copy file name to clipboardExpand all lines: articles/sentinel/datalake/kql-queries.md
+11-4Lines changed: 11 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ author: EdB-MSFT
6
6
ms.service: microsoft-sentinel
7
7
ms.subservice: sentinel-platform
8
8
ms.topic: how-to
9
-
ms.date: 03/04/2026
9
+
ms.date: 03/26/2026
10
10
ms.author: edbaynash
11
11
ms.collection: ms-security
12
12
---
@@ -15,7 +15,7 @@ ms.collection: ms-security
15
15
16
16
Data lake exploration in the Microsoft Defender portal provides a unified interface to analyze your data lake. It lets you run KQL (Kusto Query Language) queries, create jobs, and manage them.
17
17
18
-
The **KQL queries** page under **Data lake exploration** lets you edit and run KQL queries on data lake resources. Create jobs to promote data from the data lake to the analytics tier, or create aggregate tables in the data lake tier. Run jobs on demand or schedule them. The **Jobs** page lets you manage jobs; enable, disable, edit, or delete. For more information, see [Create jobs in the Microsoft Sentinel data lake](kql-jobs.md).
18
+
The **KQL queries** page under **Data lake exploration** lets you edit and run KQL queries on data lake resources and federated tables. Create jobs to promote data from the data lake to the analytics tier, or create aggregate tables in the data lake tier. Run jobs on demand or schedule them. The **Jobs** page lets you manage jobs; enable, disable, edit, or delete. For more information, see [Create jobs in the Microsoft Sentinel data lake](kql-jobs.md).
19
19
20
20
## Prerequisites
21
21
@@ -29,7 +29,7 @@ You can run KQL queries in the Microsoft Defender portal after completing the on
29
29
30
30
Microsoft Entra ID roles let you access all workspaces in the data lake. Alternatively, you can grant access to individual workspaces using Azure RBAC roles. Users with Azure RBAC permissions for Microsoft Sentinel workspaces can run KQL queries against those workspaces in the data lake tier. For more information on roles and permissions, see [Microsoft Sentinel data lake roles and permissions](../roles.md#roles-and-permissions-for-the-microsoft-sentinel-data-lake).
31
31
32
-
Optionally, Microsoft Sentinel scoping or row-level RBAC can be configured to further restrict data access within a workspace. When enabled, row-level scoping limits the data returned by queries based on the user’s assigned scope. If row-level scoping isn’t configured, the existing workspace-level permission model applies unchanged. For more information, see [Microsoft Sentinel scoping](../scoping.md).
32
+
Optionally, Microsoft Sentinel scoping or row-level RBAC can be configured to further restrict data access within a workspace. When enabled, row-level scoping limits the data returned by queries based on the user’s assigned scope. If row-level scoping isn’t configured, the existing workspace-level permission model applies unchanged. [Configure Microsoft Sentinel scoping (row-level RBAC) (preview)](../scoping.md).
33
33
34
34
## Write KQL queries
35
35
@@ -49,20 +49,25 @@ The **Query history** tab shows a list of your previously run queries, query pro
49
49
50
50
You can run queries against a single workspace or multiple workspaces. Select workspaces in the upper right corner of the query editor by using the **Selected workspaces** dropdown. The workspaces you select determine the tables available for querying. The selected workspaces apply to all query tabs in the query editor. When you use multiple workspaces, the `union()` operator is applied by default to tables with the same name and schema from different workspaces. Use the `workspace()` operator to query a table from a specific workspace, for example `workspace("MyWorkspace").AuditLogs`.
51
51
52
+
To query federated tables, select **System tables** when choosing workspaces. For more information on federated tables, see [Using federated tables in the Microsoft Sentinel data lake](./using-data-federation.md).
53
+
52
54
If you select a single, empty workspace or a workspace in the process of onboarding, the schema browser doesn't display any tables.
Use the time picker above the query editor to select the time range for your query. By using the **Custom time range** option, you can set a specific start and end time. Time ranges can be up to 12 years in duration.
58
61
59
62
:::image type="content" source="media/kql-queries/time-range-selector.png" lightbox="media/kql-queries/time-range-selector.png" alt-text="A screenshot showing the time range selector.":::
60
63
64
+
> [!IMPORTANT]
65
+
> The time range selector doesn't work for federated tables that don't have a `TimeGenerated` column or where the `TimeGenerated` column isn't in the correct format. When querying these tables, specify the time range in your KQL query using the appropriate column for time filtering.
66
+
61
67
You can also specify a time range in the KQL query syntax, for example:
62
68
+`where TimeGenerated between (datetime(2020-01-01) .. datetime(2020-12-31))`
> Queries are limited to 500,000 rows or 64 MB of data and timeout after 8 minutes. When selecting a broad time range, your query might exceed these limits. Consider using asynchronous queries for long-running queries. For more information, see [Async queries](#async-queries).
+ There is a 15-minute latency between when data is ingested into the data lake or federated tables, and when it becomes available for querying. This means that newly ingested data may not be immediately queryable.
160
+
154
161
155
162
[!INCLUDE [Service limits for KQL queries against the data lake](../includes/service-limits-kql-queries.md)]
Copy file name to clipboardExpand all lines: articles/sentinel/datalake/notebook-jobs.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,14 +7,14 @@ ms.author: edbaynash
7
7
ms.service: microsoft-sentinel
8
8
ms.subservice: sentinel-platform
9
9
ms.topic: how-to
10
-
ms.date: 07/09/2025
10
+
ms.date: 03/26/2026
11
11
12
12
# Customer intent: As a security engineer or data scientist, I want to explore and analyze security data in the Microsoft Sentinel data lake using Jupyter notebooks, so that I can gain insights and build advanced analytics solutions.
13
13
---
14
14
15
15
# Create and manage Jupyter notebook jobs
16
16
17
-
You can create scheduled jobs to run at specific times or intervals using the Microsoft Sentinel extension for Visual Studio Code. Jobs allow you to automate data processing tasks to summarize, transform, or analyze data in the Microsoft Sentinel data lake. Jobs are also used to process data and write results to custom tables in the lake tier or analytics tier.
17
+
You can create scheduled jobs to run at specific times or intervals using the Microsoft Sentinel extension for Visual Studio Code. Jobs allow you to automate data processing tasks to summarize, transform, or analyze data in the Microsoft Sentinel data lake and federated tables. Jobs are also used to process data and write results to custom tables in the lake tier or analytics tier.
Copy file name to clipboardExpand all lines: articles/sentinel/datalake/notebooks.md
+6-4Lines changed: 6 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,14 +7,14 @@ ms.author: edbaynash
7
7
ms.topic: how-to
8
8
ms.service: microsoft-sentinel
9
9
ms.subservice: sentinel-platform
10
-
ms.date: 03/04/2026
10
+
ms.date: 03/26/2026
11
11
12
12
# Customer intent: As a security engineer or data scientist, I want to explore and analyze security data in the Microsoft Sentinel data lake using Jupyter notebooks, so that I can gain insights and build advanced analytics solutions.
13
13
---
14
14
15
15
# Run notebooks on the Microsoft Sentinel data lake
16
16
17
-
Jupyter notebooks provide an interactive environment for exploring, analyzing, and visualizing data in the Microsoft Sentinel data lake. With notebooks, you can write and execute code, document your workflow, and view results—all in one place. This makes it easy to perform data exploration, build advanced analytics solutions, and share insights with others. By leveraging Python and Apache Spark within Visual Studio Code, notebooks help you transform raw security data into actionable intelligence.
17
+
Jupyter notebooks provide an interactive environment for exploring, analyzing, and visualizing data in the Microsoft Sentinel data lake and federated tables. With notebooks, you can write and execute code, document your workflow, and view results—all in one place. This makes it easy to perform data exploration, build advanced analytics solutions, and share insights with others. By leveraging Python and Apache Spark within Visual Studio Code, notebooks help you transform raw security data into actionable intelligence.
18
18
19
19
This article shows you how to explore and interact with data lake data using Jupyter notebooks in Visual Studio Code.
20
20
@@ -28,6 +28,8 @@ To use notebooks in the Microsoft Sentinel data lake, you must first onboard to
28
28
29
29
Microsoft Entra ID roles provide broad access across all workspaces in the data lake. Alternatively you can grant access to individual workspaces using Azure RBAC roles. Users with Azure RBAC permissions to Microsoft Sentinel workspaces can run notebooks against those workspaces in the data lake tier. For more information, see [Roles and permissions in Microsoft Sentinel](../roles.md#roles-and-permissions-for-the-microsoft-sentinel-data-lake).
30
30
31
+
Optionally, Microsoft Sentinel scoping or row-level RBAC can be configured to further restrict data access within a workspace. When enabled, row-level scoping limits the data returned by queries based on the user’s assigned scope. If row-level scoping isn’t configured, the existing workspace-level permission model applies unchanged. For more information, see [Configure Microsoft Sentinel scoping (row-level RBAC) (preview)](../scoping.md).
32
+
31
33
To create new custom tables in the analytics tier, the data lake managed identity must be assigned the **Log Analytics Contributor** role in the Log Analytics workspace.
32
34
33
35
To assign the role, follow the steps below:
@@ -86,9 +88,9 @@ After installing the Microsoft Sentinel extension, you can start exploring data
86
88
87
89
### View data lake tables and jobs
88
90
89
-
Once you sign in, the Sentinel extension displays a list of **Lake tables** and **Jobs** in the left pane. The tables are grouped by the database and category. Select a table to see the column definitions.
91
+
Once you sign in, the Sentinel extension displays a list of **Lake tables** and **Jobs** in the left pane. The tables are grouped by the database and category. Federated tables are displayed under the **Assets** category under **System tables**. Select a table to see the column definitions.
90
92
91
-
For information on Jobs, see [Jobs and Scheduling](#jobs-and-scheduling).
93
+
For information on Jobs, see [Jobs and Scheduling](#jobs-and-scheduling). For more information on federated tables, see [Using federated tables in the Microsoft Sentinel data lake](using-data-federation.md).
92
94
93
95
:::image type="content" source="./media/notebooks/tables-and-jobs.png" lightbox="./media/notebooks/tables-and-jobs.png" alt-text="A screenshot showing the list of tables, jobs, and the selected table's metadata.":::
Copy file name to clipboardExpand all lines: articles/sentinel/datalake/sentinel-graph-overview.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ titleSuffix: Microsoft Security
5
5
description: Learn how Microsoft Sentinel graph enables multi-modal security analytics through graph-based representation of security data, providing deep insights into digital environments and attack paths.
0 commit comments