Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The following article details the file structure for Eventhouse and KQL Database once they're synced to a GitHub or Azure Devops Repository.
Folder structure
Once a workspace is synced to a repo, you see a top level folder for the workspace and a subfolder for each item that was synced. Each subfolder is formatted with Item Name.Item Type
Within the folder for both Eventhouse and KQL Database, you see the following files:
- Platform: Defines fabric platform values such as Display Name and Description.
- Properties: Defines item specific values.
Additionally for the KQL Database, you see a schema file that is used to deploy the items inside a KQL Database.
Here's an example of what the folder structure looks like:
Repo
- Workspace A
- Item_A.Eventhouse
- .platform
- EventhouseProperties.json
- Item_B.KQLDatabase
- .platform
- DatabaseProperties.json
- DatabaseSchema.kql
- Item_A.Eventhouse
- Workspace B
- Item_C.Eventhouse
- .platform
- EventhouseProperties.json
- Item_D.KQLDatabase
- .platform
- DatabaseProperties.json
- DatabaseSchema.kql
- Item_C.Eventhouse
Eventhouse files
The following files are contained in an eventhouse folder:
.platform
The file uses the following schema to define an eventhouse:
{ "$schema": "https://developer.microsoft.com/json-schemas/fabric/gitIntegration/platformProperties/2.0.0/schema.json", "metadata": { "type": "Eventhouse", "displayName": "", "description": "" }, "config": { "version": "2.0", "logicalId": "" } }
EventhouseProperties.json
The file allows you to configure platform-level settings for the eventhouse item.
KQL database files
The following files are contained in a KQL database folder:
.platform
The file uses the following schema to define a KQL database:
{ "$schema": "https://developer.microsoft.com/json-schemas/fabric/gitIntegration/platformProperties/2.0.0/schema.json", "metadata": { "type": "KQLDatabase", "displayName": "", "description": "" }, "config": { "version": "2.0", "logicalId": "" } }
DatabaseProperties.json
The file uses the following schema to configure platform-level settings for the Kusto Query Language (KQL) database item:
{ "databaseType": "ReadWrite", "parentEventhouseItemId": "", "oneLakeCachingPeriod": "P36500D", "oneLakeStandardStoragePeriod": "P36500D" }
The following table describes the properties in the
DatabaseProperties.json
file:Property Description databaseType Valid values: ReadWrite parentEventhouseItemId The logical ID of the parent eventhouse. This value shouldn't be modified. oneLakeCachingPeriod Database level setting for the caching policy. oneLakeStandardStoragePeriod Database level setting for the retention policy. DatabaseSchema.kql
The file is a KQL script that configures the data-level settings for the KQL database. It's automatically generated when the KQL database is synchronized to git. The file is executed when syncing to your Fabric Workspace.
You can make changes to this script by adding or modifying the following supported commands:
Database object Supported commands Table Create or merge Function Create or alter Table policy update Alter Column encoding policy Alter Materialized view Create or alter Table ingestion mapping Create or alter The following example is a KQL script to create a table and its ingestion mapping.
// KQL script // Use management commands in this script to configure your database items, such as tables, functions, materialized views, and more. .create-merge table SampleTable (UsageDate:datetime, PublisherType:string, ChargeType:string, ServiceName:string, ServiceTier:string, Meter:string, PartNumber:string, CostUSD:real, Cost:real, Currency:string) .create-or-alter table SampleTable ingestion csv mapping 'SampleTable_mapping' "[{'Properties':{'Ordinal':'0'},'column':'UsageDate','datatype':''},{'Properties':{'Ordinal':'1'},'column':'PublisherType','datatype':''}]"