2 puan yazan GN⁺ 2026-03-23 | 1 yorum | WhatsApp'ta paylaş
  • Rust ile geliştirilmiş yüksek performanslı bir grafik veritabanıdır; hem gömülü hem de sunucu modunda çalışır ve düşük bellek kullanımını korur
  • Labeled Property Graph (LPG) ve RDF triple modellerinin ikisini de destekleyerek sosyal ağlardan semantik web'e kadar geniş bir kullanım alanı sunar
  • GQL, Cypher, Gremlin, GraphQL, SPARQL, SQL/PGQ gibi çeşitli sorgu dillerini destekler; bu da geliştiricilere geniş bir seçim alanı sağlar
  • HNSW tabanlı vektör arama, ACID transaction'lar, MVCC snapshot isolation, çoklu dil binding'leri gibi eksiksiz bir özellik seti sunar
  • LangChain, LlamaIndex, MCP gibi yapay zeka framework'leriyle entegre olarak grafik verileri ile yapay zeka uygulamalarının birleştirilmesini destekler

Grafeo'ya genel bakış

  • Grafeo, Rust ile geliştirilmiş yüksek performanslı bir grafik veritabanıdır; hem gömülü hem de sunucu modunda çalışır ve düşük bellek kullanımını korur
  • LDBC Social Network Benchmark'ta en yüksek performansı kaydetmiş olup vektörleştirilmiş yürütme, uyarlanabilir chunking, SIMD ile optimize edilmiş işlemler destekler
  • Labeled Property Graph (LPG) ve RDF triple olmak üzere iki veri modelini de desteklediğinden, sosyal ağlardan semantik web'e kadar farklı alanlara uygundur
  • ACID transaction'lar, MVCC tabanlı snapshot isolation, çoklu dil binding'leri, yapay zeka entegrasyon ekosistemi içeren eksiksiz bir özellik seti sunar

Temel özellikler

  • Yüksek performanslı mimari

    • Rust tabanlı çekirdek motor ile yazılmıştır, C bağımlılığı yoktur; isteğe bağlı olarak jemalloc/mimalloc ve TLS C kütüphaneleri kullanılabilir
    • Push tabanlı yürütme motoru, morsel düzeyinde paralel işleme, kolon tipi depolama, türe göre sıkıştırma, maliyet tabanlı sorgu optimizer'ı içerir
    • Zone map kullanan data skipping ile verimli sorgu yürütmeyi destekler
  • Çoklu sorgu dili desteği

    • GQL, Cypher, Gremlin, GraphQL, SPARQL, SQL/PGQ desteği sunar
    • Projenin niteliğine ve geliştirici uzmanlığına göre uygun dil seçilebilir
    • GQL, ISO standartlı deklaratif pattern matching sunar; Cypher, Neo4j uyumlu ASCII-art pattern'leri kullanır; Gremlin ise Apache TinkerPop tabanlı traversal stiline sahiptir
    • GraphQL hem LPG hem RDF'yi destekler; SPARQL, W3C standartlı RDF sorgu dilidir; SQL/PGQ ise SQL:2023 GRAPH_TABLE sözdizimini destekler
  • Veri modelleri

    • LPG modeli, etiket ve özelliklere sahip düğüm ve kenar yapısını kullanır; çeşitli veri türlerinde özellikleri destekler
    • RDF modeli, subject-predicate-object triple yapısını kullanır ve SPO/POS/OSP index'leri ile verimli sorgulama sağlar
    • RDF, W3C standartlarıyla uyumlu olduğu için semantik web, ontoloji ve linked data için uygundur
  • Vektör arama özellikleri

    • HNSW tabanlı benzerlik araması sunar ve scalar, binary, product quantization destekler
    • Grafik gezintisi ile anlamsal benzerlik aramasını birleştirebilir
  • Gömülü ve bağımsız çalışma

    • Harici bağımlılık olmadan doğrudan uygulamaya gömülebilir veya REST API ve web UI içeren bağımsız bir sunucu olarak çalıştırılabilir
    • Edge cihazlardan büyük ölçekli production cluster'lara kadar ölçeklenebilir
  • Transaction ve bellek güvenliği

    • MVCC tabanlı snapshot isolation ile tam ACID transaction garantisi sağlar
    • Rust'ın bellek güvenliği ve fearless concurrency tasarımı sayesinde güvenilir eşzamanlılık işlemlerini destekler
  • Çoklu dil binding'leri

    • Python(PyO3), Node.js/TypeScript(napi-rs), Go(CGO), C(FFI), C#(.NET 8 P/Invoke), Dart(dart:ffi), WebAssembly(wasm-bindgen) desteği sunar
    • Aynı Grafeo motoru farklı dil ortamlarında kullanılabilir
  • Ekosistem ve entegrasyon

    • LangChain, LlamaIndex, MCP gibi yapay zeka framework'leriyle entegredir
    • Etkileşimli notebook widget'ları, tarayıcı tabanlı WebAssembly grafik görselleştirme, web UI içeren bağımsız sunucu, benchmarking araçları sunar

