decouple CRUD and query workers