RavenDB: A High-Performance NoSQL Database Solution

 
Our Ideal Data Solution
 
Mature & Highly Performant NoSQL Database
 
Insert your own title here:
 
Insert your own subtitle here:
 
RavenDB is a NoSQL Document Database
 that address the needs of applications operating on
the cloud, over multiple devices, and throughout the Internet of Things (IoT).
It was one of the first databases to be built especially for a distributed environment and is the
first Document Database to offer high performance and 
Fully Transactional (ACID) Data
Integrity
.
What is RavenDB
 
 
Mentioned in both Forrester and Gartner research.
 
Used by Thousands of organizations for their data needs.
 
Ranked among the top 15 Document Databases Worldwide (Source DB-Engines)
 
RavenDB employs over 50 developers in offices spanning North America, Europe, and the Middle
East.
 
Version 1.0 was released in 2010 and RavenDB 5.0 was released in 2020.
 
RavenDB Cloud is a managed Cloud Service.
Offering a Database as a Service on 
Amazon Web Services
 (AWS),
Microsoft Azure
, and 
Google Cloud Platform
 (GCP).
Clients Served
 
Clients range from Startups to Fortune 500 Large Enterprises.
 
RavenDB serves major financial institutions, auto manufacturers, media
conglomerates, and a 
fast-food
 restaurant chain that has 1.5 million instances of
RavenDB running throughout its 3
6
,000+ locations.
 
95% of developers
 that choose RavenDB, 
stay
 with RavenDB.
 
RavenDB was created to address emerging needs in database systems as a result of
a changing technological landscape.
Why RavenDB?
 
Data Integrity
 
 
- Fully ACID transactions, including Multi-Document and Cluster-Wide.
Scalability
 
 
- Native Clustering, and the ability to run on any system.
Performance
 
- So highly performant you can run production applications on a Raspberry Pi.
Simplicity
 
  
- Streamlined development with easy set up & programming. No need
for ORM.
 
?
Auto Indexing
Increase performance by
automatically creating, using and
updating indexes based on your
queries.
10,000 ft Overview
Superior Performance
150,000+ writes and 1,000,000+
reads per second on commodity
hardware
Management Studio
GUI
With a point and a click, you can
set up databases, nodes,
collections, and even create and
edit documents.
Secure By Default
X.509 certificate-based
authentication and encryption at
rest. Established security
protocols such as TLS and HTTPS
protect you in production.
Master - Master
Read and write to any node in
your cluster. Continue to work
offline even without network
connectivity.
Easy to Use
Setup wizard gets you secure and
running in 10 minutes on-prem, 2
minutes using RavenDB Cloud.
Acid Transactions
Single-node and cluster-wide
ACIDity by default.
Native MapReduce &
Full Text Search
All-in-one database. No third-
party services or extra costs.
Multi-Model
Document Model, Key-Value,
Attachments, Counters, Indexes,
and Time-Series.
 
As a NoSQL database, RavenDB has many advantages over its relational counterparts.
RavenDB is a NoSQL Database
Avoids Typical RDBMS Problems
NO
 Full table scans due to queries without
indexes
NO
 SELECT N+1 problem
NO
 SQL Injection attacks
NO
 JOINs to connect multiple tables
Schemaless
Ability to store semi-structured or even
unstructured data
Fast prototyping
Fast development
Distributed
Natively distributed, unlike RDBMS
Supports topologies that can span over millions
of nodes if needed
Easy to scale out
Speed
Optimized for blazingly fast queries
None of the typical RDBMS bottlenecks
Map/Reduce aggregation features deliver
results almost instantaneously even for millions
of entries.
 
RavenDB gives you all the advantages of a NoSQL
database without sacrificing data integrity or
performance.
 
ACID Transactions over multiple documents and multiple
collections
Single-node 
and
 Cluster-wide
 
ACID transactions
Transactions are ACID by default – no associated
performance loss
ACIDity in RavenDB
 
RavenDB has been carefully designed to be secure by
default. No need for complicated documentation or
processes. Your data is safe in transit and at rest.
 
X.509 certificates are used for authentication and
authorization
Use of established security protocols such as TLS and
HTTPS
No default usernames or passwords
Ports are closed by default
Data can be encrypted at rest
Backups are encrypted
Secure By Default
 
RavenDB was built to be a distributed database, with
no single point of failure. Like an octopus: if an arm
goes numb, you still got lots to work with.
 
High Availability
 
Master-master setup lets you read and write to every
node. If nodes lose connection with one another or a local
node goes offline, your database will stay operational.
In a cluster of five nodes, any two nodes can be down at
once and the cluster will still be fully operational
Even with just one node available, your application will be
able to read and write to the database
Clusters react and accommodate to usage patterns and
problems to keep your application up, running, and fast.
 
