Как правильно организовать взаимодействие между Service и Activity?
я согласен с IceJOKER но  для хождения в бд порекомендовал бы использовать что то другое
например CursorLoader он наследуется от AsyncTaskLoader и в связке с ContentProvider приносит в нашу жизнь очень приятную магию и прекрасное быстродействие из коробки))
или если вы не хотите использовать отвратительное api ContentProvider посмотрите в сторону rxjava
https://developer.android.com/guide/components/ser...
можете также с помощью broadcastreceiver
Слушайтесь Олег Гамега , дельный совет