Kurulum ve başlangıç

  • Kurulum komutları

    • Python: uv add grafeo
    • Node.js: npm install @grafeo-db/js
    • Go: go get github.com/GrafeoDB/grafeo/crates/bindings/go
    • Rust: cargo add grafeo
    • .NET: dotnet add package GrafeoDB
    • Dart: grafeo: ^0.5.21
    • WebAssembly: npm install @grafeo-db/wasm
  • Hızlı başlangıç örneği

    • Python örneğinde, in-memory veritabanı oluşturulduktan sonra INSERT ve MATCH sözdizimiyle düğüm ve kenarlar eklenir, ardından ilişkiler sorgulanır
    • Rust örneğinde, GrafeoDB::new_in_memory() ile veritabanı oluşturulur ve bir session üzerinden aynı sorgular çalıştırılır

Lisans

  • Grafeo, Apache-2.0 lisansı ile dağıtılır

1 yorum

 
GN⁺ 2026-03-23
Hacker News yorumları
  • Grafeo'nun LDBC benchmark'ını uygulayıp uygulamadığını merak ediyorum
    Diğer grafik veritabanlarıyla karşılaştırmak isterim. Özellikle OLAP sorgu performansı ilgimi çekiyor
    İlgili yazı: Neo4j alternatives in 2026

  • Yakın zamanda gfql için cypher sözdizimini yayımladık
    Bu, doğrudan veri çerçeveleri üzerinde çalışabilen ilk OSS CPU/GPU tabanlı cypher sorgu motoru
    Databricks veya Splunk gibi ölçeklenebilir DB'lerle birlikte çoğunlukla güvenlik, dolandırıcılık tespiti, olay analizi ve ML+AI embedding pipeline'ları için kullanılıyor
    Veritabanı kurulumu olmadan tek bir GPU ile saniyede 1 milyardan fazla edge işleyebiliyor ve Apache Arrow veya Parquet verilerine de doğrudan uygulanabiliyor
    Ayrıntılar için GFQL benchmark dokümanına bakın
    Vektörleştirilmiş çekirdek şimdiden TCK'nin yarısından fazlasını karşılıyor ve şu anda daha karmaşık kısımlar ekleniyor
    NATO, bankalar, ABD hükümeti gibi çeşitli kurumlarda zaten production'da kullanılıyor ve artık open source olarak yayımlandığı için diğer geliştiriciler veya LLM'ler de doğrudan kullanabiliyor

  • Bu DB'yi (Grafeo) bilen biri var mı diye merak ediyorum
    Commit geçmişine bakınca neredeyse tamamen AI tarafından yazılmış bir proje gibi görünüyor. Tek kişi haftada 100 bin ila 200 bin satır commit etmiş
    Böyle durumlarda kod kalitesi zayıf ya da gereğinden fazla karmaşık olabiliyor
    Bunu gerçekten kullanan biri var mı, yoksa sadece bir AI portföy deneyi mi, öğrenmek istiyorum

    • Grafeo'yu yapan kişi benim. Neden oradan oraya yayıldığını ben de bilmiyorum ama soruları yanıtlayabilirim
      İlk sürüm, daha önce yaptığım Graphos adlı yerel grafik DB'nin yeniden kurgulanmış haliydi
      Motor, çekirdek, Python binding'leri ve testleri elle yazdım; dokümantasyon ve bazı yapılandırmalar AI tarafından üretildi
      AI tarafından üretilen kısımları gözden geçirdim ama henüz production seviyesinde değil
      Neo4j'e duyduğum memnuniyetsizlikten ve DuckDB'den Hännes ile yaptığım bir konuşmadan ilham alarak başladım
      LadybugDB'nin bellek kullanımı çok yüksekti, ben de kendim yapmayı denedim; şu anda kişisel olarak memnun şekilde kullanıyorum
      Ticari bir amacı yok, open source olarak yayımlandı ve katkıda bulunanları memnuniyetle karşılıyorum
    • Bu kadar kod miktarı tipik bir grafik DB yapısı için fazla
      Grafik motorlarında ince tasarım çok önemli olduğundan, tasarım kalitesi açısından endişeliyim
    • LLM tarafından yazılmış bir DB kullanmak kâbus gibi olurdu. Büyük DB'leri yönetmek zaten zor
    • Son 3 ayda LLM'in yaptığı grafik DB'lerin sayısı patladı
      Benim işlettiğim gdotv.com'da da hangilerini destekleyeceğime karar vermek giderek zorlaşıyor
    • Haftada 100 bin satır commit etmek bir red flag. Büyük olasılıkla kod üretimi ya da formatlama ağırlıklıdır; tasarım veya test güvenilirliği düşük olabilir
  • Grafik DB sayısı o kadar arttı ki kafa karıştırıcı hale geldi, bu yüzden yeni site gdb-engines.com'u yaptım
    Her DB'yi sınıflandırıp düzenliyorum

    • Tabloda embedded mi yoksa server tabanlı mı olduğunu gösteren bir ayrım olsa iyi olur
    • Bu listeyi acaba LLM ile mi ürettiniz diye merak ediyorum
  • Gerçekten production ölçeğinde güvenilir grafik DB var mı, merak ediyorum
    Open source veya vendor ürünleri arasında, Meta'nın TAO'su gibi özel sistemler hariç neleri bilmek gerekir?

    • Doğrudan yanıt vermekten kaçınmak isterim ama grafik DB seçimi gerçekten zor bir konu
      Bu konuyu FOSDEM 2025 konuşmamda ele alıyorum
    • Open source tarafında JanusGraph, DGraph, Apache AGE, HugeGraph, MemGraph, ArcadeDB uygun seçenekler
    • Ben TypeDB geliştirmesine liderlik ediyorum. Cypher kullanmıyor ama büyük production ortamlarında da iyi çalışıyor
      Çoğu OSS DB bir ölçüde open-core modelini izliyor
    • Facebook'un grafik sistemi yalnızca TAO değil, daha büyük bir ekosistem
      İlgili yazı: A brief history of graphs at Facebook
    • gdotv.com'da onlarca grafik DB'yi entegre ettik; çoğu production seviyesinde
      Özellikle JanusGraph gibi eski ama şirketlerde istikrarlı biçimde kullanılan teknolojiler var
  • Bu aralar AI/LLM patlaması sayesinde ortaya çıkan 25 grafik DB var
    Rust ile yazınca HN'de ilgi çekiyor ama LadybugDB bunu yapmamayı seçti
    Bunun yerine kademeli iyileştirme ve güçlü tipli Cypher üzerine odaklanmak istiyor
    İlgili tartışma: LadybugDB Discussion #141

    • LadybugDB de o 25 proje arasında değil mi diye merak ediyorum
    • Dilden çok ürünün kendi olgunluğu müşteriyi kazanır; bu açıdan iyi bir karar
    • Dil tartışmaları sıkıcı ama Rust'ın DB geliştirmede eşzamanlılık ve veri bozulmasını önleme açısından gerçek avantajları var
      Bunu sadece bir "hissiyat" olarak değil, teknik gerekçelerle değerlendirmek gerekir
  • Grafeo açıkça AI destekli yazılmış bir proje
    Kod miktarı çok ama basit bir AI üretimi gibi görünmüyor; tasarımı da özgün
    JS testleri tamamen AI tarafından üretilmiş gibi duruyor ve bazı alt repo'ların kalitesi tutarsız
    Apache 2.0 lisansı ve özellikleri açısından ilginç, ama daha fazla maintainer'a ihtiyacı var gibi görünüyor

  • Helix DB ile karşılaştırıldığında farkları neler, merak ediyorum
    Ayrıca neden illa GraphQL ile DB sorgulamak gerektiği de bana pek net gelmiyor

  • "graph-bench ile LDBC benchmark test edildi" ifadesi sanki bağımsız bir benchmark'mış gibi anlaşılıyor
    Eğer kendi yaptığınız bir araçsa bunu açıkça belirtmek ve diğer projeleri de adil biçimde karşılaştırabilmek için geri bildirim almak iyi olur

    • O cümle de muhtemelen AI tarafından otomatik yazılmış
      Son dönemde HN'de sık görülen AI üretimi codebase'lerin tipik bir kalıbı
      Haftada 100 bin satırdan fazla commit varsa, bir insanın kodun içeriğini gerçekten anlamış olma ihtimali düşüktür
  • Grafeo ve ilgili grafeo_langchain kütüphanesini yerel Ollama modeliyle birlikte denedim
    Sonuç yarım başarı gibiydi
    Hâlâ Python tabanlı Kuzu grafik DB'yi seviyor ve kullanıyorum

    • gdotv.com'da Kuzu'yu deneyip denemediğinizi merak ediyorum
      Kuzu artık geliştirilmiyor ama kararlı olduğu için desteğini sürdürüyorsunuz
      LadybugDB'ye (ana fork) geçiş de kolay, bu yüzden değerlendirmeye değer