On 27/10/2013 7:44 AM, Ze'ev Atlas wrote:
Is SQL really that much better then native APIs? In the
case of your typical key/value data store surely get/set is easier than
SELECT FROM WHERE/UPDATE SET IN etc.
My short answer would be "YES!"
I disagree. One of the reasons for choosing a NoSQL data base is because
SQL isn't the right tool for the job. Check out the API reference for
Redis, a very popular NoSQL data base http://redis.io/commands.
If I want to process a list of items in Redis I can push/pull from the
top/bottom of a list with RPUSH/RPULL LPUSH/LPULL. If I want to retrieve
the number of elements I call LLEN. It's trivial. Doing that kind of stuff
using SQL is non-trivial. SQL is poor for processing simple lists,
queues, stacks etc. That kind of use case is meat and potatoes for web
based applications and relational data bases suck at it.
The "Typical key/value data store" may be better handled with get/set. But presenting
complex data (think OLTP) in those data stores is pretty much impossible. The hierarchical
databases like IMS and IDMS (multi-hierarchies) were an interesting solution that used API to
navigate the hierarchies [and I did a lot of work in both.] However, ultimately, in any real world
application that is beyond what you could handle in flat Excel like store or "Typical
key/value data store", you find the need for relations... and the relational model.
There are a lot of big companies out there processing complex data in
NoSQL data bases. They don't need (or want) a relational model.
"Typical key/value data store" with some forced relations may be good for
warehouse type of application. Anything else need some relational model, and SQL engines
are pretty refined and do the navigation for you.
My reason of thinking about interfacing MongoDB to COBOL is the fact that COBOL
is very well suited to deal with API's and the hierarchical model. And I
believe that MongoDB has its place as Warehouse engine.
Again, even in the Big Data movement there is now a tendency to go back to SQL,
hence Google's F1 Database engine.
Who's using F1? MongoDB is currently valued at > $1B and has venture
capatalists throwing money at it. Last time I looked Mongo could handle
joins and complex data and had a very rich query language.
ZA
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN