TGViewer
Python Portal Python Portal @pythonportal · 50.2K subscribers
Post #5365 8.33K
Эта новая графовая БД в 496 раз быстрее Neo4j!

Давайте разберем почему:

Классическая графовая БД хранит две вещи: узлы (entities) и ребра (relationships между ними).

Когда вы делаете запрос в классическую графовую БД, она делает обход через pointer chasing:

→ стартуем с узла
→ переходим по указателю к связанному узлу
→ еще один указатель
→ и так далее

Это по своей природе последовательный процесс. Один hop за раз. И по мере роста графа это становится болезненно медленным.

FalkorDB задает другой вопрос:

А что если представить весь граф как матрицу?

Как это работает:

Представьте обычную таблицу. Строки — source nodes, колонки — destination nodes.

Если Mary подписана на Bob, ставим в позицию [Mary, Bob] = 1.

Все. Весь граф теперь это матрица из 1 и 0.

Назовем ее матрицей Follows (F).

Дальше интереснее:

Хотите узнать на кого подписаны друзья Mary? В классической графовой БД вам нужно сделать два перехода: Mary → друзья → друзья друзей.

Но с матрицами вы просто умножаете матрицу Follows саму на себя: F × F = F².

Это одна операция — и готово!

А более сложный паттерн вида “A follows B, B likes C” превращается в: Follows × Likes.

То есть traversal можно выразить через математику.

Почему это важно:

- матричные операции оптимизируются уже больше 50 лет
- современное железо (CPU/GPU) заточено под матрицы
- операции выполняются параллельно (pointer chasing не может)

Плюс есть еще несколько оптимизаций (например sparse matrices, реализация на C и т.д.), и все это делает FalkorDB в 496 раз быстрее Neo4j.

График на фото это хорошо показывает.

Классические графовые БД идут через Cypher QL → Pointer-Based Traversal, а FalkorDB использует Matrix-Aware Planner, который превращает запросы в матричные операции.

FalkorDB полностью строится на этом принципе:

- нативный модуль Redis (in-memory и очень быстрый)
- использует GraphBLAS для sparse matrix вычислений
- автоматически транслирует Cypher-запросы в матрическую алгебру

Это важная тема для AI-приложений, потому что…

Современным AI-агентам и RAG-системам нужно обходить сложные связи в реальном времени. Когда агент делает reasoning через knowledge graph, связывая пользователей, действия и результаты — каждая миллисекунда задержки складывается.

Vector DBs ловят семантическую близость. Но они не держат явных связей.

Knowledge graphs закрывают эту дыру.

И когда вашему агенту нужно делать multi-hop reasoning по тысячам связанных сущностей, матричный traversal упрощает масштабирование AI-приложения без проблем с задержками.

FalkorDB полностью open-source, вы можете посмотреть реализацию на GitHub и попробовать сами.

Ссылка на GitHub-репозиторий

👉 @PythonPortal
  • ❤ 24
  • 🔥 16
More from @pythonportal
  1. Oct 9, 2026Один из главных моментов, когда я по-настоящему понял, как работают трансформеры: «Переста…
  2. Oct 9, 2026Google выпустила EmbeddingGemma 2. Это первая открытая мультимодальная модель для эмбеддин…
  3. Oct 8, 2026Тестируйте торговые стратегии на основе машинного обучения на исторических рыночных данных…
  4. Oct 8, 2026Смесь CS 1.6 и MW2, которая работает полностью локально в Google Chrome — https://cs.dphn.…
  5. Oct 7, 2026Робототехника — это, по сути, постоянное согласование систем координат. Лидар видит мир в…
  6. Oct 7, 2026Понимание алгоритмов меняет то, как вы пишете код. Этот плейлист учит именно пониманию. Па…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →