<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jahnavi Reddy, Author at Datagaps | Gen AI-Powered Automated Cloud Data Testing</title>
	<atom:link href="https://www.datagaps.com/blog/author/jahnavi/feed/" rel="self" type="application/rss+xml" />
	<link></link>
	<description></description>
	<lastBuildDate>Thu, 22 Oct 2026 08:01:04 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.3</generator>

<image>
	<url>https://www.datagaps.com/wp-content/uploads/cropped-Datagaps-Favicons-32x32.png</url>
	<title>Jahnavi Reddy, Author at Datagaps | Gen AI-Powered Automated Cloud Data Testing</title>
	<link></link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>How to Generate Synthetic Test Data for Microsoft Fabric with TDM</title>
		<link>https://www.datagaps.com/blog/how-to-generate-synthetic-test-data-for-microsoft-fabric-with-tdm/</link>
		
		<dc:creator><![CDATA[Jahnavi Reddy]]></dc:creator>
		<pubDate>Wed, 21 Oct 2026 12:27:27 +0000</pubDate>
				<category><![CDATA[Data Quality]]></category>
		<category><![CDATA[Datagaps TDM]]></category>
		<category><![CDATA[Microsoft Fabric]]></category>
		<category><![CDATA[PII Masking]]></category>
		<category><![CDATA[Synthetic Data]]></category>
		<category><![CDATA[Test Data Management]]></category>
		<guid isPermaLink="false">https://www.datagaps.com/?p=63404</guid>

					<description><![CDATA[<p>Generate data quality rules for Microsoft Fabric using AI. Learn how AI simplifies rule creation, improves data accuracy, and strengthens data governance.</p>
<p>The post <a href="https://www.datagaps.com/blog/how-to-generate-synthetic-test-data-for-microsoft-fabric-with-tdm/">How to Generate Synthetic Test Data for Microsoft Fabric with TDM</a> appeared first on <a href="https://www.datagaps.com">Datagaps | Gen AI-Powered Automated Cloud Data Testing</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="63404" class="elementor elementor-63404" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-a3771bc e-flex e-con-boxed e-con e-parent" data-id="a3771bc" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-1fd7e36 elementor-widget elementor-widget-text-editor" data-id="1fd7e36" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="TextRun SCXW99550397 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SpellingErrorV2Themed SCXW99550397 BCX8">Datagaps</span><span class="NormalTextRun SCXW99550397 BCX8"><span style="text-decoration: underline; color: #1967d2;"><a style="color: #1967d2; text-decoration: underline;" href="https://www.datagaps.com/test-data-manager/" target="_blank" rel="noopener"> Test Data Manager</a></span> (TDM) is an AI-powered synthetic data tool that learns patterns from sample data to generate privacy-safe test data for Microsoft Fabric </span><span class="NormalTextRun SpellingErrorV2Themed SCXW99550397 BCX8">lakehouses</span><span class="NormalTextRun SCXW99550397 BCX8"> and warehouses, masking PII automatically and reducing work that could take weeks to under an hour.</span></span><span class="EOP Selected SCXW99550397 BCX8" data-ccp-props="{}"> </span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-27eeb44 datagaps-tldr elementor-widget elementor-widget-text-editor" data-id="27eeb44" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>Key Takeaways</strong></p><ul><li><span data-contrast="auto">Manually copying or creating test data breaks down at 30 to 40 or more tables per testing cycle.</span><span data-ccp-props="{}"> </span></li><li><span data-contrast="auto">TDM has two components: Data Models configure generation, and Datasets generate and load the data.</span><span data-ccp-props="{}"> </span></li><li><span data-contrast="auto">AI auto-detects entities, treats classified columns as PII or confidential, and masks them during generation.</span><span data-ccp-props="{}"> </span></li><li><span data-contrast="auto">Sample data is a prerequisite; by default TDM takes 5,000 rows from the connected source.</span><span data-ccp-props="{}"> </span></li><li><span data-contrast="auto">Generating 100 or 1,000 rows completes in about five seconds, with multiple tables processed in parallel.</span></li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-2bb8934 elementor-widget elementor-widget-text-editor" data-id="2bb8934" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="text-decoration: underline; color: #1967d2;"><a style="color: #1967d2;" href="https://www.datagaps.com/test-data-manager-trial-request/" target="_blank" rel="noopener"><span class="NormalTextRun SCXW77785008 BCX8">See how </span><span class="NormalTextRun SpellingErrorV2Themed SCXW77785008 BCX8">Datagaps</span><span class="NormalTextRun SCXW77785008 BCX8"> TDM generates masked test data for your Fabric tables →</span></a></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-9e11135 elementor-widget elementor-widget-text-editor" data-id="9e11135" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="TextRun SCXW95773873 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW95773873 BCX8">To generate synthetic test data for Microsoft Fabric, configure a </span></span><span class="TextRun SCXW95773873 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW95773873 BCX8">Data Model</span></span><span class="TextRun SCXW95773873 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW95773873 BCX8"> in </span><span class="NormalTextRun SpellingErrorV2Themed SCXW95773873 BCX8">Datagaps</span><span class="NormalTextRun SCXW95773873 BCX8"> Test Data Manager (TDM) — connect your </span><span class="NormalTextRun SpellingErrorV2Themed SCXW95773873 BCX8">lakehouse</span><span class="NormalTextRun SCXW95773873 BCX8"> or warehouse, let AI detect and mask entities, load sample data and confirm target data types — then use a </span></span><span class="TextRun SCXW95773873 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW95773873 BCX8">Dataset</span></span><span class="TextRun SCXW95773873 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW95773873 BCX8"> to generate the volume you need and load it into tables or files.</span></span><span class="EOP Selected SCXW95773873 BCX8" data-ccp-props="{}"> </span></p>								</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-ddcad15 e-flex e-con-boxed e-con e-parent" data-id="ddcad15" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-909654c elementor-widget elementor-widget-heading" data-id="909654c" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Why is test data for Microsoft Fabric pipelines hard to manage? </h2>				</div>
				</div>
				<div class="elementor-element elementor-element-f269997 elementor-widget elementor-widget-text-editor" data-id="f269997" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="TextRun SCXW193107267 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW193107267 BCX8">In <span style="text-decoration: underline; color: #1967d2;"><a style="color: #1967d2; text-decoration: underline;" href="https://www.datagaps.com/microsoft-fabric-testing-automation/" target="_blank" rel="noopener">Microsoft Fabric</a></span>, pipelines and notebooks are only as good as the data used to test them. In a typical enterprise setting, developers work with minimal or dummy data, and QA teams manually copy production data or create new entries for staging. In large setups with 30 to 40 or more tables per testing cycle, this becomes unsustainable fast, especially when PII masking and relational integrity are also in scope.</span></span><span class="EOP SCXW193107267 BCX8" data-ccp-props="{}"> </span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-d15438e elementor-widget elementor-widget-text-editor" data-id="d15438e" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="TextRun SCXW45042379 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SpellingErrorV2Themed SCXW45042379 BCX8">Datagaps</span><span class="NormalTextRun SCXW45042379 BCX8"> Test Data Manager (TDM)</span></span><span class="TextRun SCXW45042379 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW45042379 BCX8"> addresses this directly. Its AI capabilities generate synthetic data that covers all production-level nuances without manual effort, reducing what could take weeks to under an hour.</span></span><span class="EOP Selected SCXW45042379 BCX8" data-ccp-props="{}"> </span></p>								</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-604e192 e-flex e-con-boxed e-con e-parent" data-id="604e192" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-3445573 elementor-widget elementor-widget-heading" data-id="3445573" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">How does Datagaps TDM generate synthetic data for Microsoft Fabric? </h2>				</div>
				</div>
				<div class="elementor-element elementor-element-f760d4f elementor-widget elementor-widget-text-editor" data-id="f760d4f" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="TextRun SCXW68732214 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SpellingErrorV2Themed SCXW68732214 BCX8">Datagaps</span><span class="NormalTextRun SCXW68732214 BCX8"> TDM has two core components: </span></span><strong><span class="TextRun SCXW68732214 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW68732214 BCX8">Data Models</span></span></strong><span class="TextRun SCXW68732214 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW68732214 BCX8"> and </span></span><strong><span class="TextRun SCXW68732214 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW68732214 BCX8">Datasets</span></span><span class="TextRun SCXW68732214 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW68732214 BCX8">.</span></span></strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-748de4c elementor-widget elementor-widget-text-editor" data-id="748de4c" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong><span class="TextRun SCXW78120396 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW78120396 BCX8">Data Models</span></span></strong><span class="TextRun SCXW78120396 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW78120396 BCX8"> are where you configure the data you want to generate for each table. This includes masking data, fetching sample data for generation, defining the target data type, and all other configuration requirements.</span></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-d7f17f0 elementor-widget elementor-widget-text-editor" data-id="d7f17f0" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong><span class="TextRun SCXW117414207 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW117414207 BCX8">Datasets</span></span></strong><span class="TextRun SCXW117414207 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW117414207 BCX8"> use the configured data model and generate data using AI/ML capabilities. You define the volume of data to be generated and then choose to either save it to an external location or load it directly into tables for testing.</span></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-b5672e4 elementor-widget elementor-widget-heading" data-id="b5672e4" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">How do you configure a TDM data model for Microsoft Fabric tables?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-7078a95 elementor-widget elementor-widget-heading" data-id="7078a95" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h3 class="elementor-heading-title elementor-size-default">Connect the Fabric lakehouse or warehouse </h3>				</div>
				</div>
				<div class="elementor-element elementor-element-ba1a932 elementor-widget elementor-widget-text-editor" data-id="ba1a932" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="TextRun SCXW19038420 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW19038420 BCX8">For demonstration purposes, two schemas were connected into the data model, </span><span class="NormalTextRun SCXW19038420 BCX8">containing</span><span class="NormalTextRun SCXW19038420 BCX8"> 5 to 10 dimension and fact tables, each with </span><span class="NormalTextRun SCXW19038420 BCX8">approximately 20</span><span class="NormalTextRun SCXW19038420 BCX8"> to 30 columns. When you connect your Fabric data source, you connect your specific </span><span class="NormalTextRun SpellingErrorV2Themed SCXW19038420 BCX8">lakehouse</span><span class="NormalTextRun SCXW19038420 BCX8"> or warehouse. The moment a data source is connected, </span><span class="NormalTextRun SpellingErrorV2Themed SCXW19038420 BCX8">Datagaps</span><span class="NormalTextRun SCXW19038420 BCX8"> fetches relevant metadata and automatically reflects it in the interface.</span></span><span class="EOP Selected SCXW19038420 BCX8" data-ccp-props="{}"> </span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-73bc907 elementor-widget elementor-widget-icon-box" data-id="73bc907" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							How are entities classified and PII masked? 						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						There is an additional column called Entity, which is used to define the type of a column and whether it needs to be masked. When any column is classified as one of the defined entities, Datagaps treats that data as PII or confidential and masks it during generation. Datagaps already supports GDPR, CCPA, and HIPAA-aligned workflows, which means data security concerns are addressed at the platform level.					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-fcb2e06 elementor-widget elementor-widget-text-editor" data-id="fcb2e06" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="TextRun SCXW151286073 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW151286073 BCX8">Entity detection can be done manually, or </span><span class="NormalTextRun SpellingErrorV2Themed SCXW151286073 BCX8">Datagaps</span><span class="NormalTextRun SCXW151286073 BCX8"> can handle it automatically using AI. There is a built-in </span><span class="NormalTextRun SCXW151286073 BCX8">option</span><span class="NormalTextRun SCXW151286073 BCX8"> to auto-detect entities for your tables.</span></span><span class="EOP Selected SCXW151286073 BCX8" data-ccp-props="{}"> </span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-aa24450 elementor-widget elementor-widget-text-editor" data-id="aa24450" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="NormalTextRun SCXW16242282 BCX8">When auto-detect entities </span><span class="NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW16242282 BCX8">is</span><span class="NormalTextRun SCXW16242282 BCX8"> used, </span><span class="NormalTextRun SpellingErrorV2Themed SCXW16242282 BCX8">Datagaps</span><span class="NormalTextRun SCXW16242282 BCX8"> applies its internal AI/ML models to classify each column into one of its predefined entity categories. Columns </span><span class="NormalTextRun SCXW16242282 BCX8">containing</span><span class="NormalTextRun SCXW16242282 BCX8"> names, payment details, addresses, date-time values, and similar data are auto-classified without requiring manual intervention. This is a particularly powerful feature when connecting tables for the first time and configuring them at scale. The platform can generate millions of records across formats with built-in masking.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-b36eca2 elementor-widget elementor-widget-icon-box" data-id="b36eca2" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							Why is sample data required? 						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						The only prerequisite is that some sample data must be loaded before using this feature. To auto-detect entities and generate synthetic data, existing data is required so the system can identify patterns in those values. You can filter that sample however you choose, whether using a specific set of values or a random selection. This sample enables the AI to understand the patterns needed for accurate synthetic data generation.					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-501c459 elementor-widget elementor-widget-icon-box" data-id="501c459" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h2 class="elementor-icon-box-title">
						<span  >
							How do you preserve referential integrity between tables?						</span>
					</h2>
				
									<p class="elementor-icon-box-description">
						For projects with relationships between tables, these need to be accounted for carefully. A foreign key, for example, must be mapped correctly and must be available in its source table. Otherwise, the generated data will lack referential integrity. Datagaps allows you to define these relationships and map columns to their parent column in another table. 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-603f30b elementor-widget elementor-widget-icon-box" data-id="603f30b" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							How much sample data does TDM use? 						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						By default, Datagaps takes 5,000 rows of sample data from the connected source. This can be increased or decreased after initial testing. It also allows you to add a WHERE clause to filter specific data for sample generation, which is useful when testing for a particular region or segment. 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-4176210 elementor-arrows-position-inside elementor-pagination-position-outside elementor-widget elementor-widget-image-carousel" data-id="4176210" data-element_type="widget" data-e-type="widget" data-settings="{&quot;slides_to_show&quot;:&quot;1&quot;,&quot;navigation&quot;:&quot;both&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;pause_on_interaction&quot;:&quot;yes&quot;,&quot;autoplay_speed&quot;:5000,&quot;infinite&quot;:&quot;yes&quot;,&quot;effect&quot;:&quot;slide&quot;,&quot;speed&quot;:500}" data-widget_type="image-carousel.default">
				<div class="elementor-widget-container">
							<div class="elementor-image-carousel-wrapper swiper" role="region" aria-roledescription="carousel" aria-label="Image Carousel" dir="ltr">
			<div class="elementor-image-carousel swiper-wrapper" aria-live="off">
								<div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="1 of 2"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S61-AI-Rules-generation-1.webp" alt="Select Generative AI Rule to generate rules using a prompt-driven workflow." /><figcaption class="elementor-image-carousel-caption">Select Generative AI Rule to generate rules using a prompt-driven workflow.</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="2 of 2"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S62-defining-success-criteria-and-severity.webp" alt="Define success criteria and severity to standardize rule outcomes." /><figcaption class="elementor-image-carousel-caption">Define success criteria and severity to standardize rule outcomes.</figcaption></figure></div>			</div>
												<div class="elementor-swiper-button elementor-swiper-button-prev" role="button" tabindex="0">
						<i aria-hidden="true" class="eicon-chevron-left"></i>					</div>
					<div class="elementor-swiper-button elementor-swiper-button-next" role="button" tabindex="0">
						<i aria-hidden="true" class="eicon-chevron-right"></i>					</div>
				
									<div class="swiper-pagination"></div>
									</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-5426b93 elementor-widget elementor-widget-icon-box" data-id="5426b93" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							How are target data types defined? 						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						Once that configuration is complete, the next step is defining the quality of your synthetic data. This is where you define the target data types for generation. For entity columns, there are predefined data types that Datagaps refers to during generation. This too does not need to be done manually. The auto-recommend feature assigns entities and correct target data types for each table. All that is required is a review to confirm accuracy. 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-ec0f73c elementor-widget elementor-widget-text-editor" data-id="ec0f73c" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="TextRun SCXW128503419 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW128503419 BCX8">When you generate your sample data, you will notice that certain columns are masked. These are the same columns for which an entity was defined in the configuration step.</span></span><span class="EOP Selected SCXW128503419 BCX8" data-ccp-props="{}"> </span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-036cecb elementor-arrows-position-inside elementor-pagination-position-outside elementor-widget elementor-widget-image-carousel" data-id="036cecb" data-element_type="widget" data-e-type="widget" data-settings="{&quot;slides_to_show&quot;:&quot;1&quot;,&quot;navigation&quot;:&quot;both&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;pause_on_interaction&quot;:&quot;yes&quot;,&quot;autoplay_speed&quot;:5000,&quot;infinite&quot;:&quot;yes&quot;,&quot;effect&quot;:&quot;slide&quot;,&quot;speed&quot;:500}" data-widget_type="image-carousel.default">
				<div class="elementor-widget-container">
							<div class="elementor-image-carousel-wrapper swiper" role="region" aria-roledescription="carousel" aria-label="Image Carousel" dir="ltr">
			<div class="elementor-image-carousel swiper-wrapper" aria-live="off">
								<div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="1 of 2"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S61-AI-Rules-generation-1.webp" alt="Select Generative AI Rule to generate rules using a prompt-driven workflow." /><figcaption class="elementor-image-carousel-caption">Select Generative AI Rule to generate rules using a prompt-driven workflow.</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="2 of 2"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S62-defining-success-criteria-and-severity.webp" alt="Define success criteria and severity to standardize rule outcomes." /><figcaption class="elementor-image-carousel-caption">Define success criteria and severity to standardize rule outcomes.</figcaption></figure></div>			</div>
												<div class="elementor-swiper-button elementor-swiper-button-prev" role="button" tabindex="0">
						<i aria-hidden="true" class="eicon-chevron-left"></i>					</div>
					<div class="elementor-swiper-button elementor-swiper-button-next" role="button" tabindex="0">
						<i aria-hidden="true" class="eicon-chevron-right"></i>					</div>
				
									<div class="swiper-pagination"></div>
									</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-607fcfd elementor-widget elementor-widget-icon-box" data-id="607fcfd" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							What is Fake Data in Datagaps TDM?						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						The real capability of synthetic data generation becomes apparent at this step. For columns containing names, payment details, or other entity types, the system automatically classifies the target type and sets the data up as realistic fake data. This is what Datagaps refers to as Fake Data. 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-7b1517e elementor-widget elementor-widget-text-editor" data-id="7b1517e" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="NormalTextRun SCXW39084132 BCX8">Fake data consists of AI or machine-generated values defined across multiple categories. </span><span class="NormalTextRun SpellingErrorV2Themed SCXW39084132 BCX8">Datagaps</span><span class="NormalTextRun SCXW39084132 BCX8"> maintains a predefined list of categories aligned with real-world data, and it classifies columns into one of those categories before generation. While the AI handles classification accurately in most cases, it is strongly recommended to review the target type of each column at this step. Verify that a column is not misclassified, for example, as an address when it </span><span class="NormalTextRun AdvancedProofingIssueV2Themed SCXW39084132 BCX8">actually contains</span><span class="NormalTextRun SCXW39084132 BCX8"> a name.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-e2594de elementor-widget elementor-widget-text-editor" data-id="e2594de" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="TextRun SCXW199547311 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW199547311 BCX8">Almost any category of data you can think of is predefined within TDM, including blood group, card details, age, email, contact information, and more. All of them can be mapped correctly to your tables without manual classification, and the AI generates these values as part of the synthetic data generation process.</span></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-a6e2e27 elementor-widget elementor-widget-icon-box" data-id="a6e2e27" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							Can you apply constraints, gender and locale options?						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						Yes. Constraints can also be applied during generation. For datetime columns, for example, you can define a specific range to ensure the generated values fall within a desired window.					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-fe9b4be elementor-widget elementor-widget-text-editor" data-id="fe9b4be" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="TextRun SCXW232524628 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW232524628 BCX8">If you want generated names to reflect a particular gender, that can be configured as well. And if you need the synthetic data to reflect details from a specific locale, that option is available too.</span></span><span class="EOP Selected SCXW232524628 BCX8" data-ccp-props="{}"> </span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-3c9462a elementor-arrows-position-inside elementor-pagination-position-outside elementor-widget elementor-widget-image-carousel" data-id="3c9462a" data-element_type="widget" data-e-type="widget" data-settings="{&quot;slides_to_show&quot;:&quot;1&quot;,&quot;navigation&quot;:&quot;both&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;pause_on_interaction&quot;:&quot;yes&quot;,&quot;autoplay_speed&quot;:5000,&quot;infinite&quot;:&quot;yes&quot;,&quot;effect&quot;:&quot;slide&quot;,&quot;speed&quot;:500}" data-widget_type="image-carousel.default">
				<div class="elementor-widget-container">
							<div class="elementor-image-carousel-wrapper swiper" role="region" aria-roledescription="carousel" aria-label="Image Carousel" dir="ltr">
			<div class="elementor-image-carousel swiper-wrapper" aria-live="off">
								<div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="1 of 3"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S71-Select-the-table-and-columns-to-scope-AI-rule-generation.webp" alt="Select the table and columns to scope AI rule generation" /><figcaption class="elementor-image-carousel-caption">Select the table and columns to scope AI rule generation</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="2 of 3"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S72-Provide-prompts-combining-generic-checks-and-domain-logic.webp" alt="Provide prompts combining generic checks and domain logic" /><figcaption class="elementor-image-carousel-caption">Provide prompts combining generic checks and domain logic</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="3 of 3"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S73-Rules-generated-automatically-based-on-selected-scope-and-prompts.webp" alt="Rules generated automatically based on selected scope and prompts" /><figcaption class="elementor-image-carousel-caption">Rules generated automatically based on selected scope and prompts</figcaption></figure></div>			</div>
												<div class="elementor-swiper-button elementor-swiper-button-prev" role="button" tabindex="0">
						<i aria-hidden="true" class="eicon-chevron-left"></i>					</div>
					<div class="elementor-swiper-button elementor-swiper-button-next" role="button" tabindex="0">
						<i aria-hidden="true" class="eicon-chevron-right"></i>					</div>
				
									<div class="swiper-pagination"></div>
									</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-9d6cf49 elementor-widget elementor-widget-icon-box" data-id="9d6cf49" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							Data model configuration at a glance 						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						All of the above configuration is done within the Data Model component of TDM. This can be done across all tables in a single pass before moving to the generation phase. <br><br>1. Go to the data model <br>

2. Use AI to auto-detect entities and verify them <br>

3. Load sample data <br>

4. Let AI define target types for synthetic data and verify again <br>

5. Make adjustments as required for enterprise needs 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-8fa536b elementor-widget elementor-widget-icon-box" data-id="8fa536b" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h2 class="elementor-icon-box-title">
						<span  >
							How do you generate and load synthetic data with TDM datasets? 						</span>
					</h2>
				
									<p class="elementor-icon-box-description">
						Once configuration is complete, the process moves to the Dataset component of TDM, where you choose the output destination, select tables, generate the data and load it into the target. 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-489743b elementor-widget elementor-widget-icon-box" data-id="489743b" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							Choose where the generated data is saved 						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						Here, you define where you want to save the generated data and how. This includes choosing whether to save the synthetic data to CSV files, load it directly into tables in an existing database, into a specific schema, and so on. 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-d6e247a elementor-widget elementor-widget-icon-box" data-id="d6e247a" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							Select tables and run generation 						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						Next, you select the tables for which you want to generate data, with the option to do this for all tables or only selected ones. 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-e4a9c14 elementor-widget elementor-widget-text-editor" data-id="e4a9c14" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span class="NormalTextRun SCXW29224212 BCX8">Data generation typically takes a few seconds to a few minutes, depending on the volume configured. For 100 or 1,000 rows, generation completes in approximately 5 seconds. When generating across multiple tables, </span><span class="NormalTextRun SpellingErrorV2Themed SCXW29224212 BCX8">Datagaps</span><span class="NormalTextRun SCXW29224212 BCX8"> processes them in parallel within the same </span><span class="NormalTextRun SCXW29224212 BCX8">time frame</span><span class="NormalTextRun SCXW29224212 BCX8">.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-a9a006c elementor-arrows-position-inside elementor-pagination-position-outside elementor-widget elementor-widget-image-carousel" data-id="a9a006c" data-element_type="widget" data-e-type="widget" data-settings="{&quot;slides_to_show&quot;:&quot;1&quot;,&quot;navigation&quot;:&quot;both&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;pause_on_interaction&quot;:&quot;yes&quot;,&quot;autoplay_speed&quot;:5000,&quot;infinite&quot;:&quot;yes&quot;,&quot;effect&quot;:&quot;slide&quot;,&quot;speed&quot;:500}" data-widget_type="image-carousel.default">
				<div class="elementor-widget-container">
							<div class="elementor-image-carousel-wrapper swiper" role="region" aria-roledescription="carousel" aria-label="Image Carousel" dir="ltr">
			<div class="elementor-image-carousel swiper-wrapper" aria-live="off">
								<div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="1 of 2"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S81-Review-generated-rules-including-SQL-logic-and-dimension-mapping-before-execution.webp" alt="Review generated rules, including SQL logic and dimension mapping, before execution" /><figcaption class="elementor-image-carousel-caption">Review generated rules, including SQL logic and dimension mapping, before execution</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="2 of 2"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S82-Rules-are-centrally-managed-within-the-data-model-for-review-and-execution.webp" alt="Rules are centrally managed within the data model for review and execution" /><figcaption class="elementor-image-carousel-caption">Rules are centrally managed within the data model for review and execution</figcaption></figure></div>			</div>
												<div class="elementor-swiper-button elementor-swiper-button-prev" role="button" tabindex="0">
						<i aria-hidden="true" class="eicon-chevron-left"></i>					</div>
					<div class="elementor-swiper-button elementor-swiper-button-next" role="button" tabindex="0">
						<i aria-hidden="true" class="eicon-chevron-right"></i>					</div>
				
									<div class="swiper-pagination"></div>
									</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-fc3a5f9 elementor-widget elementor-widget-icon-box" data-id="fc3a5f9" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							Load data into the target table or file 						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						Once data is generated, it can be loaded into the target table or file. If a table is selected as the target, the schemas must be clearly defined to avoid conflicts during insertion. 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-1e872cc elementor-widget elementor-widget-icon-box" data-id="1e872cc" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							What happens if sample data is missing? 						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						If sample data was not loaded for some tables during configuration, the tool will fail during generation and prompt you to go back and add sample data. This is by design. Sample data is what enables the system to identify patterns within your data so the output remains relevant to your use case.<br><br>When all items are configured correctly, data generation will succeed consistently. 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-75a1a0a elementor-arrows-position-inside elementor-pagination-position-outside elementor-widget elementor-widget-image-carousel" data-id="75a1a0a" data-element_type="widget" data-e-type="widget" data-settings="{&quot;slides_to_show&quot;:&quot;1&quot;,&quot;navigation&quot;:&quot;both&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;pause_on_interaction&quot;:&quot;yes&quot;,&quot;autoplay_speed&quot;:5000,&quot;infinite&quot;:&quot;yes&quot;,&quot;effect&quot;:&quot;slide&quot;,&quot;speed&quot;:500}" data-widget_type="image-carousel.default">
				<div class="elementor-widget-container">
							<div class="elementor-image-carousel-wrapper swiper" role="region" aria-roledescription="carousel" aria-label="Image Carousel" dir="ltr">
			<div class="elementor-image-carousel swiper-wrapper" aria-live="off">
								<div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="1 of 4"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S101-Evaluate-quality-at-the-column-level-based-on-executed-rules.webp" alt="Evaluate quality at the column level based on executed rules." /><figcaption class="elementor-image-carousel-caption">Evaluate quality at the column level based on executed rules.</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="2 of 4"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S102-Rule-reports-provide-pass-status-counts-and-execution-details.webp" alt="Rule reports provide pass status, counts, and execution details." /><figcaption class="elementor-image-carousel-caption">Rule reports provide pass status, counts, and execution details.</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="3 of 4"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S103-Failures-highlight-bad-records-and-provide-samples-to-accelerate-remediation.webp" alt="Failures highlight bad records and provide samples to accelerate remediation." /><figcaption class="elementor-image-carousel-caption">Failures highlight bad records and provide samples to accelerate remediation.</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="4 of 4"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://www.datagaps.com/wp-content/uploads/S104-Run-summary-consolidated-results-across-rules-columns-and-dimensions.webp" alt="Run summary consolidated results across rules, columns, and dimensions." /><figcaption class="elementor-image-carousel-caption">Run summary consolidated results across rules, columns, and dimensions.</figcaption></figure></div>			</div>
												<div class="elementor-swiper-button elementor-swiper-button-prev" role="button" tabindex="0">
						<i aria-hidden="true" class="eicon-chevron-left"></i>					</div>
					<div class="elementor-swiper-button elementor-swiper-button-next" role="button" tabindex="0">
						<i aria-hidden="true" class="eicon-chevron-right"></i>					</div>
				
									<div class="swiper-pagination"></div>
									</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-b881419 elementor-widget elementor-widget-icon-box" data-id="b881419" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

			
						<div class="elementor-icon-box-content">

									<h3 class="elementor-icon-box-title">
						<span  >
							Choose save behavior and confirm the load 						</span>
					</h3>
				
									<p class="elementor-icon-box-description">
						When loading into the target table, you can choose the save behavior: append, drop, or truncate. The appropriate choice depends on how you intend to proceed with testing once the data is available. 					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-98cc803 elementor-widget elementor-widget-text-editor" data-id="98cc803" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<ul><li><span class="TextRun SCXW170806998 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="auto"><span class="NormalTextRun SCXW170806998 BCX8">If the load is successful, a confirmation is shown. If not, </span><span class="NormalTextRun SpellingErrorV2Themed SCXW170806998 BCX8">Datagaps</span><span class="NormalTextRun SCXW170806998 BCX8"> provides logs so you can trace and resolve the exact issue. Loading of final synthetic data is straightforward whether you are saving to a file such as CSV or directly to a table. For table targets, </span><span class="NormalTextRun SCXW170806998 BCX8">validate</span><span class="NormalTextRun SCXW170806998 BCX8"> the schema and the process is complete.</span></span><span class="EOP Selected SCXW170806998 BCX8" data-ccp-props="{}"> </span></li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-a367d05 elementor-widget elementor-widget-heading" data-id="a367d05" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Conclusion </h2>				</div>
				</div>
				<div class="elementor-element elementor-element-e542658 elementor-widget elementor-widget-text-editor" data-id="e542658" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span data-contrast="auto">That is the complete process for generating synthetic data at scale for enterprise environments, regardless of the data source, whether Microsoft Fabric or others. Datagaps supports each step of the testing process and provides all the tools required for testing any part of an analytical workflow.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">The key differentiator is AI integration at every step. The same work done manually could take weeks to replicate data correctly, and even then, it would be difficult to introduce the same level of diversity, especially for edge cases and unexpected patterns.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">With AI-powered generation, teams can produce large volumes of synthetic data, introduce varied patterns and data rules, and run comprehensive testing of pipelines before anything reaches production.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-bf2f76e elementor-widget elementor-widget-text-editor" data-id="bf2f76e" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="text-decoration: underline;"><span style="color: #1967d2; text-decoration: underline;"><a style="color: #1967d2; text-decoration: underline;" href="https://www.datagaps.com/test-data-manager-trial-request/" target="_blank" rel="noopener"><span class="EOP Selected SCXW265958618 BCX8" data-ccp-props="{}"><span class="TextRun SCXW10738096 BCX8" lang="EN-IN" xml:lang="EN-IN" data-contrast="none"><span class="NormalTextRun SCXW10738096 BCX8">See how TDM generates masked, relationally consistent test data for Fabric →</span></span> </span></a></span></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-32908ef elementor-widget elementor-widget-heading" data-id="32908ef" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Frequently Asked Questions </h2>				</div>
				</div>
				<div class="elementor-element elementor-element-923e752 elementor-widget elementor-widget-eael-adv-accordion" data-id="923e752" data-element_type="widget" data-e-type="widget" data-widget_type="eael-adv-accordion.default">
				<div class="elementor-widget-container">
					            <div class="eael-adv-accordion" id="eael-adv-accordion-923e752" data-scroll-on-click="no" data-scroll-speed="300" data-accordion-id="923e752" data-accordion-type="accordion" data-toogle-speed="300">
            <div class="eael-accordion-list">
					<div id="faq-1" class="elementor-tab-title eael-accordion-header" tabindex="0" data-tab="1" aria-controls="elementor-tab-content-1531"><h3 class="eael-accordion-tab-title">How does Datagaps TDM generate synthetic data for Microsoft Fabric? </h3><i aria-hidden="true" class="fa-toggle fas fa-angle-down"></i></div><div id="elementor-tab-content-1531" class="eael-accordion-content clearfix" data-tab="1" aria-labelledby="faq-1"><p><span class="TextRun SCXW3880589 BCX8"><span class="NormalTextRun SCXW3880589 BCX8">TDM uses two components. In the Data Model you connect a Fabric </span><span class="NormalTextRun SpellingErrorV2Themed SCXW3880589 BCX8">lakehouse</span><span class="NormalTextRun SCXW3880589 BCX8"> or warehouse, classify entities, load sample </span><span class="NormalTextRun SCXW3880589 BCX8">data</span><span class="NormalTextRun SCXW3880589 BCX8"> and set target data types. In the Dataset you choose the volume, select </span><span class="NormalTextRun SCXW3880589 BCX8">tables</span><span class="NormalTextRun SCXW3880589 BCX8"> and save the output to files such as CSV or load it directly into tables. AI/ML capabilities generate the data from patterns in the sample.</span></span><span class="EOP Selected SCXW3880589 BCX8"> </span></p></div>
					</div><div class="eael-accordion-list">
					<div id="faq-2" class="elementor-tab-title eael-accordion-header" tabindex="0" data-tab="2" aria-controls="elementor-tab-content-1532"><h3 class="eael-accordion-tab-title">Does Datagaps TDM mask PII in synthetic test data?</h3><i aria-hidden="true" class="fa-toggle fas fa-angle-down"></i></div><div id="elementor-tab-content-1532" class="eael-accordion-content clearfix" data-tab="2" aria-labelledby="faq-2"><p><span class="NormalTextRun SCXW208588374 BCX8">Yes. When a column is classified as one of TDM&#8217;s defined entities, </span><span class="NormalTextRun SpellingErrorV2Themed SCXW208588374 BCX8">Datagaps</span><span class="NormalTextRun SCXW208588374 BCX8"> treats it as PII or confidential and masks it during generation. Entities can be set manually or auto-detected with AI, which classifies names, payment details, addresses and date-time values. </span><span class="NormalTextRun SpellingErrorV2Themed SCXW208588374 BCX8">Datagaps</span><span class="NormalTextRun SCXW208588374 BCX8"> supports GDPR, CCPA and HIPAA-aligned workflows.</span></p></div>
					</div><div class="eael-accordion-list">
					<div id="faq-3" class="elementor-tab-title eael-accordion-header" tabindex="0" data-tab="3" aria-controls="elementor-tab-content-1533"><h3 class="eael-accordion-tab-title">Why does TDM need sample data before generating synthetic data?</h3><i aria-hidden="true" class="fa-toggle fas fa-angle-down"></i></div><div id="elementor-tab-content-1533" class="eael-accordion-content clearfix" data-tab="3" aria-labelledby="faq-3"><p><span class="NormalTextRun SCXW221225326 BCX8">Sample data lets the AI </span><span class="NormalTextRun SCXW221225326 BCX8">identify</span><span class="NormalTextRun SCXW221225326 BCX8"> patterns in existing values so generated output stays relevant to your use case. By </span><span class="NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW221225326 BCX8">default</span><span class="NormalTextRun SCXW221225326 BCX8"> TDM takes 5,000 rows from the connected source, which you can increase, </span><span class="NormalTextRun SCXW221225326 BCX8">decrease</span><span class="NormalTextRun SCXW221225326 BCX8"> or filter with a WHERE clause. If sample data is missing for a table, generation fails by design and prompts you to add it.</span></p></div>
					</div><div class="eael-accordion-list">
					<div id="faq-4" class="elementor-tab-title eael-accordion-header" tabindex="0" data-tab="4" aria-controls="elementor-tab-content-1534"><h3 class="eael-accordion-tab-title">How does TDM keep referential integrity across related Fabric tables? </h3><i aria-hidden="true" class="fa-toggle fas fa-angle-down"></i></div><div id="elementor-tab-content-1534" class="eael-accordion-content clearfix" data-tab="4" aria-labelledby="faq-4"><p><span class="TextRun SCXW18591511 BCX8"><span class="NormalTextRun SCXW18591511 BCX8">TDM lets you define relationships between tables and map columns to their parent column in another table. A foreign key, for example, must be mapped correctly and must be available in its source table; </span><span class="NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW18591511 BCX8">otherwise</span><span class="NormalTextRun SCXW18591511 BCX8"> the generated data will lack referential integrity. Defining these mappings during data model configuration keeps related tables consistent.</span></span><span class="EOP Selected SCXW18591511 BCX8"> </span></p></div>
					</div><div class="eael-accordion-list">
					<div id="faq-5" class="elementor-tab-title eael-accordion-header" tabindex="0" data-tab="5" aria-controls="elementor-tab-content-1535"><h3 class="eael-accordion-tab-title">How fast is synthetic data generation with Datagaps TDM? </h3><i aria-hidden="true" class="fa-toggle fas fa-angle-down"></i></div><div id="elementor-tab-content-1535" class="eael-accordion-content clearfix" data-tab="5" aria-labelledby="faq-5"><p><span class="TextRun SCXW45868271 BCX8"><span class="NormalTextRun SCXW45868271 BCX8">Generation typically takes a few seconds to a few minutes, depending on the configured volume. For 100 or 1,000 rows it completes in approximately five seconds, and multiple tables are processed in parallel within the same </span><span class="NormalTextRun SCXW45868271 BCX8">time frame</span><span class="NormalTextRun SCXW45868271 BCX8">. The full workflow reduces what could take weeks of manual effort to under an hour.</span></span><span class="EOP Selected SCXW45868271 BCX8"> </span></p></div>
					</div></div>				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-62980c3 e-flex e-con-boxed e-con e-parent" data-id="62980c3" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-1ac3fec e-con-full e-flex e-con e-child" data-id="1ac3fec" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
		<div class="elementor-element elementor-element-f5d35f8 e-con-full e-flex e-con e-child" data-id="f5d35f8" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
				<div class="elementor-element elementor-element-184c126 elementor-widget-widescreen__width-initial elementor-widget elementor-widget-heading" data-id="184c126" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<span class="elementor-heading-title elementor-size-default">Get Started Today</span>				</div>
				</div>
				<div class="elementor-element elementor-element-4a9257d elementor-widget-widescreen__width-initial elementor-widget elementor-widget-heading" data-id="4a9257d" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Talk to a datagaps expert</h2>				</div>
				</div>
		<div class="elementor-element elementor-element-e2d718a e-con-full e-flex e-con e-child" data-id="e2d718a" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
				<div class="elementor-element elementor-element-0b52229 elementor-widget__width-auto home-btn-new elementor-widget elementor-widget-button" data-id="0b52229" data-element_type="widget" data-e-type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
									<div class="elementor-button-wrapper">
					<a class="elementor-button elementor-button-link elementor-size-sm" href="https://www.datagaps.com/request-a-demo/" target="_blank">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Get a Demo</span>
					</span>
					</a>
				</div>
								</div>
				</div>
				<div class="elementor-element elementor-element-7b1b3d1 elementor-widget__width-auto home-btn-new elementor-widget elementor-widget-button" data-id="7b1b3d1" data-element_type="widget" data-e-type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
									<div class="elementor-button-wrapper">
					<a class="elementor-button elementor-button-link elementor-size-sm" href="https://www.datagaps.com/contact-us/" target="_blank">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Contact Us</span>
					</span>
					</a>
				</div>
								</div>
				</div>
				</div>
				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-5da6591 e-flex e-con-boxed e-con e-parent" data-id="5da6591" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-a6d9f5b elementor-widget elementor-widget-html" data-id="a6d9f5b" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://www.datagaps.com/#organization",
      "name": "Datagaps",
      "url": "https://www.datagaps.com/",
      "logo": {
        "@type": "ImageObject",
        "@id": "https://www.datagaps.com/#logo",
        "url": "https://www.datagaps.com/wp-content/uploads/datagaps-logo-2.svg",
        "contentUrl": "https://www.datagaps.com/wp-content/uploads/datagaps-logo-2.svg"
      },
      "sameAs": [
        "https://www.linkedin.com/company/datagaps/",
        "https://twitter.com/datagapsteam",
        "https://www.youtube.com/user/datagaps",
        "https://www.instagram.com/datagapsinc/",
        "https://www.facebook.com/datagapsinc"
      ]
    },
    {
      "@type": "Person",
      "@id": "https://www.datagaps.com/#/person/rajmohan-achanta",
      "name": "RajMohan Achanta",
      "jobTitle": "Associate Product Manager",
      "description": "Associate Product Manager at Datagaps. Shapes the product experience across ETL Validator, BI Validator, and Data Quality Monitor.",
      "worksFor": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "url": "https://www.datagaps.com/blog/author/rajmohan/",
      "sameAs": [
        "https://www.linkedin.com/in/raj-mohan-achanta-41454b1a2/"
      ],
      "alternateName": "Raj Mohan Achanta",
      "image": "https://www.datagaps.com/wp-content/uploads/RajMohan-Achanta-150x150.png"
    },
    {
      "@type": "Person",
      "@id": "https://www.datagaps.com/#/person/avinash-keshri",
      "name": "Avinash Keshri",
      "jobTitle": "Head, Product Marketing",
      "description": "Head of Product Marketing at Datagaps and IIM Bangalore alumnus. 13+ years of experience in commercializing AI and data platforms across global markets.",
      "worksFor": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "alumniOf": {
        "@type": "CollegeOrUniversity",
        "name": "Indian Institute of Management Bangalore"
      },
      "url": "https://www.linkedin.com/in/avinashkeshri-iimb/",
      "sameAs": [
        "https://www.linkedin.com/in/avinashkeshri-iimb/"
      ],
      "image": "https://www.datagaps.com/wp-content/uploads/Avinash-Keshri-2-150x150.png"
    },
    {
      "@type": "BlogPosting",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#blogposting",
      "mainEntityOfPage": {
        "@type": "WebPage",
        "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/"
      },
      "url": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/",
      "headline": "How to Generate Data Quality Rules for Microsoft Fabric with AI",
      "alternativeHeadline": "Datagaps strengthens trust in Microsoft Fabric with AI-driven data quality rule generation",
      "description": "Learn how to generate and validate data quality rules for Microsoft Fabric in Datagaps using AI-assisted rule generation: connect Fabric, build a data model, scope prompts, review SQL rules, run validations and interpret DQ scores.",
      "inLanguage": "en",
      "datePublished": "2026-10-21T09:09:26+00:00",
      "dateModified": "2026-10-21T11:52:41+00:00",
      "author": [
        {
          "@id": "https://www.datagaps.com/#/person/rajmohan-achanta"
        },
        {
          "@id": "https://www.datagaps.com/#/person/avinash-keshri"
        }
      ],
      "publisher": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "image": {
        "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#featured-image"
      },
      "articleSection": "Data Quality",
      "keywords": "Microsoft Fabric, Data Quality, Data Validation, DataOps, AI Rule Generation",
      "about": [
        {
          "@type": "Thing",
          "name": "Microsoft Fabric"
        },
        {
          "@type": "Thing",
          "name": "Data quality"
        }
      ],
      "associatedMedia": [
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-01-connect-fabric"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-02-data-quality-section"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-03-data-model"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-04-baseline-dq-score"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-05-data-rules-wizard"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-06-generative-ai-rule"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-07-success-criteria-severity"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-08-select-columns"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-09-prompts"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-10-generating-rules"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-11-review-rules"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-12-rules-in-data-model"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-13-run-configuration"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-14-score-by-column"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-15-passing-rule-report"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-16-failing-rule-report"
        },
        {
          "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-17-run-summary"
        }
      ]
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#featured-image",
      "url": "https://www.datagaps.com/wp-content/uploads/Data-Quality-rules-for-MF-data-banner-1024x536.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/Data-Quality-rules-for-MF-data-banner-1024x536.webp",
      "width": 1024,
      "height": 536,
      "caption": "How to Generate Data Quality Rules for Microsoft Fabric with AI",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      }
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-01-connect-fabric",
      "url": "https://www.datagaps.com/wp-content/uploads/Modern-Data-Sources-Connector-Dashboard.png",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/Modern-Data-Sources-Connector-Dashboard.png",
      "name": "Modern Data Sources Connector Dashboard",
      "caption": "Connect Microsoft Fabric as a data source using available connectors",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/png"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-02-data-quality-section",
      "url": "https://www.datagaps.com/wp-content/uploads/Data-quality-sections-for-DQ-Score.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/Data-quality-sections-for-DQ-Score.webp",
      "name": "Data quality sections for DQ Score",
      "caption": "The Data Quality section provides access to DQ Score, Data Lineage, and other quality workflows.",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-03-data-model",
      "url": "https://www.datagaps.com/wp-content/uploads/Data-Model-to-organise-tables-for-rules-s3.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/Data-Model-to-organise-tables-for-rules-s3.webp",
      "name": "Data Model to organise tables for rules",
      "caption": "Create a data model to organize tables for rule creation and scoring.",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-04-baseline-dq-score",
      "url": "https://www.datagaps.com/wp-content/uploads/Generate-and-review-DQ-Score.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/Generate-and-review-DQ-Score.webp",
      "name": "Generate and review DQ Score",
      "caption": "Generate and review DQ Score",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-05-data-rules-wizard",
      "url": "https://www.datagaps.com/wp-content/uploads/Data-rules-wizard.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/Data-rules-wizard.webp",
      "name": "Data rules wizard",
      "caption": "Data rules wizard",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-06-generative-ai-rule",
      "url": "https://www.datagaps.com/wp-content/uploads/S61-AI-Rules-generation-1.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S61-AI-Rules-generation-1.webp",
      "name": "Select Generative AI Rule to generate rules using a prompt-driven workflow",
      "caption": "Select Generative AI Rule to generate rules using a prompt-driven workflow.",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-07-success-criteria-severity",
      "url": "https://www.datagaps.com/wp-content/uploads/S62-defining-success-criteria-and-severity.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S62-defining-success-criteria-and-severity.webp",
      "name": "Define success criteria and severity to standardize rule outcomes",
      "caption": "Define success criteria and severity to standardize rule outcomes.",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-08-select-columns",
      "url": "https://www.datagaps.com/wp-content/uploads/S71-Select-the-table-and-columns-to-scope-AI-rule-generation.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S71-Select-the-table-and-columns-to-scope-AI-rule-generation.webp",
      "name": "Select the table and columns to scope AI rule generation",
      "caption": "Select the table and columns to scope AI rule generation",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-09-prompts",
      "url": "https://www.datagaps.com/wp-content/uploads/S72-Provide-prompts-combining-generic-checks-and-domain-logic.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S72-Provide-prompts-combining-generic-checks-and-domain-logic.webp",
      "name": "Provide prompts combining generic checks and domain logic",
      "caption": "Provide prompts combining generic checks and domain logic",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-10-generating-rules",
      "url": "https://www.datagaps.com/wp-content/uploads/S73-Rules-generated-automatically-based-on-selected-scope-and-prompts.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S73-Rules-generated-automatically-based-on-selected-scope-and-prompts.webp",
      "name": "Rules generated automatically based on selected scope and prompts",
      "caption": "Rules generated automatically based on selected scope and prompts",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-11-review-rules",
      "url": "https://www.datagaps.com/wp-content/uploads/S81-Review-generated-rules-including-SQL-logic-and-dimension-mapping-before-execution.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S81-Review-generated-rules-including-SQL-logic-and-dimension-mapping-before-execution.webp",
      "name": "Review generated rules, including SQL logic and dimension mapping, before execution",
      "caption": "Review generated rules, including SQL logic and dimension mapping, before execution",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-12-rules-in-data-model",
      "url": "https://www.datagaps.com/wp-content/uploads/S82-Rules-are-centrally-managed-within-the-data-model-for-review-and-execution.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S82-Rules-are-centrally-managed-within-the-data-model-for-review-and-execution.webp",
      "name": "Rules are centrally managed within the data model for review and execution",
      "caption": "Rules are centrally managed within the data model for review and execution",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-13-run-configuration",
      "url": "https://www.datagaps.com/wp-content/uploads/Configure-execution-settings.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/Configure-execution-settings.webp",
      "name": "Configure execution settings",
      "caption": "Configure execution settings and where bad records should be stored.",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-14-score-by-column",
      "url": "https://www.datagaps.com/wp-content/uploads/S101-Evaluate-quality-at-the-column-level-based-on-executed-rules.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S101-Evaluate-quality-at-the-column-level-based-on-executed-rules.webp",
      "name": "Evaluate quality at the column level based on executed rules",
      "caption": "Evaluate quality at the column level based on executed rules.",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-15-passing-rule-report",
      "url": "https://www.datagaps.com/wp-content/uploads/S102-Rule-reports-provide-pass-status-counts-and-execution-details.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S102-Rule-reports-provide-pass-status-counts-and-execution-details.webp",
      "name": "Rule reports provide pass status, counts, and execution details",
      "caption": "Rule reports provide pass status, counts, and execution details.",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-16-failing-rule-report",
      "url": "https://www.datagaps.com/wp-content/uploads/S103-Failures-highlight-bad-records-and-provide-samples-to-accelerate-remediation.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S103-Failures-highlight-bad-records-and-provide-samples-to-accelerate-remediation.webp",
      "name": "Failures highlight bad records and provide samples to accelerate remediation",
      "caption": "Failures highlight bad records and provide samples to accelerate remediation.",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "ImageObject",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#img-17-run-summary",
      "url": "https://www.datagaps.com/wp-content/uploads/S104-Run-summary-consolidated-results-across-rules-columns-and-dimensions.webp",
      "contentUrl": "https://www.datagaps.com/wp-content/uploads/S104-Run-summary-consolidated-results-across-rules-columns-and-dimensions.webp",
      "name": "Run summary consolidated results across rules, columns, and dimensions",
      "caption": "Run summary consolidated results across rules, columns, and dimensions.",
      "creator": {
        "@id": "https://www.datagaps.com/#organization"
      },
      "encodingFormat": "image/webp"
    },
    {
      "@type": "FAQPage",
      "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/#faq",
      "isPartOf": {
        "@id": "https://www.datagaps.com/blog/how-to-generate-data-quality-rules-for-microsoft-fabric-with-ai/"
      },
      "mainEntity": [
        {
          "@type": "Question",
          "name": "How does Datagaps generate data quality rules for Microsoft Fabric tables?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Datagaps generates rules through the AI-assisted mode of its Data Rules Wizard. You select the Fabric table and columns, define success criteria and severity, and provide a generic prompt plus a domain prompt. Datagaps then returns rule suggestions with rule names, descriptions, mapped quality dimensions and SQL logic that identifies bad records."
          }
        },
        {
          "@type": "Question",
          "name": "What data quality checks are typical for a Microsoft Fabric gold layer?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Common checks include numeric constraints such as revenue greater than zero, format checks such as valid email patterns, null checks for required attributes, uniqueness checks to prevent duplicate keys, and cross-table consistency checks that reconcile datasets. A gold layer often holds dozens of tables with dozens of columns each, which is why manual implementation becomes hard to manage."
          }
        },
        {
          "@type": "Question",
          "name": "Should AI-generated data quality rules be reviewed before they run?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Yes. AI-generated rules should be reviewed before execution to confirm they align with internal standards and domain expectations. Review covers the rule name, description, mapped dimension and SQL logic. For production adoption, add a formal review workflow, especially for cross-table logic, and keep domain prompts in a shared repository per business domain."
          }
        },
        {
          "@type": "Question",
          "name": "What can you configure before running data quality validations on Fabric data?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Before execution, you configure how the run behaves: where bad records should be stored, parallel execution settings, and sampling limits for the bad data that is captured. These settings are applied to the rules managed centrally within the data model, so validations run consistently each time they are triggered."
          }
        },
        {
          "@type": "Question",
          "name": "How do you interpret Datagaps data quality results for Microsoft Fabric?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Results are reviewed at several levels: a column-wise DQ score based on executed rules, rule-level pass or fail outcomes, sample bad records for investigation, and a summary across rules, columns and dimensions. Start with the high-level scoring view, then examine a passing and a failing rule, and finish with the overall run summary."
          }
        }
      ]
    }
  ]
}
</script>				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-f8574ba e-flex e-con-boxed e-con e-parent" data-id="f8574ba" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-6b8079b e-con-full e-flex e-con e-child" data-id="6b8079b" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
		<div class="elementor-element elementor-element-86810af e-con-full e-flex e-con e-child" data-id="86810af" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
		<div class="elementor-element elementor-element-f437041 e-con-full e-flex e-con e-child" data-id="f437041" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-eaeece0 elementor-widget-laptop__width-initial elementor-widget elementor-widget-image" data-id="eaeece0" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" width="150" height="150" src="https://www.datagaps.com/wp-content/uploads/RajMohan-Achanta-150x150.png" class="attachment-thumbnail size-thumbnail wp-image-53799" alt="Raj Mohan Achanta" srcset="https://www.datagaps.com/wp-content/uploads/RajMohan-Achanta-150x150.png 150w, https://www.datagaps.com/wp-content/uploads/RajMohan-Achanta-300x300.png 300w, https://www.datagaps.com/wp-content/uploads/RajMohan-Achanta.png 504w" sizes="(max-width: 150px) 100vw, 150px" />															</div>
				</div>
		<div class="elementor-element elementor-element-ff250c2 e-con-full e-flex e-con e-child" data-id="ff250c2" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-f8a8b4d elementor-position-inline-end elementor-mobile-position-inline-start elementor-widget-laptop__width-initial elementor-view-default elementor-widget elementor-widget-icon-box" data-id="f8a8b4d" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

						<div class="elementor-icon-box-icon">
				<a href="https://www.linkedin.com/in/raj-mohan-achanta-41454b1a2/" class="elementor-icon" tabindex="-1" aria-label="RajMohan Achanta">
				<i aria-hidden="true" class="fab fa-linkedin-in"></i>				</a>
			</div>
			
						<div class="elementor-icon-box-content">

									<h5 class="elementor-icon-box-title">
						<a href="https://www.linkedin.com/in/raj-mohan-achanta-41454b1a2/" >
							RajMohan Achanta						</a>
					</h5>
				
									<p class="elementor-icon-box-description">
						Associate Product Manager, Datagaps					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-d390cfb elementor-widget elementor-widget-text-editor" data-id="d390cfb" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Associate Product Manager at Datagaps. Shapes the product experience across ETL Validator, BI Validator, and Data Quality Monitor.</p>								</div>
				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-a7960cb e-con-full e-flex e-con e-child" data-id="a7960cb" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-66b97d0 elementor-widget-laptop__width-initial elementor-widget elementor-widget-image" data-id="66b97d0" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" width="150" height="150" src="https://www.datagaps.com/wp-content/uploads/Avinash-Keshri-2-150x150.png" class="attachment-thumbnail size-thumbnail wp-image-54463" alt="Avinash&apos;s picture" srcset="https://www.datagaps.com/wp-content/uploads/Avinash-Keshri-2-150x150.png 150w, https://www.datagaps.com/wp-content/uploads/Avinash-Keshri-2-300x300.png 300w, https://www.datagaps.com/wp-content/uploads/Avinash-Keshri-2.png 504w" sizes="(max-width: 150px) 100vw, 150px" />															</div>
				</div>
		<div class="elementor-element elementor-element-5e8a351 e-con-full e-flex e-con e-child" data-id="5e8a351" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-6e0b636 elementor-position-inline-end elementor-mobile-position-inline-start elementor-view-default elementor-widget elementor-widget-icon-box" data-id="6e0b636" data-element_type="widget" data-e-type="widget" data-widget_type="icon-box.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-box-wrapper">

						<div class="elementor-icon-box-icon">
				<a href="https://www.linkedin.com/in/avinashkeshri-iimb/" class="elementor-icon" tabindex="-1" aria-label="Avinash Keshri">
				<i aria-hidden="true" class="fab fa-linkedin-in"></i>				</a>
			</div>
			
						<div class="elementor-icon-box-content">

									<h5 class="elementor-icon-box-title">
						<a href="https://www.linkedin.com/in/avinashkeshri-iimb/" >
							Avinash Keshri						</a>
					</h5>
				
									<p class="elementor-icon-box-description">
						Head, Product Marketing					</p>
				
			</div>
			
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-1e2303c elementor-widget elementor-widget-text-editor" data-id="1e2303c" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Head of Product Marketing at Datagaps and IIM Bangalore alumnus. 13+ years of experience in commercializing AI and data platforms across global markets.</p>								</div>
				</div>
				</div>
				</div>
				</div>
				</div>
					</div>
				</div>
				</div>
		<p>The post <a href="https://www.datagaps.com/blog/how-to-generate-synthetic-test-data-for-microsoft-fabric-with-tdm/">How to Generate Synthetic Test Data for Microsoft Fabric with TDM</a> appeared first on <a href="https://www.datagaps.com">Datagaps | Gen AI-Powered Automated Cloud Data Testing</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>