Question

I have just started researching NoSQL and would like to ask the following questions:

  1. Just like SQL is the direct query language for ALL RMDBS, then what is the direct query language for all NoSQL databases? If there isn't one direct language, then what query languages exist - a list of a few query languages will suffice.

  2. Similar to question 1. above, does Java have a standard query language for all NoSQL databases?

  3. Is there a significant peformance differentiation when using JDO/Datanucleus or Spring Data when compared with direct NoSQL queries on either MongoDB and/or Neo4J? For example, in terms of RMDBS, writing direct SQL via JDBC when compared to using JPA/ORM Tool, there is significant performance difference in favour of direct SQL.

The reason why I am asking these questions is to offset the advantages of cross-compatibility by using JDO/Datanucleus versus Performance loss or gains?

Thanks.

Was it helpful?

Solution

At this time, there are no standard in NoSQL.

If you choose NoSQL for performance, adding any layer will likely impact it. For that reason, most NoSQL providers prefer providing 'drivers' per language that try to keep performance up and give you an easy way to access their data.

There is a recent effort from 28io to create a language to query across many NoSQL databases. The language is called JSONiq.

OTHER TIPS

I wrote a big response but it seemed like I wasn't addressing the specifics of your questions and had strong (good) opinions about Morphia.

I looked and looked for something fairly easy to use with Mongo and came across Morphia. I've never looked any where else because its so easy to use.

Your questions remind me of the complexities of SQL. I worked the past two days on five MySql Tables that had joins throughout the queries. I could hear a little voice in the back of my head that says: 'priority level of getting this Morphia/Mongo -ized increasing every second.'

https://github.com/mongodb/morphia

<!--pom.xml depenency entry -->
<dependency>
        <groupId>org.mongodb.morphia</groupId>
        <artifactId>morphia</artifactId>
    <version>0.105</version>
</dependency>
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top