/plushcap/analysis/datadog/engineering-making-fetch-happen-building-a-general-purpose-query-and-render-scheduler

Making Fetch Happen - Building a General-purpose Query & Render Scheduler

What's this blog post about?

The text discusses how Datadog developed a new query and render scheduler to optimize Dashboard performance. Initially designed for Dashboards, the scheduler was then generalized for use on any expensive task or fetch-heavy application. It consists of two modules: query scheduling and render scheduling. The query scheduler determines when data fetches occur, while the render scheduler controls when widgets are rendered. Both were initially heuristic-based but have been simplified to improve performance and reduce complexity. The new algorithm for query scheduling is governed by only six parameters and has resulted in a better distribution of tasks compared to the old algorithm. Meanwhile, the render scheduling algorithm uses the Browser Scheduling API to prioritize tasks based on their relevance and the browser's resources. This has significantly reduced the number and duration of widget renders, leading to a faster and more responsive UI. The team plans to continue monitoring performance metrics and tuning parameters for further optimization.

Company
Datadog

Date published
April 17, 2023

Author(s)
Cormac Flynn

Word count
1644

Hacker News points
1

Language
English


By Matt Makai. 2021-2024.