GitHub user dosubot[bot] added a comment to the discussion: Async Querying Not 
Working

<!-- Answer -->
Yes, you can set different refresh frequencies for different tags by defining 
multiple entries in your Celery beat_schedule, each with its own crontab and 
tags. For example:

```python
from celery.schedules import crontab

beat_schedule = {
    'cache-warmup-core-hourly': {
        'task': 'cache-warmup',
        'schedule': crontab(minute=0, hour='*'),  # every hour
        'kwargs': {
            'strategy_name': 'dashboard_tags',
            'tags': ['core'],
        },
    },
    'cache-warmup-marketing-daily': {
        'task': 'cache-warmup',
        'schedule': crontab(minute=30, hour=2),  # daily at 2:30am
        'kwargs': {
            'strategy_name': 'dashboard_tags',
            'tags': ['marketing'],
        },
    },
}
```

Each entry is independent: just give each one a unique name, set the schedule 
you want, and specify the tags to target. Superset’s cache warmup will run each 
schedule as configured, refreshing only dashboards/charts with the specified 
tags at the specified times 
([reference](https://github.com/apache/superset/blob/829e4d92d91ceae4b43b1ed3b063ffe45377799c/superset/tasks/cache.py)).

A few best practices: if a dashboard or chart has multiple tags that overlap 
between schedules, it will be refreshed by each schedule, so monitor for 
redundant refreshes and system load. Use descriptive schedule names and avoid 
excessive overlap in tags or very aggressive schedules to keep things 
manageable.

Let me know if you need more advanced scheduling or run into any issues!


<!-- Dosu Comment Footer -->
*To reply, just mention [@dosu](https://go.dosu.dev/dosubot).*

---
<sup>How did I do? 
[Good](https://app.dosu.dev/response-feedback/6612ca3f-a945-4d77-b3d5-abda38742da2?feedback_type=great_response)
 | 
[Irrelevant](https://app.dosu.dev/response-feedback/6612ca3f-a945-4d77-b3d5-abda38742da2?feedback_type=irrelevant_answer)
 | 
[Incorrect](https://app.dosu.dev/response-feedback/6612ca3f-a945-4d77-b3d5-abda38742da2?feedback_type=incorrect_sources)
 | 
[Verbose](https://app.dosu.dev/response-feedback/6612ca3f-a945-4d77-b3d5-abda38742da2?feedback_type=too_verbose)
 | 
[Hallucination](https://app.dosu.dev/response-feedback/6612ca3f-a945-4d77-b3d5-abda38742da2?feedback_type=hallucination)
 | [Report 
🐛](https://app.dosu.dev/response-feedback/6612ca3f-a945-4d77-b3d5-abda38742da2?feedback_type=bug_report)
 | 
[Other](https://app.dosu.dev/response-feedback/6612ca3f-a945-4d77-b3d5-abda38742da2?feedback_type=other)</sup>&nbsp;&nbsp;[![Chat
 with 
Dosu](https://dosu.dev/dosu-chat-badge.svg)](https://app.dosu.dev/a28d3c7e-a9d3-459e-9fb6-3a6f9ff4f357/ask?utm_source=github)&
 nbsp;[![Join 
Discord](https://img.shields.io/badge/join-5865F2?logo=discord&logoColor=white&label=)](https://go.dosu.dev/discord-bot)&nbsp;[![Share
 on 
X](https://img.shields.io/badge/X-share-black)](https://twitter.com/intent/tweet?text=%40dosu_ai%20helped%20me%20solve%20this%20issue!&url=https%3A//github.com/apache/superset/discussions/34382)

GitHub link: 
https://github.com/apache/superset/discussions/34382#discussioncomment-13917981

----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: 
notifications-unsubscr...@superset.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org
For additional commands, e-mail: notifications-h...@superset.apache.org

Reply via email to