An – Introduction – to NoSQL



An – Introduction – to NoSQL

0 0


presentation-nosql-introduction


On Github joelmccracken / presentation-nosql-introduction

An

Introduction

to NoSQL

Alternative ways to think about databases

Created by @JoelMcCracken

Goals

  • What is NoSQL?
  • Why should we care about it?

What's in a name?

"Anything not SQL or a Relational Database"

(It is a terrible name)

SQL Success

Incredibly powerful and successful

De facto standard for databases

The Relational Model

Organize all the data into tables

Data references other data with keys

Weaknesses

Speed/Scalability

A table may be unnatural

Single point of authority

NoSQL

Key/Value

  • Values cannot be queried against
  • Very simple and fast
  • (not popular, but one of the oldest)

Document

  • Data stored in documents
  • Data have a format that the database uses to answer questions
  • Supports queries that are similar to SQL
  • Fewer guarantees means less work

Document Database: Example

A web application that aggregates all messages its users receive:

  • Messages of different types: Texts, Emails, Facebook, Twitter.
  • Massive amounts of data.

Data Structure

Data storage with specific guarantees

Types:

  • Lists
  • Sets
  • Sorted Sets
  • Hashes

Choice appropriate for individual data

Data Structure Database: Example

A platform for analyzing the visitors to your website:

  • List: every visit to site
  • Set: every address to have visited your site
  • Sorted Set: Same as above, but sorted by time visited
  • Hash: the full history of every visitor to your site, organized by visitor address

Graph Databases

Data represented as:

  • Nodes: Discrete points of data
  • Edges: The connections between nodes

Data may be kept about both nodes and edges

Ideal for data where the relationships between

Ideal for data where the relationships between data are just as

important as the data points themselves

Graph Databases: Examples

  • Facebook & social data
  • Recommendation engines
  • Mapping software

End

Questions?

@JoelMcCracken