<?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 DLT pipeline observability questions (and maybe suggestions) in Data Engineering</title>
    <link>https://community.databricks.com/t5/data-engineering/dlt-pipeline-observability-questions-and-maybe-suggestions/m-p/99344#M39976</link>
    <description>&lt;P&gt;&lt;SPAN&gt;All my questions is around this code block&lt;/SPAN&gt;&lt;/P&gt;&lt;LI-CODE lang="python"&gt;&lt;a href="https://community.databricks.com/t5/user/viewprofilepage/user-id/97035"&gt;@Dlt&lt;/a&gt;.append_flow(target=”target_table”):
def flow_01():
  df = spark.readStream.table(“table_01”)

@dlt.append_flow(target=”target_table”):
def flow_02():
  df = spark.readStream.table(“table_02”)&lt;/LI-CODE&gt;&lt;P&gt;&lt;STRONG&gt;The first question is can I manually check or update or delete the checkpoint of stream table reading in the above code?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I suppose there is no way of specifing the checkpoint location because I cannot find any document about this feature. I try to find resource under the &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/en/structured-streaming/checkpoints.html" target="_blank"&gt;&lt;SPAN&gt;Structured Streaming checkpoints&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN&gt; or &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/en/delta-live-tables/configure-pipeline.html" target="_blank"&gt;&lt;SPAN&gt;Configure a Delta Live Tables pipeline&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN&gt; but nothing there.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Why I want to do this is because I want to do some troubleshooting. For example, I want to monitor the daily data reading from a specify streaming table, like how much data has been read this time, start from where ended at where. Also if something wrong goes wrong, I can delete the checkpoint as a reset measurement. There is a full refresh can solve this problem but if I can access to the checkpoint it may give me lots insight about the pipeline is running.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;The second question is similar, is there a way to monitor the append_flow behavior, like how much data flow the source table to the target table on the daily job?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The reason I want this is because, after all the append flow process accomplished what I got from the target table is only a total incremental number for this time. I cannot differentiate each individual flow contributing how much data or how much time they cost individually&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Is there any feature I ignored or I can referenced to accomplish my goal? Or do we have any plan to achieve these feature in the future?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 19 Nov 2024 14:29:24 GMT</pubDate>
    <dc:creator>guangyi</dc:creator>
    <dc:date>2024-11-19T14:29:24Z</dc:date>
    <item>
      <title>DLT pipeline observability questions (and maybe suggestions)</title>
      <link>https://community.databricks.com/t5/data-engineering/dlt-pipeline-observability-questions-and-maybe-suggestions/m-p/99344#M39976</link>
      <description>&lt;P&gt;&lt;SPAN&gt;All my questions is around this code block&lt;/SPAN&gt;&lt;/P&gt;&lt;LI-CODE lang="python"&gt;&lt;a href="https://community.databricks.com/t5/user/viewprofilepage/user-id/97035"&gt;@Dlt&lt;/a&gt;.append_flow(target=”target_table”):
def flow_01():
  df = spark.readStream.table(“table_01”)

@dlt.append_flow(target=”target_table”):
def flow_02():
  df = spark.readStream.table(“table_02”)&lt;/LI-CODE&gt;&lt;P&gt;&lt;STRONG&gt;The first question is can I manually check or update or delete the checkpoint of stream table reading in the above code?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I suppose there is no way of specifing the checkpoint location because I cannot find any document about this feature. I try to find resource under the &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/en/structured-streaming/checkpoints.html" target="_blank"&gt;&lt;SPAN&gt;Structured Streaming checkpoints&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN&gt; or &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/en/delta-live-tables/configure-pipeline.html" target="_blank"&gt;&lt;SPAN&gt;Configure a Delta Live Tables pipeline&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN&gt; but nothing there.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Why I want to do this is because I want to do some troubleshooting. For example, I want to monitor the daily data reading from a specify streaming table, like how much data has been read this time, start from where ended at where. Also if something wrong goes wrong, I can delete the checkpoint as a reset measurement. There is a full refresh can solve this problem but if I can access to the checkpoint it may give me lots insight about the pipeline is running.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;The second question is similar, is there a way to monitor the append_flow behavior, like how much data flow the source table to the target table on the daily job?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The reason I want this is because, after all the append flow process accomplished what I got from the target table is only a total incremental number for this time. I cannot differentiate each individual flow contributing how much data or how much time they cost individually&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Is there any feature I ignored or I can referenced to accomplish my goal? Or do we have any plan to achieve these feature in the future?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 19 Nov 2024 14:29:24 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/dlt-pipeline-observability-questions-and-maybe-suggestions/m-p/99344#M39976</guid>
      <dc:creator>guangyi</dc:creator>
      <dc:date>2024-11-19T14:29:24Z</dc:date>
    </item>
    <item>
      <title>Re: DLT pipeline observability questions (and maybe suggestions)</title>
      <link>https://community.databricks.com/t5/data-engineering/dlt-pipeline-observability-questions-and-maybe-suggestions/m-p/99600#M40039</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.databricks.com/t5/user/viewprofilepage/user-id/109070"&gt;@guangyi&lt;/a&gt;&amp;nbsp;, I'll be looking into this, and I'll get back to you with an answer&lt;/P&gt;</description>
      <pubDate>Thu, 21 Nov 2024 11:03:29 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/dlt-pipeline-observability-questions-and-maybe-suggestions/m-p/99600#M40039</guid>
      <dc:creator>Nam_Nguyen</dc:creator>
      <dc:date>2024-11-21T11:03:29Z</dc:date>
    </item>
    <item>
      <title>Re: DLT pipeline observability questions (and maybe suggestions)</title>
      <link>https://community.databricks.com/t5/data-engineering/dlt-pipeline-observability-questions-and-maybe-suggestions/m-p/99750#M40080</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.databricks.com/t5/user/viewprofilepage/user-id/109070"&gt;@guangyi&lt;/a&gt;&amp;nbsp;, I am getting back to you with some insights&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Regarding your first question about checkpointing