Find exactly what you are looking for with easy to use
querying functionality.
 
Advanced Query Engine
 
Patching (update) operations support
JavaScript
Built-in support for paging
Full-text search with suggestions, geospatial
searching, result boosting, facets, and
complex aggregations with Map/Reduce
 
RavenDB uses Raven Query Language (RQL)
A simple and human-friendly declarative
language inspired by SQL
from
 
Employees
 
where
 
FirstName
 
=
 
'Nancy'
Supports JavaScript, making it more powerful
than SQL
You can create server-side JSON projections so
your database can serve you view models that
can be used right away
 
The Management Studio is a fully loaded graphical user
interface (GUI). It lets you monitor operational and
performance metrics, and perform tasks without need
for coding.
RavenDB Management Studio
 
 
 
A web application served by the database
Multiplatform, so there’s no need to install anything
 
The RavenDB Management Studio is:
Highly intuitive, with a point and click interface
Able to create code, set up queries, monitor indexes
and Map/Reduce aggregates in our all-in-one
interface
A native part of RavenDB that comes free with
every license: Community, Professional, and
Enterprise
 
RavenDB is built with compliance in mind and works
flawlessly with major industry standards.
Compliancy
 
Easy compliance with:
PCI
  
(Payment Card Industry-Data Security Standard)
HIPAA
 
(Healthcare Insurance Portability and Accountability Act)
GDPR
 
(General Data Protection Regulation)
CCPA
 
(California Consumer Privacy Act)
Testimonials
 
One of my engineers was freaking out when he updated the size of
the RavenDB nodes without any downtime. Apparently that was a
multi-day coordinated effort recently with our MongoDB setup.
 
Using RavenDB, it took 
six months to go from the drawing board to
full release
 of our product. If we went with SQL, it would have taken
a year.
Fully transactional from the start
Improving performance for over a decade in the ACID framework for
over a decade.
All queries always use an index. If one does not exist, RavenDB will
create an index for you.
Aggregation queries are very cheap and fast, Map/Reduce indexing is
done ahead of time.
RQL – RavenDB’s query language – is very similar to SQL, with
JavaScript support.
Support for complex patching
Powerful JavaScript-empowered indexes and queries
Master-Master cluster replication let’s you work offline and get the
most out of a distributed system.
Automatic and Aggressive caching supported
Safe by Default
Fully functional free license
×
Optional transactions from 2018
×
Queries don’t always use indexes, and may need to perform (very slow)
full scans.
×
Aggregation queries require computation during query time.
×
No support for pre-computed Map/Reduce operations
×
Mongo queries are based on JSON syntax. They are very complicated to
create and understand.
×
No support for complex patch operations
×
Master-worker cluster replication creates a single point of failure.
×
Client-integrated caching not supported
×
Not safe by default, number of high-profile data breaches.
×
Advanced features only in paid packages
 
RavenDB
 
MongoDB
 
RavenDB
 
Couchbase
 
Use Case: Rakuten Kobo migration
 
Bottom line
from Couchbase ...
CouchDB Cluster:‌ ‌12‌ ‌nodes‌ ‌(12‌ ‌core,‌ ‌96 Gb‌ ‌RAM)‌
Total Cores: 144
Total RAM: 1,152 Gb
Total‌ ‌docs:‌ ‌286,120,876‌ ‌
DB‌ ‌size:‌ ‌3.5‌ ‌TB
Additional ElasticSearch server
… to RavenDB
RavenDB Cluster: 3 nodes (4 core, 32Gb RAM)
Total Cores: 12
Total RAM: 96 Gb
 
In version 4, RavenDB was 4x faster than Couchbase
 
Significantly faster - 800+ req/sec with latency in single digits ms
No need for ElasticSearch anymore
Whole RavenDB cluster hardware is equal to a single Couchbase node
Increased stability - seamless handling of failed nodes
 
80%
cloud cost
savings under
load
No throughput quota
No limits on number of collections
No limits on number of indexes per collection
Document size limit: 2GB
No limits on the amount of returned data
Full-text search functionality of Lucene built-in,
including spatial queries and aggregation support.
×
Provisioned mode: default throughput quota.
Autoscaling is possible, but slow
×
Tables: 256 per AWS region
×
Table indexes: 20 global + 5 local
×
Item size limit: 400kB
×
Table scans: 1MB of return data from the table
×
In worst case scenario, DynamoDB will return
TWO table rows of max size per ONE table scan
×
Full text search: not supported
 
 
RavenDB
 
