If you've worked in technology for any length of time you know it's an ever-changing landscape of acronymns and monikers.
A few weeks back we wrote about the differences between SQL and NoSQL databases.
Well, about that.
Making It Clear
We didn't clarify the "NoSQL" term completely in that post. You probably read it as "No Sequel", right?
Turns out, it's really supposed to be "Not Only Sequel".
NoSQL isn't the either to SQL's or. A proper NoSQL technology like MarkLogic is a both/and solution that can also handle traditional relational SQL databases and other flavors of databases as well.
Yep - the market is doing a little ground-shift again. Multi-model is the new name for a tool that:
...is designed to support multiple data models against a single, integrated backend. Document, graph, relational, and key-value models are examples of data models that may be supported by a multi-model database.Wikipedia.com
Put another way, you can view multi-model databases as the next evolution of NoSQL technologies.
Imagine you were going to take an extended trip across Europe.
In doing your trip planning you discover there are 23 officially recognized languages in Europe. But you only speak English.
You'll need to hire a translator. Which would you rather hire:
- Alex, who also only knows English. But he has friends he can call each time you encounter a new language.
- Dasha, who speaks all 23 languages fluently.
You could probably make either translator work, but Dasha would be the obvious choice. Each time you needed translation you would only need her. You wouldn't have to worry about Alex's friend being awake, or rely on intermittent cell coverage for Alex to make calls.
The multi-model database market is similar. There are solutions out there that meet the multi-model need by bolting together a number of different existing solutions. But each time you bolt something together you have to worry about the connection point. You have to monitor reliability and uptime. You have to maintain that integration point each time one of the tools updates.
A better solution is a database that natively stores the type of data you need.
This is a core reason we're fans of MarkLogic - its multi-model functionality is all native.
Multi-model databases have additional advantages:
- Performance Scaling
Different components within the system can be scaled independently.
- Improved Reliability
Multiple different databases with multiple dependances on multiple servers means there are just more moving parts that could break. Fewer moving parts means increased reliability.
- Improved Data Consistency
We wrote about ACID Compliance recently. ACID Compliance is easier if all your data is one tool like MarkLogic..
- Lowered Costs & Complexity
Each installed technology comes with a price tag in terms of licensing, updates, bug fixes, specialized technicians, etc. Having fewer layers in your technology stack makes life easier all around.
- Simplified Application Development
If an application needs access to more than one model of data, it will be easier if the different models are all stored in the same core database.
Alex or Dasha?
Does your technology stack look more like Alex or Dasha? Maybe it's time to give Alex the boot and get a resource that natively speaks all the langauges you need.
Give us a call. We'll even answer the phone in French if you want.