12-29-2021 05:43 PM
Hi,
I have many "small" jobs than needs to be executed quickly and at a predictable low cost from several Azure Data Factory pipelines. For this reason, I configured a small single node cluster to execute those processes. For the moment, everything seems to run as expected and I get approximatively 30s execution for each job after the first execution.
However, based on the documentation, it seems as if my use case is not officially supported. Am I understanding this correctly? It this simply a warning or will I have potential issues with this solution?
01-03-2022 06:55 AM
Exactly what @Joseph Kambourakis said. Single node clusters are designed to be used for single-user machine learning use cases. Think of them as a laptop in the sky.
@E H your use case is really good, we get this all the time. We are working hard to bring serverless clusters to the Data Science & Engineer Workspace. Once we have those, you will get super fast startup time. Is that the ideal solution in your mind for your use case?
12-30-2021 09:29 AM
Hello again! As before, if, after a while, if the community does not respond, we'll get back to this.
12-30-2021 04:15 PM
In this sense they mean shared among many users. If you had 4 different users submitting jobs to a single node cluster you'd have some trouble with the resource balancing.
If what you're doing is currently working, keep doing it!
01-03-2022 06:55 AM
Exactly what @Joseph Kambourakis said. Single node clusters are designed to be used for single-user machine learning use cases. Think of them as a laptop in the sky.
@E H your use case is really good, we get this all the time. We are working hard to bring serverless clusters to the Data Science & Engineer Workspace. Once we have those, you will get super fast startup time. Is that the ideal solution in your mind for your use case?
01-03-2022 09:39 AM
Hi @Bilal Aslam
Serverless clusters would definitely help regarding the speed required for the small jobs of most of my clients.
That being said, most of these clients requires calculating the "worst case" for most technologies when presenting a business case.
Right now, I am able to do so using interactive clusters since I can assume the worst (744 hours) knowing that the jobs will be queued thus respecting budget if it happens.
Will it be possible to put quotas to achieve the same thing? (I.e ensure there no unexpected high charge such as an infinite loops caused by a user causing high cost instead of email alerts and custom scripts detecting such errors)
If this is achievable, this is exactly what we need.
Thanks
01-04-2022 02:36 AM
@E H we're definitely thinking about budgets and quotas for jobs. There are several things we can do, ranked in order of rough complexity-to-implement:
Thoughts on what you'd prefer?
01-04-2022 05:52 AM
@Bilal Aslam In my case, it usually depends on the customers and their SLA. Most of them usually do not have a "true" high SLA requirement thus prefer the jobs to be throttled when the actual cost is within a certain range of the budget instead of scaling indefinitely.
In an ideal world, solution 1 and 3 would be implemented. Option 3 would be configurable to optionally add throttling when required.
The throttling feature would be used to estimate the worst case.
Join a Regional User Group to connect with local Databricks users. Events will be happening in your city, and you won’t want to miss the chance to attend and share knowledge.
If there isn’t a group near you, start one and help create a community that brings people together.
Request a New Group