La maggior parte dei database utilizza un approccio di tipo request-response unidirezionale: il client contatta il server e (eventualmente) si aspetta una risposta in cambio. Questo, in sostanza, impedisce al server di notificare un client su qualcosa; tecniche come il polling, esistono, ma hanno i loro svantaggi (come il carico pesante sul server e sulla rete).
D'altra parte, sembra che ti aspetti una comunicazione a due vie ; RethinkDB, già citato in un commento, è un esempio di un database che supporta questo, quindi potrebbe essere una soluzione per il problema che stai cercando di risolvere.
Un'altra soluzione potrebbe essere semplicemente tenere traccia delle modifiche all'interno della propria applicazione, al livello di accesso ai dati . A seconda della lingua / framework che utilizzi, questo potrebbe essere più o meno facile da implementare, nonché utilizzare tecnologie come WebSockets per propagare le modifiche agli utenti finali .
Infine, se devi tenere traccia delle modifiche a una tabella utilizzata in più applicazioni, puoi creare un servizio web che avrà diritti esclusivi per modificare questa tabella e fare in modo che tutte le altre applicazioni chiamino questo servizio invece di interrogare direttamente il database. Al momento della modifica, il servizio potrebbe utilizzare un servizio messaggi in coda per trasmettere il messaggio che indica che i dati sono stati modificati.