neo4j
Last updated
Last updated
Büyük ve ilişkisel verileri depolama ve işleme özelliğine sahip kullanımı zor olmayan grafik tabanlı bir veritabanıdır. SQL’e benzer cypher adında sorgu dili vardır.
Nodes
Neo4j’de her kayıt bir Nodes’dur. Her node’un içerisinde properties olabilir. Örnek id: 3, name: ahmet
gibi properties'ler bulunabilir.
Node oluşturma için aşağıdaki sorguyu kullanabiliriz.
Lables
Lables oluşturduğumuz nodlara verdiğimiz isimdir. Örnek aşağıdaki sorgu ile oluşturduğumuz bir node Label'ı Person’dur
Relationships
Neo4j’in en önemli özelliği ilişkisel veriler oluşturması ve bu ilişkilerin sayıları fazla olsa bile çok yüksek performans vermesidir. Aşağıdaki sorguda bir personelin birden çok firma ile ilişkisinin olabileceği varsayılarak PersonCompany nodes oluşturulmuştur.
Yukarıda bulunan Match aslında SQL’deki select yada INNER JOIN olarak düşünülebilir. Yukarıdaki sorguyu açıklayacak olursak. Label'ları çağırdık ve ilişkiyi kuracağımız properties'leri belirterek kesişimlerinden yeni bir nodes oluşturduk.
Person lables içerisinde bulunan nodes’lardan birini döner.
Person lables içerisinde bulunan nodes’lardan ismi Cevdet olan kayıtları döner.
Person lables içerisinde bulunan bir nodes'in ilişkili olduğu varklı bir lables içerisindeki kaydını döner.