JavaScript devre dışı. Daha iyi bir deneyim için, önce lütfen tarayıcınızda JavaScript'i etkinleştirin.
Neo4j (Graph DB) – CYTHER Komut Tablosu (Tam Teknik)
Neo4j (Graph DB) – CYTHER Komut Tablosu (Tam Teknik) 1) Temel Node & Relationship Komutları
Komut / Script Açıklama Kullanım Alanı Avantajlar Risk CREATE (n:User {name:'Ali'})Node oluşturur Veri ekleme Hızlı ve esnek Yanlış label → karmaşa MATCH (n:User) RETURN nNode arama Sorgu Basit, hızlı Çok veri varsa yavaşlama CREATE (a:User)-[:FOLLOWS]->(b:User)Relationship oluşturur Sosyal grafik Yönlü ilişki Yanlış ilişki türü veri karışıklığı MATCH (a)-[r:FOLLOWS]->(b) RETURN rRelationship sorgulama Analiz Esnek Milyon ilişkide performans düşer DELETE nNode silme Temizlik Kolay İlişkisi varsa hata verir DETACH DELETE nNode + ilişkileri silme Büyük temizlik Komple kaldırır Geri dönüş yok
2) Node & Relationship Güncelleme Komutları
Komut Açıklama Kullanım Alanı Avantajlar Risk SET n.age = 25Node özelliği günceller Veri yönetimi Direkt işlem Tip uyuşmazlığı olabilir REMOVE n.ageÖzellik siler Temizlik Hızlı Veri bütünlüğü bozulabilir SET r.since = 2020İlişkiye özellik ekler Zaman bazlı grafik Tarih saklama Yanlış format MERGE (n:User {id:1})Yoksa oluştur, varsa getir Idempotent işlemler Çakışmayı önler Yanlış key → duplicate
3) İleri Seviye Sorgular (Traversal / Pattern Matching)
Komut Amaç Kullanım Alanı Beklenen Etki MATCH (a)-[:FOLLOWS]->(b)-[:FOLLOWS]->(c) RETURN a, c2 seviye ilişki bul Sosyal network Derin grafik analizi MATCH p = (a:User)-[*1..5]->(b)1–5 adım ilişkileri bulur Derin traversing Graph discovery MATCH (u:User)-[r]->(x) RETURN type(r)Relationship türlerini listeler Şema analizi Veri yapısı doğrulama MATCH (u:User) WITH u ORDER BY u.age DESC RETURN u LIMIT 10Yaşa göre sıralama Raporlama En büyük yaşlı kullanıcıları döndürür
4) Index, Constraint, Performans Komutları
Komut Açıklama Kullanım Alanı Avantaj CREATE INDEX user_id FOR (n:User) ON (n.id)Index oluşturur Sorgu hızlandırma Performans artar DROP INDEX user_idIndex siler Yönetim Gereksiz index temizliği CREATE CONSTRAINT unique_id IF NOT EXISTS FOR (n:User) REQUIRE n.id IS UNIQUEUnique constraint Veri bütünlüğü Duplicate engeller EXPLAIN MATCH (n:User) RETURN nSorgu planı Optimizasyon Query cost analizi PROFILE MATCH ...Gerçek çalıştırma planı Derin optimizasyon Her aşamayı gösterir
5) Graph Manipülasyon – Use Case Scriptleri
Senaryo Script Açıklama Yeni kullanıcı oluşturma CREATE (:User {id:1,name:'Berk'})Node ekleme İki kullanıcıyı takip ettirme MATCH (a:User {id:1}), (b:User {id:2}) CREATE (a)-[:FOLLOWS]->(b)Relationship Kullanıcıya “Yönetici” etiketi ekleme MATCH (u:User {id:1}) SET u:AdminLabel ekleme Etiket kaldırma MATCH (u:User) REMOVE u:AdminLabel silme Kullanıcının tüm ilişkilerini silme MATCH (u:User {id:1}) DETACH DELETE uKomple silme
6) Path, Route, Algoritma Tabanlı Komutlar
Komut Açıklama Kullanım Alanı MATCH p = shortestPath((a:User {id:1})-[:FOLLOWS*]-(b:User {id:50})) RETURN pEn kısa yolu bulur Sosyal grafik MATCH (n)-[:FOLLOWS*3]->(m)3 adım uzak ilişkiler Derin keşif MATCH (u)-[r]->(v) RETURN u, v, COUNT(r)Relationship yoğunluğunu ölçer Graph analytics CALL db.schema.visualization()Şemayı grafik olarak gösterir Yönetim
7) Backup – Restore – Export
Komut Açıklama Kullanım Risk neo4j-admin dump --database=neo4j --to=backup.dumpFull dump Yedek alma Büyük DB yavaş alır neo4j-admin load --database=neo4j --from=backup.dumpDump yükleme Restore Var olan DB’yi siler CALL apoc.export.csv.all("export.csv",{})Tüm DB’yi CSV export Analiz CSV büyük olabilir CALL apoc.import.csv(...)CSV import Data pipeline Yanlış format hata verir
Neo4j – Kısaca Güçleri & Zayıflıkları
Özellik Avantaj Zayıflık Node-Relationship yapısı Sosyal ağ, siber tehdit zinciri, fraud analizi için müthiş SQL kadar yaygın değil Cypher dili Basit ve okunabilir Çok büyük graphlarda optimizasyon zor Traversal işlemleri Çok derin ilişkileri hızlı işler Yanlış modelleme → yavaşlama APOC eklentileri Çok güçlü analiz araçları Ek kurulum gerekiyor