This is our final stop in this tour of modeling One-to-N relationships in MongoDB. In the first post, I covered the three basic ways to model a One-to-N relationship. Last time, I covered some extensions to those basics: two-way referencing and denormalization.
Cypher is a neat way to manipulate a Neo4j database. It would be equally amazing if the Xml graph could be queried with Cypher as well.
A few weeks ago, Neo4j launched our #ShowMeYourGraph twitter contest in preparation for GraphConnect 2014 SF. In celebration of this, we thought we’d highlight some Graph Visualizations our community has produced. Take a look and get inspired!
This is the fourth post in a series of posts that explains Ark, a consensus algorithm we’ve developed for TokuMX and MongoDB to fix known issues in elections and failover. In this post, I describe how Ark fixes the existing problems.
Last time I covered the three basic schema designs: embedding, child-referencing, and parent-referencing. With these basic techniques under our belt, I can move on to covering more sophisticated schema designs, involving two-way referencing and denormalization.
For new users, it’s important to provide an overview of how to work with the MongoDB Java driver and how to use MongoDB as a Java developer.
The next headache on our list will carry on with the topic of master-slave replication. In particular, we will look a bit deeper at the length of time needed to complete the process as well as some configuration issues that can cause major inconveniences.
Make sure you didn't miss anything with this list of the Best of the Week in the NoSQL Zone (August 1 to 7). This week's best include how to develop robust and scalable transactions across docs in MongoDB, how to use MongoDB with Go and mgo, the top NoSQL databases according to GitHub stars, and more.
This article presents some of the basic concepts and commands which could prove useful for rookies starting with MongoDB.
We’ve just released a new version of our Node.js SDK, now in Beta. This reflects a big change from our previous SDK releases, including a new API which should be far easier to get started with and use, better documentation, and numerous performance enhancements through our related project, libcouchbase.
“I have lots of experience with SQL, but I’m just a beginner with MongoDB. How do I model a one-to-N relationship?” This is one of the more common questions I get from users attending MongoDB office hours. In this first part, I’ll talk about the three basic ways to model One-to-N relationships.
We got tired of sending over “give me the output of the following endpoints” deal. We wanted a better story, something that would be easier and more convenient all around. So we sat down and thought about this, and came up with the idea of the Debug Info Package.
MongoDB supports ACID at a single document level. This technique actually solves a number of transactional issues for one-to-one and some one-to-many relationships. But for other cases where data must be split, how can you deal with it?
This series of installments will highlight some of the most irritating issues that come up when using Redis, along with tips on how to solve them. They are based on our real-life experience of running thousands of Redis database instances.
In this post, I assume the reader is familiar with the first two posts and discuss why data that has been successfully acknowledged with majority write concern may be lost in a failover.
This presentation will give developers an introduction and practical experience of using MongoDB with the Go language. MongoDB Chief Developer Advocate & Gopher Steve Francia presents plainly what you need to know about using MongoDB with Go.
If you're curious about who comes out on top when it comes to NoSQL databases, there are a lot of differing opinions and a lot of places to look. You can check out DB-Engines or Kristof Kovacs' list, or you can just look at GitHub. That's what Memect's Awesome GitHub does.
One thing (or maybe two) that you keep hearing from the MongoDB community (and probably also applies to Cassandra and HBase) is the lack of transactions support. For the record, MongoDB does provide some support for transactions, but to have real distributed transaction support in Mongo is not an easy task.
In this article, we will use the brand new Datastax Cassandra/Spark connector to be able to load data from a Cassandra table and run RDD operations on this data using Spark.
It's a familiar story at this point - trying out NoSQL, then moving back to relational databases - and the response is generally consistent as well: NoSQL will only be useful if you understand your problems and choose the appropriate solution. But with so many solutions cluttering the market, how can you choose?
I was recently asked how to calculate the position of a node in a linked list and realized that as the list increases in size, this is one of the occasions when we should write an unmanaged extension, rather than using Cypher.
In this article, we will see how we can use Cassandra as a resilient distributed dataset (RDD) source for Spark, in order to perform RDD operations.
In this post, I want to zero in on elections and describe how they currently work in detail. Kristina Chodorow has a really good explanation on elections here that really helped me while we were developing TokuMX. My explanation will focus on the threading model.
If you're looking for alternative high-performance NoSQL solutions, you might be interested in this new Redis-esque entry based on LevelDB and written in Go: LedisDB.
While preparing my talk on building Neo4j backed applications with Clojure, I realized that some of the queries I’d written were incredibly complicated and went against anything I’d learnt about separating different concerns.