<?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 Re: Auto tuning of file size in Data Engineering</title>
    <link>https://community.databricks.com/t5/data-engineering/auto-tuning-of-file-size/m-p/122206#M46698</link>
    <description>&lt;P&gt;there could be several different reasons, but mainly, it's because grouping arbitrary data into some target file-size is well...&amp;nbsp;arbitrary.&lt;/P&gt;&lt;P&gt;Imagine I gave you a large container of sand and some emtpy buckets, and asked you to move the sand from the container to the buckets - aim for half full buckets. As you fill your buckets you realise, you have 3 half-full and only a small portion more. Do you redistribute everything to get to maybe 2/5 on four buckets? or 3/5 on three? or do you have the fourth with only a cup in it? Or 2 half-full and a third a bit over target?&lt;/P&gt;&lt;P&gt;Now this is a very simplistic example, but imagine now types or sand, colours, size of grains, etc and I asked you to make sure to redistribute the types of sand in a very specific way depending on its properties. This is now no longer a simple task, even for three buckets.&lt;/P&gt;&lt;P&gt;This is basically what file-size optimization (if you include partitioning, optimize etc) does. It redestributes everything neatly into buckets, but it is impossible to get the same size in each bucket, as the contents don't neatly divide how you ask it to. That's why it's a target - it's what the machine tries to aim for, but will always have outliers.&lt;/P&gt;&lt;P&gt;I hope this analogy helped &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
    <pubDate>Thu, 19 Jun 2025 06:46:47 GMT</pubDate>
    <dc:creator>loui_wentzel</dc:creator>
    <dc:date>2025-06-19T06:46:47Z</dc:date>
    <item>
      <title>Auto tuning of file size</title>
      <link>https://community.databricks.com/t5/data-engineering/auto-tuning-of-file-size/m-p/122155#M46678</link>
      <description>&lt;P&gt;Why maxFileSize and minFileSize are different from targetFileSize after optimization? What is the significance of targetFileSize?&amp;nbsp;&lt;/P&gt;&lt;P&gt;"numRemovedFiles": "2099",&lt;BR /&gt;"numRemovedBytes": "29658974681",&lt;BR /&gt;"p25FileSize": "29701688",&lt;BR /&gt;"numDeletionVectorsRemoved": "0",&lt;BR /&gt;"minFileSize": "19920357",&lt;BR /&gt;"numAddedFiles": "883",&lt;BR /&gt;"maxFileSize": "43475356",&lt;BR /&gt;"p75FileSize": "34394580",&lt;BR /&gt;"p50FileSize": "31978037",&lt;BR /&gt;"numAddedBytes": "28254074450"&lt;/P&gt;&lt;P&gt;targetFileSize: "33554432". Explain using the above information.&lt;/P&gt;</description>
      <pubDate>Wed, 18 Jun 2025 17:01:03 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/auto-tuning-of-file-size/m-p/122155#M46678</guid>
      <dc:creator>pooja_bhumandla</dc:creator>
      <dc:date>2025-06-18T17:01:03Z</dc:date>
    </item>
    <item>
      <title>Re: Auto tuning of file size</title>
      <link>https://community.databricks.com/t5/data-engineering/auto-tuning-of-file-size/m-p/122186#M46685</link>
      <description>&lt;P&gt;Depending on your table, running optimize or similar, it might be compute-benificial to have few size-outlies that are bigger or smaller than the target is a better solution, rather than hardsetting all the partitions to a set value. It's simply information that the smallest and biggest partition is&amp;nbsp;&lt;SPAN&gt;19920357 and&amp;nbsp;43475356 respectively, and the target was&amp;nbsp;33554432.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 18 Jun 2025 19:49:07 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/auto-tuning-of-file-size/m-p/122186#M46685</guid>
      <dc:creator>loui_wentzel</dc:creator>
      <dc:date>2025-06-18T19:49:07Z</dc:date>
    </item>
    <item>
      <title>Re: Auto tuning of file size</title>
      <link>https://community.databricks.com/t5/data-engineering/auto-tuning-of-file-size/m-p/122204#M46696</link>
      <description>&lt;P&gt;Why file size&amp;nbsp;&lt;SPAN&gt;bigger or smaller than the target is a better solution? What are the reasons for it?&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 19 Jun 2025 06:25:59 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/auto-tuning-of-file-size/m-p/122204#M46696</guid>
      <dc:creator>pooja_bhumandla</dc:creator>
      <dc:date>2025-06-19T06:25:59Z</dc:date>
    </item>
    <item>
      <title>Re: Auto tuning of file size</title>
      <link>https://community.databricks.com/t5/data-engineering/auto-tuning-of-file-size/m-p/122206#M46698</link>
      <description>&lt;P&gt;there could be several different reasons, but mainly, it's because grouping arbitrary data into some target file-size is well...&amp;nbsp;arbitrary.&lt;/P&gt;&lt;P&gt;Imagine I gave you a large container of sand and some emtpy buckets, and asked you to move the sand from the container to the buckets - aim for half full buckets. As you fill your buckets you realise, you have 3 half-full and only a small portion more. Do you redistribute everything to get to maybe 2/5 on four buckets? or 3/5 on three? or do you have the fourth with only a cup in it? Or 2 half-full and a third a bit over target?&lt;/P&gt;&lt;P&gt;Now this is a very simplistic example, but imagine now types or sand, colours, size of grains, etc and I asked you to make sure to redistribute the types of sand in a very specific way depending on its properties. This is now no longer a simple task, even for three buckets.&lt;/P&gt;&lt;P&gt;This is basically what file-size optimization (if you include partitioning, optimize etc) does. It redestributes everything neatly into buckets, but it is impossible to get the same size in each bucket, as the contents don't neatly divide how you ask it to. That's why it's a target - it's what the machine tries to aim for, but will always have outliers.&lt;/P&gt;&lt;P&gt;I hope this analogy helped &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 19 Jun 2025 06:46:47 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/auto-tuning-of-file-size/m-p/122206#M46698</guid>
      <dc:creator>loui_wentzel</dc:creator>
      <dc:date>2025-06-19T06:46:47Z</dc:date>
    </item>
  </channel>
</rss>

