<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=752538731515435&amp;ev=PageView&amp;noscript=1">

5 Signs It's Time to Consider a NoSQL Database

  • Date: May 25, 2017
  • By: Elijah Bernstein-Cooper

In Durham, North Carolina there is a bridge. Street traffic goes under. Trains go over.

The bridge has its own website. And a YouTube channel with more than 22,000 followers.

Why?

The bridge has a nickname.

It's called "The Can Opener."

The Can Opener has only 11' 8" of clearance.

Many box trucks, RVs, and commerical vehicles carrying loads are taller than 11' 8". When a too-tall vehicle tries to drive under the bridge, the roof catches on the bridge structure and the rooflines are peeled back.

Like a can of sardines.

Surely there are signs?

Yes.

Several.

Large signs appear several blocks before the bridge. There is a sensor that detects overheight vehicles and triggers a flashing LED warning sign. The sensor also triggers a traffic light to turn red. Drivers of the over-height vehicle have 50 seconds to read the LED warning sign, and space to turn to avoid the Can Opener.

And yet, at the end of 50 seconds some drivers hit the gas. Full speed ahead.

And the Can Opener gets fed.

Signs.

Signs posted.

Signs ignored.

Drama ensues.

Database Drama

When it comes time to choose between a SQL database or a NoSQL database there will be no automatic sensor. No flashing lights. And no YouTube channel documenting disasterously wrong decisions.

But there are signs.

Here are five signs that it's at least time to sit down with some interested parties and have a discussion about possibly implementing a NoSQL database:

1. You're Going Agile

If you currently practice or are heading down the path of an Agile Transformation, take note.

Agile and traditional SQL databases don't always play well together. The Agile development approach requires a more flexibile and easily changed database schema. Relational databases aren't designed to do that. NoSQL databases are.

2. You Run Lots of Complex Queries

With a SQL database, when you pull a lot of tables into a query (or the same table recursively) you create monster SQL statements that can take forever to return results.

If you are often frustrated by complex, slow query results from your SQL database it's a good sign to start thinking about a NoSQL database, which often has a simpler data model leading to simpler queries.

3. Denormalizing Is Looking Attractive

Your DBAs have done everything they can to improve performance and it's still not acceptable. The only remaining solution is to:

  • Denormalize the data
  • •Create tables of pre-computed results
  • •Copy the production database to create a reporting database

Push the pause button. Get the hive mind together. Take a fresh look at a NoSQL solution.

NoSQL databases are designed to process big datasets. They can "scale out faster" on cheaper hardware. They can also have simpler data models. Look to NoSQL to solve that performance issue rather than pushing a relational database into a non-relational model.

4. You Are Shopping for An Expensive Database Server

Some relational databases can only run on a single-instance server. If you are in that situation and shopping for high-end hardware to solve a performance or uptime issue, hold up.

Consider a NoSQL Database that can run either on a cloud-based service or on commodity hardware that you already own.

5. You're Spending More on DBAs Than Programmers

If you are spending more hours of labor on schema changes, tweaking of indexes, and scaling issues than you are building new features or new apps, consider that a sign.

Consider a NoSQL solution that's designed to have a more dynamic schema, process larger datasets, and scale up or out more efficiently.

50 Seconds

If you see any of these signs, stop for the red light and take 50 seconds to give us a call. We can size up your requirements and see if you're safe to proceed.

Or, if you are the Can Opener's next meal.

 

about author

Elijah Bernstein-Cooper

Elijah Bernstein-Cooper joined Omni in the summer of 2016 as a solutions consultant. He has since been developing applications with MarkLogic. Prior to Omni, Elijah received his masters in astrophysics at the University of Wisconsin Madison where he expanded his repertoire in data science. Elijah’s background in astrophysical data science complemented with NoSQL development allows him to provide fresh solutions for businesses’ challenges in data governance and analysis.

Want more of the OmniAtrium Blog ? You got it.

Blog subscribers get email updates once a week.

Subscribe to Email Updates

Omni Resources is a premier custom software development firm focused on building web-based & mobile applications, business process automation and data management solutions for manufacturing, healthcare, insurance, retail and SaaS companies.

WHY OMNI?