&lt;UL&gt;
&lt;LI&gt;You can manually check the checkpointing location of your stream table. The checkpoints of your Delta Live Tables are under &lt;STRONG&gt;Storage location&amp;nbsp;&lt;/STRONG&gt;in &lt;STRONG&gt;Destination&lt;/STRONG&gt; of &lt;STRONG&gt;Pipeline settings.&amp;nbsp;&lt;/STRONG&gt;Each table gets a dedicated directory under &amp;lt;storage_location&amp;gt;/checkpoints/&amp;lt;dlt_table_name&amp;gt;&lt;/LI&gt;
&lt;LI&gt;As for update or delete the checkpointing, it's not technically feasible AFAIK, and it's not something that we would recommend either. It could create some unexpected behavior of your stream pipelines, and it'll be difficult to troubleshoot this type of error.&lt;/LI&gt;
&lt;LI&gt;To closely monitor your streaming pipelines, there are some useful information that you can find in the event log of Delta Live Tables (some example here&amp;nbsp;&lt;A href="https://docs.databricks.com/en/delta-live-tables/observability.html" target="_blank"&gt;https://docs.databricks.com/en/delta-live-tables/observability.html&lt;/A&gt;). For example, you can query the event log (it can either be in Hive metastore or Unity Catalog) and find the timestamp where each events is processed. In addition, you can create your custom monitoring rules via event hooks &lt;A href="https://docs.databricks.com/en/delta-live-tables/event-hooks.html" target="_blank"&gt;https://docs.databricks.com/en/delta-live-tables/event-hooks.html&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;LI&gt;For your second question on the append flow, there isn't any out-of-the-box solution to differentiate the contribution of different flows, but I encourage you to look into the event log of the target table. You can check the event log of your table in Unity Catalog by querying&amp;nbsp;
&lt;PRE&gt;&lt;SPAN class="k"&gt;SELECT&lt;/SPAN&gt; &lt;SPAN class="o"&gt;*&lt;/SPAN&gt; &lt;SPAN class="k"&gt;FROM&lt;/SPAN&gt; &lt;SPAN class="n"&gt;event_log&lt;/SPAN&gt;&lt;SPAN class="p"&gt;(&lt;/SPAN&gt;&lt;SPAN class="k"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN class="p"&gt;(&lt;/SPAN&gt;&lt;SPAN class="n"&gt;my_catalog&lt;/SPAN&gt;&lt;SPAN class="p"&gt;.&lt;/SPAN&gt;&lt;SPAN class="n"&gt;my_schema&lt;/SPAN&gt;&lt;SPAN class="p"&gt;.&lt;/SPAN&gt;&lt;SPAN class="n"&gt;table1&lt;/SPAN&gt;&lt;SPAN class="p"&gt;))&lt;BR /&gt;&lt;/SPAN&gt;&lt;/PRE&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;I hope that my answers are clear and can address some of your points. If you want to discuss further, please kindly let me know!&lt;/P&gt;</description>
      <pubDate>Fri, 22 Nov 2024 09:50:52 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/dlt-pipeline-observability-questions-and-maybe-suggestions/m-p/99750#M40080</guid>
      <dc:creator>Nam_Nguyen</dc:creator>
      <dc:date>2024-11-22T09:50:52Z</dc:date>
    </item>
  </channel>
</rss>

