When Where and Why To Use NoSQL
When Where and Why To Use NoSQL
1
Big data is becoming a big
challenge for enterprises.
Many organizations have built
environments for transactional
data with Relational Database
Management Systems (RDBMS),
but are now inundated with
enormous amounts of new types
of data. These include, but are
not limited to, social media
data, server logs, clickstream
data, machine data, and
geolocation data.
2
Big Data, Big Challeges. Modern enterprises collect more data than ever before,
from a wide variety of sources, and in a wide variety of formats. In a recent survey
conducted by Researchscape, executives surveyed reported that as data volumes
increase, they are struggling to glean meaningful insights from their data (60%), and
that getting access to and analyzing the right data at the right time is a problem (56%).
Only a quarter of executives believed that their data architecture from five years ago
will work well five years from now (27%).
27%
My data architecture from
five years ago will work
well five years from now
60%
As data volumes
increase, we are
struggling to glean
meaningful insights
from our data 56%
Getting access to and
analyzing the right data at
the right time is a problem
for my company
3
Challenges such as the lack of scale to manage large data sets (48%) and the slow speed
of the system for modern analytics (45%) concern the executives surveyed and may
drive them to change their traditional data management systems.
48% 15%
The lack of scale to The length of time required
manage large data sets, to use traditional systems to
types of data and get insights from data and
performance requirements create business value
45%
The speed of the system
being too slow for
modern analytic needs
34%
37% The cost of managing
traditional systems
The shortage of skills to
manage and build on current
proprietary solutions
4
Data from the Researchscape survey also indicates that most professionals surveyed
(67%) were satisfied with their current data warehousing vendor, stating that it is working
well for existing operational workloads. The biggest complaint, as expected, is that it was
not designed for modern analytics on Big Data, the IoT (Internet of Things), and other
new types of data (31%). The second-biggest complaint is that it is expensive to maintain
as data needs and volumes grow
exponentially (29%).
Which statement best represents
your current relationship with
your data warehousing vendor?
(See all that apply.)
2%
67% I am stuck with them
31%
While it works well for our
traditional analytics
11%
I have not found a
applications, it is not designed suitable alternative
for modern analytics on Big
Data, loT, and other new types
of data; we are planning to
reevaluate soon 20%
29%
It is not getting the job done,
but I am apprehensive to
It is expensive to maintain as deploy an unproven new
my data volume and needs technology
are expanding exponentially
5
RDBMS
Relational databases came into wide use in the 1980s. These table-
based (column and row) relational databases became popular because
they provided many useful features:
Relational databases are used to process and store structured data, and
they offer many tools, but also a significant amount of infrastructure
and overhead. A relational database simply cannot meet all of the
business requirements and opportunities that have arisen with big
data. The biggest limitation is that you are bound to a rigid schema
ahead of time.
6
Dealing with Big Data
Big data is a direct result of both the explosive growth of the
Internet, and the proliferation of social and mobile applications.
To deal effectively with big data, a database must possess the
following characteristics:
• Scalability – The database must be able to scale up to hundreds
of terabytes of data, and scale dynamically up to thousands or
millions of users.
• Flexibility – The database must be able to deal with schema-less
data sets that include structured and semi-structured data.
• Performance – The database must provide fast transaction
response times, at scale.
• Agility – The database must provide developers with the ability to
rapidly create and adopt applications.
7
There are two ways to scale a database:
8
Why Move to
• Flexibility – A schema-less NoSQL database
NoSQL? can process and store structured, unstructured
and semi-structured data, and enable flexible
and rapid development of applications and
use cases such as right-time decisioning,
recommendations, profile management,
Using NoSQL does not necessarily involve bidding, and risk profiling. With RDBMS, you
scrapping your existing RDBMS and starting cannot add data (columns) without updating
from scratch. NoSQL should be thought of as a the entire schema, which can take hours or
tool that can be used to solve the new types of even days, depending on your institutional
challenges associated with big data. There may infrastructure. With NoSQL, data can be
be business processes that can continue to be added and updated flexibly and efficiently.
addressed effectively with RDBMS. But with the
new challenges presented by big data, you will • Speed – The parallel processing nature of a
likely face new problems that can be solved more NoSQL database, along with caching and
efficiently – and more cost-effectively – with a aggregation, can provide fast (sub-millisec-
NoSQL database. ond) transaction response times at scale.
A NoSQL database can be used to solve new • Developer productivity and agility –
problems that require: A NoSQL database shortens time to market
for new applications and updates because
• Scalability – A NoSQL database can scale developers don’t have to shoehorn data into a
horizontally to the scale required by big fixed schema. With NoSQL, applications can
data. Applications can run in parallel on a be rapidly prototyped, tested, and deployed
cloud-based cluster comprising of dozens, into production in a cloud-based cluster.
hundreds, or even thousands of commodity
servers. The NoSQL scale-out architecture • Operational readiness – In contrast to
enables web applications to scale dynamically RDBMS, which typically require schema
up to thousands or even millions of users. migration scripts, significant manual effort,
As the number of concurrent users grows, and scheduled downtime for release upgrades,
you can dynamically add more cluster nodes NoSQL schema migrations are relatively easy
(commodity servers) to process the and have minimal impact on operational
additional load. readiness. Maintenance windows are
compressed, and the performance impact
on users is far less noticeable.
9
Why Use Aerospike?
Aerospike is a high-performance NoSQL database that
enables high throughput with low latency, horizontal
scalability, reliability, and operational efficiency.
10
Aerospike’s has pioneered a hybrid RAM/SSD storage
architecture that lets you achieve RAM-like performance
at a lower cost by leveraging flash storage (SSDs). This
innovative architecture delivers speed at scale, predictable
performance, and high availability while dramatically
reducing total cost of ownership. Applications that leverage
Aerospike typically require as few as one tenth the number
of servers required by most other databases.
Speed at Scale
Built for Flash storage Store hundreds of terabytes
and access at speeds
Open source measured in milliseconds
or sub-milliseconds
Ability to support applications
with a very large data set, which Cross Data Center
increases the accuracy of the
Replication (XDR) support Predictable
decision engine performance
11
Next Steps
Go
Learn more
12
© 2016
Aerospike, Inc.
13