📸 Foto von Pixabay von Pexels

Choose your new data storage solution with 5 questions!

When it comes to data storage solutions, there’s no one size fits all. The data storage landscape offers a plethora of technologies. Some are single-purpose data stores; others are multi-purpose databases.

Jasmin Fluri
Geek Culture
Published in
4 min readOct 28, 2021

--

We generally differ between single-purpose data storage solutions and multi-purpose data storage solutions.

A subset of this broad data storage landscape shows the following Figure. But how do you choose the right one?

A small subset of possible Data Storage Solutions and their purpose

Single-purpose data stores usually solve one single use case very well but don’t support other storage approaches. Single-purpose data stores are ArangoDB, neo4j, Cassandra, Redis, MongoDB, HDFS or H2.

Multi-purpose data stores provide data storage for a broad range of storage approaches. Usually relational storage as well as a document and key-value store. Examples are the Oracle Database and PostgreSQL.

Working with NoSQL — career goals for many developers.

The following five questions might help you decide which technology is right to choose the best data storage solution for your use case.

1. Do I already maintain a technology that solves my use case?

Maintaining more technologies is always more expensive than maintaining fewer technologies. That’s why the cheapest and most efficient way is not to add a new data storage solution to your tech stack but use the existing ones you already have. This way, the current staff with the existing knowledge can implement your use case.

If you add new technology to your existing tech stack, keep in mind the following will need to be added as well:

  • People who maintain the newly added technology.
  • Knowhow about the newly added technology in both operations and development.
  • Additional infrastructure costs will be necessary both in the cloud and on-prem as well as lifecycle effort.

2. Can I find people who are willing to work with this technology?

The second question is if there are people around that are willing to work with this new technology. Those people can be already working in your company or can be recruited. Either way, it needs to be guaranteed that the current staff members accept the technology to be trained or that there are enough possible candidates on the market to hire to work with the technology. If your answer to question two is “no,” this is a good indicator that the technology is not right. The costs of rehiring and retraining will be very high.

3. If I have technical issues, how easy is it to find answers?

No matter what technology you are going to choose, you will eventually face problems at a certain point. When those problems arise, you need to make sure you’re able to find a solution quickly. This need for a quick solution is when technology popularity comes in as a significant consideration factor. The more popular technology is, the more likely it is that the community already solves the most common issues.

However, you can also feel confident in selecting a less common framework if you have a talented team that can dig into the source code and find solutions by analyzing the code. When choosing this road, make sure you have more than one developer proficient with your chosen technology. Else you will have a single point of failure.

4. Is the technology choice obviously wrong for the task?

If you believe in the speeches of data storage technology vendors, every single solution is the best one for your use case. So asking if the technology is right for you would be very biased.

That’s why you should ask yourself if the technology choice is obviously wrong for the task. One indicator is if the technology is so old that it has been made irrelevant.

Another indicator could be that the technology is absolutely unsuited for the use case you have.

You also want to ensure that the technology is not bleeding edge and that you’re essentially just an unpaid beta tester. If you don’t get a competitive advantage of using a bleeding-edge technology, you shouldn’t use it.

5. Is the technology enterprise-ready?

There’s a massive difference if you are using a technology for your odd side project or business-critical and needs to be reliable. Many (free) single-purpose data storage solutions come with almost no tooling to maintain and lifecycle it in production. You get what you pay for is very accurate for most free single-purpose NoSQL stores. If this is the case with your chosen technology, you need to make sure that…

  • …you have enough budget to make the technology enterprise-ready. Enterprise readiness includes backup, restore, monitoring, security, integrations like identity and access management, etc.
  • …people have the knowledge, time and skill to make the technology enterprise-ready. If your project depends on a finished solution in a short time, you probably should choose one that comes with all the tooling.

Conclusion

The above questions tell us some key factors to keep in mind when choosing data storage solutions. The key things to keep in mind are:

  • Don’t blindly choose the newest technology! Choose the technology that fits your requirements best.
  • If “going the extra mile” gives you long-term advantages, you should do it.
  • Be aware that your requirements will change! Be prepared to have a plan B, and make sure your tools support your plan B as well.

--

--

Jasmin Fluri
Geek Culture

👩‍💻Database & Automation Engineer @ schaltstelle.ch 💻 Oracle ACE Pro♠ — Writes about databases, automation and software engineering— 🐦@jasminfluri