jsdb - nosql funcional e minimalista - tdc 2016

40
Globalcode – Open4education JSDB - NoSQL Funcional e Minimalista Paulo Henrique Ferreira de Lima [email protected] | http://jspare.org

Upload: paulo-henrique-ferreira-de-lima

Post on 25-Jan-2017

55 views

Category:

Technology


2 download

TRANSCRIPT

Globalcode–Open4education

JSDB - NoSQL Funcional e MinimalistaPaulo Henrique Ferreira de Lima

[email protected] | http://jspare.org

Globalcode–Open4education

About me

Paulo Lima

Email: [email protected]

Twitter: @pflima92

Github: github@pflima92

Globalcode–Open4education

JSDB NoSQL Database

JSpare.org The simple, simple

Globalcode–Open4education

JSDB NoSQL Database

C

Consistency

Availability Partition Tolerance

PA

CA CP

AP

* Bigtable * Hbase * MongoDB

* DynamoDb * Cassandra * CouchDB

* RBMS

Globalcode–Open4education

JSDB NoSQL Database

Consistency + Availability

Globalcode–Open4education

JSDB NoSQL Database

RDMS - ACID

• Atomic • Consistent • Isolated • Durable

NoSQL - BASE

• Basically Available • Soft State • Eventually Consistent

Globalcode–Open4education

JSDB NoSQL Database

Consistency + Partition Tolerance

Globalcode–Open4education

JSDB NoSQL Database

Globalcode–Open4education

JSDB NoSQL Database

Availability + Partition Tolerance

Globalcode–Open4education

JSDB NoSQL Database

Availability + Partition Tolerance

Globalcode–Open4education

JSDB NoSQL Database

C

Consistency

Availability Partition Tolerance

PA

CA CP

AP

* Bigtable * Hbase * MongoDB

* RBMS

AP* JSDB

Globalcode–Open4education

Globalcode–Open4education

JSDB NoSQL Database

Who? When? Where?

Globalcode–Open4education

JSDB NoSQL Database

Designed to be Simple

Globalcode–Open4education

JSDB NoSQL Database

Small apps

Short projects

Low latency

Globalcode–Open4education

JSDB NoSQL Database

Cloud instances

Embedded apps

Micro services

Globalcode–Open4education

+

JSDB NoSQL Database

NoSQL

Globalcode–Open4education

JSDB NoSQL Database

Easy installation

npm install -g jsdb-server standalone packs (win64, osx, linux)

Simple configurations

Globalcode–Open4education

JSDB NoSQL Database

Integrate your project

node express integration (experimental, caution with i/o) it is simple to use

Globalcode–Open4education

JSDB NoSQL Database

Simple data structure

instances ==> schemas domains ==> families / tables

• jsdb> addInstance public • jsdb> use public • jsdb> addDomain person

Globalcode–Open4education

JSDB NoSQL Database

Key / Values

Globalcode–Open4education

JSDB NoSQL Database

Mutable domains

Your data structure can change

Careful with migrations

Globalcode–Open4education

JSDB NoSQL Database

Simple connectivity

HTTP Rest Stateless

Simple APIs

Globalcode–Open4education

JSDB NoSQL Database

Building scenario

Online user management

Globalcode–Open4education

JSDB NoSQL Database

Connection

Globalcode–Open4education

JSDB NoSQL Database

Defining simple data scheme

Globalcode–Open4education

JSDB NoSQL Database

Using with microservice

Simple sample with rest service using jsdb

Globalcode–Open4education

JSDB NoSQL Database

Persist person

Globalcode–Open4education

JSDB NoSQL Database

Batch inserts

Globalcode–Open4education

JSDB NoSQL Database

Querying dataRetrieve all records:

GET : /persons

Filtering by fields: GET: /persons?minBadge=1&maxBadge=1500&gender=MALE

Filtering by Id: GET: /persons/61651899622

Globalcode–Open4education

Globalcode–Open4education

JSDB NoSQL Database

Globalcode–Open4education

JSDB NoSQL Database

Delete person

Globalcode–Open4education

JSDB NoSQL Database

Minimalist operations

Persist (Insert and Update)

QueryFor (Query domain data)

Remove (Delete some data object)

Globalcode–Open4education

APIs in progress…

JSDB Tools

Contribute for improve this list!

Globalcode–Open4education

JSDB NoSQL Database

Large todo list

JSDB CLI

jsdb> [command] [args]

JSDB Workbench

GUI Data Model and Workbench Expansível (Integration, Plugins, BI, etc…)

Globalcode–Open4education

JSDB NoSQL Database

Contribute with JSDBWebsite and Docs:

http://jspare.org/jsdb

Access our github:

https://github.com/jspare-framework/jsdb

Issues, Suggestions and Bugs o.O:

https://github.com/jspare-framework/jsdb/issues

Globalcode–Open4education

JSDB NoSQL Database

Questions ?

Globalcode–Open4education

JSDB NoSQL

Globalcode–Open4education

JSDB Over Architecture

Server

Client

Http Module

JSON

Rest

APIs

Handler

JSDB

ExecutorRes

Data

FF

FF

FF

FF

FF

FF

Holder

SCY KERNEL

FF

FF

FF

LOGGER

STORAGE

I/O