Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Why? If you want to run SQL queries (with joins, etc.), maybe you should run a traditional RDBMS.

Is there some sort of advantage to this that I'm missing? It just seems like reinventing the wheel.



I have to wonder if this is a full-circle hack to deal with a poor architecture decision in committing to MongoDB.


Maybe they want to recycle complex analytic queries and visualization tools for rdbms-databases, while still enjoying the advantages of mongodb. They mention this in the first paragraph.


"This way, you can run complex analytic queries, join different collections, and benefit from SQL data visualization tools."

"In the following, we show a rather simple query, but complex queries that involve sub-selects, SQL window functions, and collection joins are also possible. In fact, you can even join a MongoDB collection with a PostgreSQL table."

"And the really exciting part for us is that CitusDB can easily enable analytic queries for sharded MongoDB installations, as it is built on PostgreSQL and can already distribute SQL queries."

This company builds CitusDB, "a distributed database that lets you run SQL queries over very large data sets. Designed for analytical queries, CitusDB enables real-time responsiveness." This apparently allows their software to work with MongoDB.


Why not? It may be useful to people who already have their data in MongoDB and don't want to migrate their data to an RDBMS.


Migrating data can be automatic: https://github.com/crowdtap/promiscuous/

We use this tool to replicate data across our main MongoDB database, and a PostgreSQL one (eventually consistent).

We haven't wrote a comprehensive readme yet. The only documentation we have so far are slides: http://viennot.biz/promiscuous

Stay tuned :)


Those slides gave me a headache, so I'll just point out for the benefit of everyone that there is a README, and that it's some form of replication via AMQP queues.


Thanks for the tip on AMQP.


You can potentially use existing tooling that expects a RDBMS against a mongo database.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: