Over the past chapters, we've looked at a variety of different features that RethinkDB offers; we've seen how RethinkDB provides us with a rich API and how to use the API from Node.js. There is, however, one feature that we must talk about is Changefeeds.
Changefeeds allow you to run a query and subscribe to it so that when changes occur to it, your program gets notified about them. You maybe wondering why this is such a revolutionary feature. The reason is that traditionally, a client, in our case, a Node.js script, must continuously query the database to detect changes. This can result in the database becoming slow and your application risks becoming unresponsive. Changefeeds, on the contrary, allow RethinkDB to push updates directly to the client when changes occur. Why is this so useful? For starters, we can use Changefeeds to subscribe to a table and be notified when a value changes or when a document is added or removed from the table.