<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Serving Tableau and Databricks Dashboards from One Gold Layer in Community Articles</title>
    <link>https://community.databricks.com/t5/community-articles/serving-tableau-and-databricks-dashboards-from-one-gold-layer/m-p/160844#M1326</link>
    <description>&lt;P&gt;Part 5 - the final post in my enterprise data platform series - is up. This one is about what actually happened when we connected BI tools to the Views layer.&lt;/P&gt;&lt;P&gt;We had two tools: Tableau for the finance team's analytical workbooks, and Databricks Dashboards for operational reporting. Both connect to the same Unity Catalog views. No logic duplicated in either tool.&lt;/P&gt;&lt;P&gt;What the post covers:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;Live vs Extract tradeoffs&lt;/STRONG&gt; - we defaulted to Live for everything and immediately hit 90-second query times from Tableau's generated SQL. Switched high-complexity analytical workbooks to scheduled Extracts&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;The DECIMAL (18,2) precision issue&lt;/STRONG&gt; - Tableau attempts to cast these to FLOAT in certain chart types, losing precision. Fixed with explicit CAST to DOUBLE in Tableau-specific view variants&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Partition scan problem&lt;/STRONG&gt; - Tableau-generated queries bypassing partition pruning, and how embedding explicit WHERE predicates in view definitions fixed it&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Compute separation&lt;/STRONG&gt; - batch Extract jobs competing with interactive queries at 9am, and why we split into dedicated Interactive and Batch SQL Warehouses&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Unity Catalog governing both tools from one definition&lt;/STRONG&gt; - access controls, row filters, and column masking defined once, inherited by both tools automatically&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;The series wrap-up is in this post too - five parts condensed into one paragraph if you want the full picture before deciding which parts to read.&lt;/P&gt;&lt;P&gt;Full post on Medium: &lt;A href="https://medium.com/@savlahanish/tableau-and-databricks-dashboards-from-one-gold-layer-no-duplication-heres-how-e6e309b66837" target="_blank"&gt;https://medium.com/@savlahanish/tableau-and-databricks-dashboards-from-one-gold-layer-no-duplication-heres-how-e6e309b66837&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Happy to answer questions on any of the decisions - particularly around the Live vs Extract choice or the compute separation setup.&lt;/P&gt;</description>
    <pubDate>Mon, 29 Jun 2026 11:29:25 GMT</pubDate>
    <dc:creator>savlahanish27</dc:creator>
    <dc:date>2026-06-29T11:29:25Z</dc:date>
    <item>
      <title>Serving Tableau and Databricks Dashboards from One Gold Layer</title>
      <link>https://community.databricks.com/t5/community-articles/serving-tableau-and-databricks-dashboards-from-one-gold-layer/m-p/160844#M1326</link>
      <description>&lt;P&gt;Part 5 - the final post in my enterprise data platform series - is up. This one is about what actually happened when we connected BI tools to the Views layer.&lt;/P&gt;&lt;P&gt;We had two tools: Tableau for the finance team's analytical workbooks, and Databricks Dashboards for operational reporting. Both connect to the same Unity Catalog views. No logic duplicated in either tool.&lt;/P&gt;&lt;P&gt;What the post covers:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;Live vs Extract tradeoffs&lt;/STRONG&gt; - we defaulted to Live for everything and immediately hit 90-second query times from Tableau's generated SQL. Switched high-complexity analytical workbooks to scheduled Extracts&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;The DECIMAL (18,2) precision issue&lt;/STRONG&gt; - Tableau attempts to cast these to FLOAT in certain chart types, losing precision. Fixed with explicit CAST to DOUBLE in Tableau-specific view variants&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Partition scan problem&lt;/STRONG&gt; - Tableau-generated queries bypassing partition pruning, and how embedding explicit WHERE predicates in view definitions fixed it&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Compute separation&lt;/STRONG&gt; - batch Extract jobs competing with interactive queries at 9am, and why we split into dedicated Interactive and Batch SQL Warehouses&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Unity Catalog governing both tools from one definition&lt;/STRONG&gt; - access controls, row filters, and column masking defined once, inherited by both tools automatically&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;The series wrap-up is in this post too - five parts condensed into one paragraph if you want the full picture before deciding which parts to read.&lt;/P&gt;&lt;P&gt;Full post on Medium: &lt;A href="https://medium.com/@savlahanish/tableau-and-databricks-dashboards-from-one-gold-layer-no-duplication-heres-how-e6e309b66837" target="_blank"&gt;https://medium.com/@savlahanish/tableau-and-databricks-dashboards-from-one-gold-layer-no-duplication-heres-how-e6e309b66837&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Happy to answer questions on any of the decisions - particularly around the Live vs Extract choice or the compute separation setup.&lt;/P&gt;</description>
      <pubDate>Mon, 29 Jun 2026 11:29:25 GMT</pubDate>
      <guid>https://community.databricks.com/t5/community-articles/serving-tableau-and-databricks-dashboards-from-one-gold-layer/m-p/160844#M1326</guid>
      <dc:creator>savlahanish27</dc:creator>
      <dc:date>2026-06-29T11:29:25Z</dc:date>
    </item>
  </channel>
</rss>

