Live data from Hacker News

Advancing the realtime web

rethinkdb.com

11–20 of 51 posts

Re: Advancing the realtime web

#11
post #10

Could someone elaborate on the use-cases that rethinkdb tries to solve? As a DB newb, what are the advantages of rethinkdb vs. other NoSQL DBs like Mongo. Why and where would I use rethink instead of an SQL DB like postgres?

Check out these two links, they might help:

  - http://rethinkdb.com/docs/rethinkdb-vs-mongodb/
  - http://rethinkdb.com/docs/comparison-tables/

Re: Advancing the realtime web

#12
post #10

Could someone elaborate on the use-cases that rethinkdb tries to solve? As a DB newb, what are the advantages of rethinkdb vs. other NoSQL DBs like Mongo. Why and where would I use rethink instead of an SQL DB like postgres?

Just three reasons among others:

1. Joins (real server-side joins) - so you can have many-to-many relations in your data (and nested arrays are a poor answer to this problem)

2. Awesome query language - No strings to concatenate, no strings to escape, no JSON objects with special keys, just plain JavaScript/Python/Ruby/etc.

3. Schemaless - Faster to prototype things, to adapt to a third party data changing.

Re: Advancing the realtime web

#13
post #2

The article talks about mobile app feeds, and I understand how I could build a system rpc server for mobile and desktop apps. How would this work for web apps? The headline says "real-time web!" Compare this solution to push it all the way through the web stack: http://engineering.imvu.com/2014/12/27/the-real-time-web-in-...

I use WebSockets. You could also use Server Sent Events.

Re: Advancing the realtime web

#14
The article discusses how RethinkDB differs from "realtime sync services" such as Pusher, PubNub, and Firebase.

While comparing against Firebase makes sense because it's an alternative database, I see Pusher and PubNub (and similar pubsub services, such as Fanout) as being complementary to RethinkDB.

Re: Advancing the realtime web

#15
I wonder if it would be feasible to add this sort of real-time feed to a conventional RDBMS like PostgreSQL. This feature would be quite useful for at least one of my projects, but I'm not sure I want to give up a mature SQL-based DBMS for something relatively unproven like RethinkDB.

Re: Advancing the realtime web

#16

The article discusses how RethinkDB differs from "realtime sync services" such as Pusher, PubNub, and Firebase. While comparing against Firebase makes sense because it's an alternative database, I see Pusher and PubNub (and similar pubsub services, such as Fanout) as being complementary to RethinkDB.

This is tricky because PubNub recently added some data storage capabilities, and Pusher and fanout might follow suit. Also, being able to get a feed on queries might ultimately make services like Pusher unnecessary in many traditional situations, but this isn't immediately obvious. We'll find out soon how this develops!

Re: Advancing the realtime web

#17

I wonder if it would be feasible to add this sort of real-time feed to a conventional RDBMS like PostgreSQL. This feature would be quite useful for at least one of my projects, but I'm not sure I want to give up a mature SQL-based DBMS for something relatively unproven like RethinkDB.

You could probably get a poor's man version of this by setting up materialized views, a trigger on those views, and then write code in the trigger that pushes updates onto a queueing system. It wouldn't be quite as convenient, but would probably accomplish what you want in many situations.

Re: Advancing the realtime web

#18

I wonder if it would be feasible to add this sort of real-time feed to a conventional RDBMS like PostgreSQL. This feature would be quite useful for at least one of my projects, but I'm not sure I want to give up a mature SQL-based DBMS for something relatively unproven like RethinkDB.

You could probably get a poor's man version of this by setting up materialized views, a trigger on those views, and then write code in the trigger that pushes updates onto a queueing system. It wouldn't be quite as convenient, but would probably accomplish what you want in many situations.

This exists: https://github.com/omniti-labs/pg_amqp

Re: Advancing the realtime web

#19

The article discusses how RethinkDB differs from "realtime sync services" such as Pusher, PubNub, and Firebase. While comparing against Firebase makes sense because it's an alternative database, I see Pusher and PubNub (and similar pubsub services, such as Fanout) as being complementary to RethinkDB.

[deleted]

Re: Advancing the realtime web

#20

I wonder if it would be feasible to add this sort of real-time feed to a conventional RDBMS like PostgreSQL. This feature would be quite useful for at least one of my projects, but I'm not sure I want to give up a mature SQL-based DBMS for something relatively unproven like RethinkDB.

Postgres supports LISTEN / NOTIFY [1,2], and you can stream a SELECT using COPY or a cursor.

1. http://www.postgresql.org/docs/9.4/static/sql-listen.html

2. http://www.postgresql.org/docs/9.4/static/sql-notify.html

Post reply on HN