DynamoDB
Completely predictable and transparent costs
Free community license
Supports ACID transactions across multiple
collections
Backups are manageable with transparent policy
and configurable retention
×
Pricing based on the number of requests
×
30-days free trial
×
Does not support multi collection transactions
×
Backups are not configurable with retention of
just two
 
 
 
RavenDB
 
CosmosDB
 
Questions?
 
Thank you
Slide Note
Embed
Share

RavenDB is a mature and highly performant NoSQL database designed to meet the evolving needs of cloud applications, IoT devices, and distributed environments. Offering features like fully ACID transactions, scalability, and exceptional performance, RavenDB has become a popular choice for organizations ranging from startups to Fortune 500 enterprises. With its emphasis on data integrity, simplicity, and efficiency, RavenDB stands out as a top-tier solution in the realm of document databases.

  • RavenDB
  • NoSQL
  • Database
  • Performance
  • Scalability

Uploaded on Jul 22, 2024 | 1 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Our Ideal Data Solution Mature & Highly Performant NoSQL Database

  2. What is RavenDB RavenDB is a NoSQL Document Database that address the needs of applications operating on the cloud, over multiple devices, and throughout the Internet of Things (IoT). It was one of the first databases to be built especially for a distributed environment and is the first Document Database to offer high performance and Fully Transactional (ACID) Data Integrity. Mentioned in both Forrester and Gartner research. Used by Thousands of organizations for their data needs. Ranked among the top 15 Document Databases Worldwide (Source DB-Engines) East. RavenDB employs over 50 developers in offices spanning North America, Europe, and the Middle Version 1.0 was released in 2010 and RavenDB 5.0 was released in 2020.

  3. RavenDB Cloud is a managed Cloud Service. Offering a Database as a Service on Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP).

  4. Clients Served Clients range from Startups to Fortune 500 Large Enterprises. RavenDB serves major financial institutions, auto manufacturers, media conglomerates, and a fast-food restaurant chain that has 1.5 million instances of RavenDB running throughout its 36,000+ locations. 95% of developers that choose RavenDB, stay with RavenDB.

  5. Why RavenDB? RavenDB was created to address emerging needs in database systems as a result of a changing technological landscape. Data Integrity Data Integrity - Fully ACID transactions, including Multi-Document and Cluster-Wide. ? Scalability Scalability - Native Clustering, and the ability to run on any system. Performance Performance - So highly performant you can run production applications on a Raspberry Pi. Simplicity Simplicity - Streamlined development with easy set up & programming. No need for ORM.

  6. 10,000 ft Overview Management Studio GUI With a point and a click, you can set up databases, nodes, collections, and even create and edit documents. Auto Indexing Increase performance by automatically creating, using and updating indexes based on your queries. Superior Performance 150,000+ writes and 1,000,000+ reads per second on commodity hardware Secure By Default X.509 certificate-based authentication and encryption at rest. Established security protocols such as TLS and HTTPS protect you in production. Master - Master Read and write to any node in your cluster. Continue to work offline even without network connectivity. Easy to Use Setup wizard gets you secure and running in 10 minutes on-prem, 2 minutes using RavenDB Cloud. Acid Transactions Single-node and cluster-wide ACIDity by default. Native MapReduce & Full Text Search All-in-one database. No third- party services or extra costs. Multi-Model Document Model, Key-Value, Attachments, Counters, Indexes, and Time-Series.

  7. RavenDB is a NoSQL Database As a NoSQL database, RavenDB has many advantages over its relational counterparts. Avoids Typical RDBMS Problems Schemaless NO NO Full table scans due to queries without indexes NO NO SELECT N+1 problem NO NO SQL Injection attacks NO NO JOINs to connect multiple tables Ability to store semi-structured or even unstructured data Fast prototyping Fast development Speed Distributed Optimized for blazingly fast queries None of the typical RDBMS bottlenecks Map/Reduce aggregation features deliver results almost instantaneously even for millions of entries. Natively distributed, unlike RDBMS Supports topologies that can span over millions of nodes if needed Easy to scale out

  8. ACIDity in RavenDB RavenDB gives you all the advantages of a NoSQL database without sacrificing data integrity or performance. ACID Transactions over multiple documents and multiple collections Single-node and Cluster-wide ACID transactions Transactions are ACID by default no associated performance loss

  9. Secure By Default RavenDB has been carefully designed to be secure by default. No need for complicated documentation or processes. Your data is safe in transit and at rest. X.509 certificates are used for authentication and authorization Use of established security protocols such as TLS and HTTPS No default usernames or passwords Ports are closed by default Data can be encrypted at rest Backups are encrypted

  10. High Availability RavenDB was built to be a distributed database, with no single point of failure. Like an octopus: if an arm goes numb, you still got lots to work with. Master-master setup lets you read and write to every node. If nodes lose connection with one another or a local node goes offline, your database will stay operational. In a cluster of five nodes, any two nodes can be down at once and the cluster will still be fully operational Even with just one node available, your application will be able to read and write to the database Clusters react and accommodate to usage patterns and problems to keep your application up, running, and fast.

  11. Advanced Query Engine Find exactly what you are looking for with easy to use querying functionality. RavenDB uses Raven Query Language (RQL) A simple and human-friendly declarative language inspired by SQL from Employees where FirstName = 'Nancy' Patching (update) operations support JavaScript Built-in support for paging Full-text search with suggestions, geospatial searching, result boosting, facets, and complex aggregations with Map/Reduce Supports JavaScript, making it more powerful than SQL You can create server-side JSON projections so your database can serve you view models that can be used right away

  12. RavenDB Management Studio The Management Studio is a fully loaded graphical user interface (GUI). It lets you monitor operational and performance metrics, and perform tasks without need for coding. The RavenDB Management Studio is: Highly intuitive, with a point and click interface Able to create code, set up queries, monitor indexes and Map/Reduce aggregates in our all-in-one interface A native part of RavenDB that comes free with every license: Community, Professional, and Enterprise A web application served by the database Multiplatform, so there s no need to install anything

  13. Compliancy RavenDB is built with compliance in mind and works flawlessly with major industry standards. Easy compliance with: PCI HIPAA GDPR CCPA (Payment Card Industry-Data Security Standard) (Healthcare Insurance Portability and Accountability Act) (General Data Protection Regulation) (California Consumer Privacy Act)

  14. Testimonials One of my engineers was freaking out when he updated the size of the RavenDB nodes without any downtime. Apparently that was a multi-day coordinated effort recently with our MongoDB setup. Using RavenDB, it took six months to go from the drawing board to full release of our product. If we went with SQL, it would have taken a year.

  15. RavenDB MongoDB Fully transactional from the start Optional transactions from 2018 Improving performance for over a decade in the ACID framework for over a decade. Queries don t always use indexes, and may need to perform (very slow) full scans. All queries always use an index. If one does not exist, RavenDB will create an index for you. Aggregation queries require computation during query time. No support for pre-computed Map/Reduce operations Aggregation queries are very cheap and fast, Map/Reduce indexing is done ahead of time. Mongo queries are based on JSON syntax. They are very complicated to create and understand. RQL RavenDB s query language is very similar to SQL, with JavaScript support. No support for complex patch operations Master-worker cluster replication creates a single point of failure. Support for complex patching Client-integrated caching not supported Powerful JavaScript-empowered indexes and queries Not safe by default, number of high-profile data breaches. Master-Master cluster replication let s you work offline and get the most out of a distributed system. Advanced features only in paid packages Automatic and Aggressive caching supported Safe by Default Fully functional free license

  16. RavenDB Couchbase In version 4, RavenDB was 4x faster than Couchbase In version 4, RavenDB was 4x faster than Couchbase Use Case: Rakuten Kobo migration from Couchbase ... to RavenDB CouchDB Cluster: 12 nodes (12 core, 96 Gb RAM) Total Cores: 144 Total RAM: 1,152 Gb Total docs: 286,120,876 DB size: 3.5 TB Additional ElasticSearch server RavenDB Cluster: 3 nodes (4 core, 32Gb RAM) Total Cores: 12 Total RAM: 96 Gb 80% cloud cost savings under load Bottom line Significantly faster - 800+ req/sec with latency in single digits ms No need for ElasticSearch anymore Whole RavenDB cluster hardware is equal to a single Couchbase node Increased stability - seamless handling of failed nodes

  17. RavenDB DynamoDB Provisioned mode: default throughput quota. Autoscaling is possible, but slow No throughput quota No limits on number of collections Tables: 256 per AWS region No limits on number of indexes per collection Table indexes: 20 global + 5 local Document size limit: 2GB Item size limit: 400kB No limits on the amount of returned data Table scans: 1MB of return data from the table Full-text search functionality of Lucene built-in, including spatial queries and aggregation support. In worst case scenario, DynamoDB will return TWO table rows of max size per ONE table scan Full text search: not supported

  18. RavenDB CosmosDB Pricing based on the number of requests Completely predictable and transparent costs 30-days free trial Free community license Does not support multi collection transactions Supports ACID transactions across multiple collections Backups are not configurable with retention of just two Backups are manageable with transparent policy and configurable retention

  19. Questions?

  20. Thank you

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#