Как для каждого юзера обновлять выборку асинхронно?
Сокеты  правильное направление, можно и без node.js
для чтения на досуге:
https://habrahabr.ru/post/209864/
Посмотрите в сторону rethinkdb, эта БД умеет уведомлять приложение о изменении данных по любому запросу кроме агрегирующих
Но и для связи с фронтендом - websocket