Ayusman
Ayusman

Reputation: 8719

Intersystem Cache and MongoDB comparision

wanted to understand how, the intersystems Cache and Mongo Databases are different from each other.

In couple of threads in the stackoverflow itself it has been mentioned that there are no differences as such between Object database and NoSQL databases.

In MongoDB the data is document based, accessed and queried through JSON like formats. Is it the same case in Cache DB as well?

Any pointers will be helpful.

Upvotes: 5

Views: 3352

Answers (4)

Rob
Rob

Reputation: 1

This document may help:

http://www.mgateway.com/docs/universalNoSQL.pdf

Upvotes: 0

psr
psr

Reputation: 2900

The problem with your question is that none of the terms are very well defined (not your fault - you didn't get to define them).

But what is document-based? Does it have to be stored as text? Or does it just have to be exposed to a client as a document? Really, on the second choice makes sense, except then pretty much any persistent storage qualifies. You can always transform rows and columns into a document, for example.

As far as querying via JSON, I wrote my own system to do that with Cache DB before Intersystems released their version. And one could put a JSON wrapper around almost any persistent storage (it's not that hard, JSON is designed to be quite easy to parse).

To me the key interesting feature of NoSQL databases is that they are often designed to work with distributed data across large numbers of unreliable machines - though at the price not being capable of certain kinds of consistency. Cache DB doesn't have that (as far as I know), but could reasonably be said to support the characteristics you mentioned to the extent that they have clear meaning.

It would be easier to answer more specific questions about what you are trying to accomplish.

Upvotes: 1

kazamatzuri
kazamatzuri

Reputation: 433

Everything GlobalsDB can do, Cache can do as well (GlobalsDB is just a subset of Cache functionality) I haven't work with MongoDB so far, but to address what you say:

In couple of threads in the stackoverflow itself it has been mentioned that there are no >differences as such between Object database and NoSQL databases.

That's not a very precise statement and IMHO you can't hold that up to scrutiny. For starters, NoSQL is not defined very well, what is NoSQL for you? Just a database that can't work with SQL? A nonrelational DB? What's an object database for you? Do you want to have object representations in the database? This can be realized with both classical relational as well as 'modern' NoSQL. (NoSQL is absolutely nothing modern, it has been around quite a while back. e.g. Cache (coming from MUMPS) started out as NoSQL back in the 70ties

In MongoDB the data is document based, accessed and queried through JSON like formats. Is it the same case in Cache DB as well?

You can access data in Cache in multiple ways. GlobalsDB is providing an interface to the global structure (think of it as a key-value store that's a bit more flexible) Additionally you can access your data relational and as objects. Of course there are certain format restrictions to be met when you want to go from key-values to a relational access, but the bottom line is, you can access your data how you want/need it. This includes JSON, native in the newer versions.

Upvotes: 3

DAiMor
DAiMor

Reputation: 3205

There is another product from InterSystems to clean NoSQL, is GlobalsDB

requests in the format of JSON, the tools are implemented applied through the adapter. GlobalsDB supports NodeJS with him JSON, is also supported. NET and Java

Upvotes: 1

Related Questions