In order to successfully compete in today’s digital marketplace, businesses have to satisfy the ever-increasing data demands. In deciding which data management platform to build your application, you’ll need to factor in both data as well as your underlying application requirements. The choices are a traditional relational database management system (RDBMS) or NoSQL.

IT analysts and investors say that NoSQL will dominate new software stack spending for years to come, especially given that they were designed for modern environments that span digital, mobile, and cloud applications that run everywhere. Today’s underlying application requirements, call for a modern data platform and for you to migrate from traditional databases, and oftentimes require a strategy that incorporates both legacy and new data management capabilities.

Relational vs NoSQL Requirements At a Glance

NoSQL and RDBMSs are designed to support different application requirements and can co-exist in most enterprises. The key decision points on when to use RDBMS or NoSQL technology for your applications include:

 

When to Use NoSQL

When to Use an RDBMS 

Location independent / decentralized apps 

(e.g., web, mobile, and IoT)

Location dependent / centralized apps

(e.g., ERP)

Continuous application availability

High to moderate application availability

High to low data/user activity

Moderate to low data/user activity

High to low online data volumes (e.g., requirement to retain data forever)

Moderate to low online data volumes

High-velocity data (devices, sensors, etc.)

Moderate velocity data

Semi/unstructured and structured data

Primarily structured data

Contextual transactions

Traditional-only transactions

Cloud-native database functionality 

Cloud-compatible database functionality

Scale for both high volume reads and writes 

Scale for high volume reads

Multi-data center, multi-cloud support

No multi-directional data center or multi-cloud requirement

 

DataStax Enterprise Makes It Easy

DataStax makes it easy to build, deploy, and scale modern applications that exploit the full value of ever-growing data. We built DataStax Enterprise (DSE) on Apache Cassandra™ one of the most popular open source databases with enterprise-proven scale, constant uptime, and elegant data distribution.

DataStax provides best-in-class support for modern application requirements that signal the need for a high-performance NoSQL data platform:

 

Application Requirement

Supported 

DataStax Enterprise 

Location independence / Decentralized apps

Masterless architecture—the gold standard in data replication; accessible data any time—easily put data anywhere and synchronize it everywhere 

Continuous availability

Masterless architecture provides zero downtime—complete redundancy in data and compute resources

High data/user activity

Linear scale and uniform response times via scale-out deployment

High online data volumes

Linear scale capability via scale-out deployment

Flexible schema

Semi/unstructured, structured data management; multi-model support for tabular, documents, key-value, and graph

Contextual transactions

Integrated analytics, search, and in-memory engines for full contextual support

Cloud native

Foundation built and proven by internet pioneers for cloud-native experience 

Scale for reads and writes 

Low latency, lightning fast data loads, writes, and reads for current or future scale needs 

Multi-data center

Multi-directional, on-premises, hybrid cloud, multi-cloud, and intercloud support

 

Approaches to Implementing with NoSQL

How do you approach moving to NoSQL and implementing your first application? In general, there are three ways to go about implementing with a NoSQL database:

  • New Applications: Begin with NoSQL by choosing a new application and start from the ground up. Such an approach mitigates the issues of application rewrites, data migrations, etc.
  • Augmentation: Augment an existing system by adding a NoSQL component to it. This often happens when applications have outgrown an RDBMS (e.g., due to scale problems, there’s a need for better availability, hybrid/cloud environments, etc.)
  • Full Rip-Replace: For systems that simply are proving too costly from an RDBMS perspective to keep, or are failing due to increases of user concurrency, data velocity, or data volume, a full replacement is done with a NoSQL database.

 
If you are looking to implement NoSQL or want to learn about NoSQL and its benefits, below are some recommended resources: 

  1. Modernizing with NoSQL from Relational Data Platforms
  2. Why a NoSQL Database Is the Best Choice for Your Modern Applications  
  3. Getting Started with NoSQL and Apache Cassandra