graph (Çizge) veritabanları ve multi-model kavramı
TRANSCRIPT
![Page 1: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/1.jpg)
GRAPH (ÇİZGE) VERİTABANLARI
VE MULTI-MODEL KAVRAMI
Emre Akış@akisemre
![Page 2: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/2.jpg)
AJANDA• Teori• Isınma turları• İlişkisel vs Çizge Veritabanları• Neden kullanalım ?• Örnekler• Ürünler• Kullanım Önerileri• Sonuç• Multi-model (ekstra)
![Page 3: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/3.jpg)
TEORİ• G = (V, E) • V => Düğüm (Vertice)
• E => İlişki (Edge)
![Page 4: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/4.jpg)
BASİT ÇİZGE (SIMPLE GRAPH)• Düğümler ve onları birbirine bağlayan ilişkiler (yönsüz)
![Page 5: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/5.jpg)
YÖNLÜ ÇİZGE (DIRECTED GRAPH)• Her ilişkinin bir yönü vardır ya da her ilişkinin başlangıç ve
bitiş düğümü vardır.
![Page 6: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/6.jpg)
NİTELİK ÇİZGESİ (PROPERTY GRAPH)• Düğümlerin nitelikleri var (anahtar, değer) • İlişkilerin bir tipi var ve her zaman yönleri var• İlişkilerinden değerleri olabilir
![Page 7: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/7.jpg)
![Page 8: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/8.jpg)
![Page 9: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/9.jpg)
SOSYAL AĞLARDAN GELEN VERİ
![Page 10: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/10.jpg)
İLİŞKİSEL VS ÇİZGE
![Page 11: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/11.jpg)
JOIN VS GRAPH TRAVERSAL
![Page 12: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/12.jpg)
JOIN VS GRAPH TRAVERSAL
![Page 13: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/13.jpg)
JOIN VS GRAPH TRAVERSAL
![Page 14: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/14.jpg)
İLİŞKİSEL VS ÇİZGE • Kullanıcının arkadaşlarının arkadaşları (derinlik = 2) • 1.000.000 kayıttan, 1.000 kullanıcı için (saniye)
Derinlik Süre - İlişkisel Süre – Çizge
2 0.016 0.010
3 30.267 0.168
4 1.543.505 1.359
5 1 saati geçkin 2.132
http://www.neotechnology.com/how-much-faster-is-a-graph-database-really/
![Page 15: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/15.jpg)
NEDEN ?• Veritabanı performansı, her zaman aslında çizgenin belli
bir kısmı ile ilgili olduğundan, görece sabit kalıyor.• Sabit sorgu zamanı
![Page 16: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/16.jpg)
NEDEN ?• İlişkiler arası ilerlemek kolay ve hızlı
![Page 17: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/17.jpg)
NEDEN ?• Beyaz tahta dostu (anlatması, çizmesi kolay)
![Page 18: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/18.jpg)
NEDEN ?• Sonradan yeni tür ilişkiler ve düğümler kolaylıkla eklenebilir• Örn : Sosyal medyadan alınacak veri, her mecrada farklı
yapıda
![Page 19: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/19.jpg)
ÖRNEĞİN – TAVSİYE SİSTEMİ• Bunu alan bunu alabilir mi ? (Amazon,vs…)
![Page 20: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/20.jpg)
ÖRNEĞİN – FACEBOOK GRAPH SEARCH
![Page 21: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/21.jpg)
ÖRNEĞİN – KARGO
![Page 22: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/22.jpg)
ÖRNEĞİN - FRAUD
User ID
Cookie ID
![Page 23: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/23.jpg)
ÜRÜNLER
![Page 24: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/24.jpg)
GÖRSEL ARAÇLAR
![Page 25: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/25.jpg)
![Page 26: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/26.jpg)
SON OLARAK• Veriniz ilişkilerden oluşuyor ise, bu bir çizge olabilir !
![Page 27: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/27.jpg)
MULTI-MODEL KAVRAMI• Polygot Persistence
![Page 28: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/28.jpg)
MULTI-MODEL KAVRAMIDATABASE KEY-VALUE SQL DOCUMENT GRAPH OBJECT TRANSACTIONS
YES YES YES YES YES FULL ACID, EVEN DISTRIBUTED
YES NO YES YES NO FULL ACID, PESSIMISTIC LOCKING, CONFIGURABLE DURABILITY
YES YES YES NO YES SINGLE SERVER OR DISTRIBUTED
YES YES YES YES NO FULL ACID, MULTI-KEY, CROSS-NODE
https://en.wikipedia.org/wiki/Comparison_of_multi-model_databases
![Page 29: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/29.jpg)
KAYNAKLAR• Ücretsiz kitap
http://graphdatabases.com/
![Page 30: Graph (Çizge) Veritabanları ve Multi-Model Kavramı](https://reader034.vdocuments.site/reader034/viewer/2022051318/58ac84ed1a28abad118b498d/html5/thumbnails/30.jpg)
SORU & CEVAP