When I run syncdb, I notice a lot of tables created like:
django-kombu is providin
The celery task_state table, populated by the daemon celerycam, is just for monitoring purposes.
The other tables, like "crontabschedule" "intervals" etc. are for scheduling periodic tasks by using the django backend db. These tables are used when you launch celery in beat mode (-B) and when you have this var set in the settings
CELERYBEAT_SCHEDULER = "djcelery.schedulers.DatabaseScheduler"
In this way you tell celery to use the django db for schedule tasks.