<?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 Possible to programmatically adjust Databricks instance pool more intelligently? in Administration &amp; Architecture</title>
    <link>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112843#M3133</link>
    <description>&lt;P&gt;We'd like to adopt Databricks instance pool in order to reduce instance-acquisition times (a significant contributor to our test latency). Based on my understanding of the docs, the main levers we can control are: min instance count, max instance count, and idle termination time.&lt;/P&gt;&lt;P&gt;However, our usage pattern is bursty: every 2 hours we run a full test suite, which means ~100 instances need to be acquired. After the test run is done, we release the instances (until the next ~2 hour run). Are there any options for managing the instance pool to better take advantage of the predictable bursty usage pattern?&lt;/P&gt;</description>
    <pubDate>Mon, 17 Mar 2025 19:56:44 GMT</pubDate>
    <dc:creator>mrstevegross</dc:creator>
    <dc:date>2025-03-17T19:56:44Z</dc:date>
    <item>
      <title>Possible to programmatically adjust Databricks instance pool more intelligently?</title>
      <link>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112843#M3133</link>
      <description>&lt;P&gt;We'd like to adopt Databricks instance pool in order to reduce instance-acquisition times (a significant contributor to our test latency). Based on my understanding of the docs, the main levers we can control are: min instance count, max instance count, and idle termination time.&lt;/P&gt;&lt;P&gt;However, our usage pattern is bursty: every 2 hours we run a full test suite, which means ~100 instances need to be acquired. After the test run is done, we release the instances (until the next ~2 hour run). Are there any options for managing the instance pool to better take advantage of the predictable bursty usage pattern?&lt;/P&gt;</description>
      <pubDate>Mon, 17 Mar 2025 19:56:44 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112843#M3133</guid>
      <dc:creator>mrstevegross</dc:creator>
      <dc:date>2025-03-17T19:56:44Z</dc:date>
    </item>
    <item>
      <title>Re: Possible to programmatically adjust Databricks instance pool more intelligently?</title>
      <link>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112845#M3134</link>
      <description>&lt;P class=""&gt;Hi &lt;a href="https://community.databricks.com/t5/user/viewprofilepage/user-id/142679"&gt;@mrstevegross&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P class=""&gt;I’d like to clarify how those &lt;SPAN class=""&gt;~100 instances&lt;/SPAN&gt; are used:&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Are all 100 instances required simultaneously&lt;/SPAN&gt; (fully parallel execution), or do they ramp up progressively based on test needs?&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;How long do the tests typically run&lt;/SPAN&gt; before the instances are released?&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;If all 100 instances are needed at once (fully parallel execution):&lt;/STRONG&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;• &lt;/SPAN&gt;&lt;STRONG&gt;Pre-warm the pool&lt;/STRONG&gt;&lt;SPAN class=""&gt;: Around &lt;/SPAN&gt;&lt;STRONG&gt;1h 55m before each test run, trigger 100 API calls&lt;/STRONG&gt;&lt;SPAN class=""&gt; to acquire instances ahead of time.&lt;BR /&gt;&lt;/SPAN&gt;•&lt;SPAN class=""&gt;&lt;STRONG&gt;Set idle_termination = 0&lt;/STRONG&gt;&lt;/SPAN&gt; to ensure instances shut down as soon as tests complete.&lt;/P&gt;&lt;P class=""&gt;•This guarantees minimal latency for instance allocation.&lt;/P&gt;&lt;P class=""&gt;&lt;STRONG&gt;If instance usage is progressive (some start earlier, some later):&lt;/STRONG&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;• &lt;/SPAN&gt;&lt;STRONG&gt;Adjust idle_termination_time&lt;/STRONG&gt;&lt;SPAN class=""&gt; so instances stay warm &lt;/SPAN&gt;&lt;STRONG&gt;long enough to complete dependent tasks&lt;/STRONG&gt;&lt;SPAN class=""&gt;, but don’t stay idle too long.&lt;BR /&gt;&lt;/SPAN&gt;•&lt;SPAN class=""&gt;&lt;STRONG&gt;Set a small min instance count&lt;/STRONG&gt;&lt;/SPAN&gt; to keep a few warm if the progressive ramp-up is predictable.&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;If you can share more about how your test execution scales over time, I’d be happy to refine the strategy further!&lt;/P&gt;&lt;P class=""&gt;&lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;BR /&gt;&lt;BR /&gt;Isi&lt;/P&gt;</description>
      <pubDate>Mon, 17 Mar 2025 20:34:41 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112845#M3134</guid>
      <dc:creator>Isi</dc:creator>
      <dc:date>2025-03-17T20:34:41Z</dc:date>
    </item>
    <item>
      <title>Re: Possible to programmatically adjust Databricks instance pool more intelligently?</title>
      <link>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112849#M3136</link>
      <description>&lt;P&gt;&amp;gt;&lt;STRONG&gt;If all 100 instances are needed at once (fully parallel execution):&lt;/STRONG&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;gt;•&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;STRONG&gt;Pre-warm the pool&lt;/STRONG&gt;&lt;SPAN class=""&gt;: Around&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;STRONG&gt;1h 55m before each test run, trigger 100 API calls&lt;/STRONG&gt;&lt;SPAN class=""&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;to acquire instances ahead of time.&lt;BR /&gt;&lt;/SPAN&gt;&amp;gt;•&lt;SPAN class=""&gt;&lt;STRONG&gt;Set idle_termination = 0&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;to ensure instances shut down as soon as tests complete.&lt;/P&gt;&lt;P class=""&gt;Which API call do you have in mind to "acquire" instances? (Looking at the &lt;A href="https://docs.databricks.com/api/workspace/instancepools" target="_blank"&gt;API docs&lt;/A&gt;&amp;nbsp;it's not obvious which call you have in mind)&lt;/P&gt;&lt;P class=""&gt;Thanks,&lt;/P&gt;&lt;P class=""&gt;--Steve&lt;/P&gt;</description>
      <pubDate>Mon, 17 Mar 2025 21:15:09 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112849#M3136</guid>
      <dc:creator>mrstevegross</dc:creator>
      <dc:date>2025-03-17T21:15:09Z</dc:date>
    </item>
    <item>
      <title>Re: Possible to programmatically adjust Databricks instance pool more intelligently?</title>
      <link>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112861#M3138</link>
      <description>&lt;P class=""&gt;Hi Steve,&lt;/P&gt;&lt;P class=""&gt;If the goal is to pre-warm 100 instances in the Databricks Instance Pool, you could create a temporary job that will request instances from the pool. This ensures that Databricks provisions the required instances before the actual test run.&lt;/P&gt;&lt;P class=""&gt;The cluster will force Databricks to allocate 100 instances from the pool. Since &lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;autotermination_minutes&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt; can be set to 10 (for example), it will shut down shortly after the instances are ready. Your actual test jobs will then be able to use the pre-warmed instances instantly.&lt;/P&gt;&lt;P class=""&gt;I think is and idea that could work and pre warm instances&lt;BR /&gt;&lt;BR /&gt;&lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;BR /&gt;&lt;BR /&gt;Isi&lt;/P&gt;</description>
      <pubDate>Mon, 17 Mar 2025 22:08:33 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112861#M3138</guid>
      <dc:creator>Isi</dc:creator>
      <dc:date>2025-03-17T22:08:33Z</dc:date>
    </item>
    <item>
      <title>Re: Possible to programmatically adjust Databricks instance pool more intelligently?</title>
      <link>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112865#M3140</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;If the goal is to pre-warm 100 instances in the Databricks Instance Pool, you could create a temporary job that will request instances from the pool. This ensures that Databricks provisions the required instances before the actual test run.&lt;P class=""&gt;The cluster will force Databricks to allocate 100 instances from the pool. Since &lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;autotermination_minutes&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt; can be set to 10 (for example), it will shut down shortly after the instances are ready. Your actual test jobs will then be able to use the pre-warmed instances instantly.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Yeah, that makes sense, and could be a workable tactic. Thanks!&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 18 Mar 2025 00:49:51 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/possible-to-programmatically-adjust-databricks-instance-pool/m-p/112865#M3140</guid>
      <dc:creator>mrstevegross</dc:creator>
      <dc:date>2025-03-18T00:49:51Z</dc:date>
    </item>
  </channel>
</rss>

