Grafik odaklı DBMS Bulutsusu Grafiği 3.2'nin piyasaya sürülmesi

Milyarlarca düğümü ve trilyonlarca bağlantıyı numaralandırabilen bir grafik oluşturan, birbirine bağlı büyük veri kümelerinin verimli bir şekilde depolanması için tasarlanan açık DBMS Nebula Graph 3.2'nin sürümü yayınlandı. Proje C++ ile yazılmış ve Apache 2.0 lisansı altında dağıtılmıştır. DBMS'ye erişim için istemci kütüphaneleri Go, Python ve Java dilleri için hazırlanmıştır.

DBMS, kaynakları paylaşmadan (paylaşılmayan-hiçbir şey paylaşmadan) dağıtılmış bir mimari kullanır; bu, bağımsız ve kendi kendine yeterli grafik sorgu işleme süreçlerinin ve depolanan depolama süreçlerinin başlatılması anlamına gelir. Meta hizmet, verilerin hareketini düzenler ve grafik hakkında meta bilgi sağlar. Veri tutarlılığını sağlamak için RAFT algoritmasını temel alan bir protokol kullanılır.

Nebula Grafiğinin ana özellikleri:

  • Erişimi yalnızca izinleri rol tabanlı erişim kontrolü (RBAC) sistemi aracılığıyla belirlenen, kimliği doğrulanmış kullanıcılarla kısıtlayarak güvenliğin sağlanması.
  • Farklı türdeki depolama motorlarını bağlayabilme. Sorgu oluşturma dilini yeni algoritmalarla genişletme desteği.
  • Verileri okurken veya yazarken minimum gecikmeyi sağlamak ve yüksek verimi korumak. Bir grafik düğümü ve üç depolanmış düğümden oluşan bir kümede, 632 milyar köşe ve 1.2 milyar kenardan oluşan bir grafik içeren 8.4 GB'lık bir veritabanında test edildiğinde gecikmeler birkaç milisaniyeydi ve aktarım hızı saniyede 140 bin isteğe kadar çıktı.
  • Doğrusal ölçeklenebilirlik.
  • Güçlü ve anlaşılması kolay, SQL benzeri bir sorgu dili. Desteklenen işlemler arasında GO (grafik köşelerinin çift yönlü geçişi), GROUP BY, ORDER BY, LIMIT, UNION, UNION DISTINCT, INTERSECT, MINUS, PIPE (önceki bir sorgunun sonucunu kullanarak) yer alır. Dizinler ve kullanıcı tanımlı değişkenler desteklenir.
  • Yüksek kullanılabilirliğin ve arızalara karşı dayanıklılığın sağlanması.
  • Yedek kopyaların oluşturulmasını kolaylaştırmak için veritabanı durumunun bir kesitiyle anlık görüntüler oluşturma desteği.
  • Endüstriyel kullanıma hazır (zaten JD, Meituan ve Xiaohongshu'nun altyapısında kullanılıyor).
  • Devam eden işlemleri durdurmadan veya etkilemeden veri depolama düzenini değiştirme ve güncelleme yeteneği.
  • Veri ömrünü sınırlamak için TTL desteği.
  • Ayarları ve depolama ana bilgisayarlarını yönetmeye yönelik komutlar.
  • İşi yönetmeye ve işin başlatılmasını planlamaya yönelik araçlar (şu anda desteklenen işlerden biri COMPACT ve FLUSH'tur).
  • Verilen köşeler arasındaki tam yolu ve en kısa yolu bulma işlemleri.
  • Üçüncü taraf analitik platformlarıyla entegrasyon için OLAP arayüzü.
  • CSV dosyalarından veya Spark'tan veri içe aktarmaya yönelik yardımcı programlar.
  • Prometheus ve Grafana'yı kullanarak izlemeye yönelik ölçümleri dışa aktarın.
  • Grafik işlemlerini görselleştirmek, grafikte gezinmek, veri depolama ve yükleme şemalarını tasarlamak için Nebula Graph Studio web arayüzü.

Yeni sürümde:

  • Belirli bir ifadeyle eşleşen bir alt dizeyi çıkarmak için extract() işlevine yönelik destek eklendi.
  • Yapılandırma dosyasındaki ayarlar optimize edildi.
  • İşe yaramaz AppendVertices operatörünü kaldırmak ve kenar ve köşe filtrelerinin uygulamasını devre dışı bırakmak için optimizasyon kuralları eklendi.
  • JOIN işleminin yanı sıra Traverse ve AppendVertices operatörleri için kopyalanan veri miktarı azaltıldı.
  • EN KISA YOL ve ALT GRAFİK performansı optimize edildi
  • Geliştirilmiş hafıza tahsisi (Arena Ayırıcı etkin).

Kaynak: opennet.ru

Yorum ekle