3. Topics
This is slides is presented at “Hebron Tech meetup “ https://www.facebook.
com/groups/659298460875650/
1- What is nosql?
Introduction about nosql database ,
categories of them , and use-cases .
2- introduction to multi-model database.
how it works, explain relationships , and
examples.
3- Demo
Open your browser and get you hands dirty
with orientDb
This template is free to use under Creative Commons Attribution license. If you use the graphic assets (photos,
icons and typographies) provided with this presentation you must keep the Credits slide.
4. Hello!
I am Mahdi Atawna
I am here because I love to give
presentations.
You can find me at:
@mshanak
6. What is Problem of RDBMS?
▷ Schemas aren’t designed for Sparse data.
▷ Normalize, creates a lot of tables .
▷ Joins can be prohibitively expensive
7. What is Problem of RDBMS?
▷ Don’t do unstructured data search well (i.
e. google type searching)
▷ databases are simply not designed to be
distributed
○ Don’t Scale well.
○ clustering is not dynamic and expensive.
8.
9. ▷ Class of non-relational data storage
systems
▷ Running well on clusters (distributed)
▷ Mostly open-source
▷ Built for the 21st century web needs .
▷ Schema-less
What is NoSQL?
10. Why NoSQL?
1. Big Users
2. Big Data
3. The Internet of things
4. The Cloud Computing
5. Scalability and Performance Advantages
6. Flexible Data Model
11. Types/Models of NoSQL:
1. Key value Databases
2. Document Databases
3. Column family Stores
4. Graph Databases
12. Types/Models of NoSQL:
1. Key value Databases
2. Document Databases
3. Column family Stores
4. Graph Databases
16. Document Databases
Features:
1. Making the value visible for query
2. Flexible schema
3. Semi-Structured.
Limitations:
1. not handling transaction on multiple document.
Use Cases:
1. event logging
2. Content management systems, blogging platforms
17. 2
Graph
Databases
a database that uses graph
structures for semantic queries
with nodes, edges and
properties to represent and
store data.
18.
19. Graph vs RDBMS
A Graph Database creates the relationship
just once (when the edge is created)
VS
RDBMS computes the relationship every
time you query a database
25. Benefits
1. Just one product to learn and maintain
2. Just one vendor relationship to manage
3. No ETL, no synchronization required
4. Performance and Reliability is easy to test
from the beginning
29. OrientDb: Queries
Orient DB uses SQL as it's query language and adds
some extensions to enable graph functionality.
1. SQL is the mostly widely recognized standard.
2. The majority of developers have experience and
are comfortable with SQL
31. OrientDb: query examples
> SELECT FROM MyClass WHERE id = 1
> SELECT FROM User WHERE name LIKE 'mahdi%'
> SELECT SUM(salary) FROM Employee
WHERE age < 40 GROUP BY job
32. OrientDb: INSERT
> INSERT INTO Employee(name, surname, gender)
VALUES ('Jay', 'Miner', 'M')
> INSERT INTO Employee
CONTENT { name : 'Jay',
surname : 'Miner',
gender : 'M'
}
33. OrientDb: Joins
SQL:
SELECT *
FROM Employee A, City B
WHERE A.city = B.id
AND B.name = 'Rome'
OrientDb:
SELECT * FROM Employee WHERE city.name = 'Rome'
37. Query Relations - TRAVERSE
SELECT FROM
(TRAVERSE friends FROM #10:1234 )
WHERE city = 'Rome'
-----------------------
select from
( traverse in("livedIn") from #15:2 )
where @class="teacher"
40. Credits
Special thanks to all the people who made and
released these awesome resources for free:
▷ Presentation template by SlidesCarnival
▷ Photographs by Unsplash