在过去的几年中,图数据库变得越来越流行,因为它们为表述数据提供了极大的灵活性。大多数图数据库都是用JAVA编写的,但是在Python,.NET,php和C ++中有一系列好的解决方案。
Neo4j是最流行的高度可扩展的本地图数据库(用Java编写)之一。Neo4j的Graph平台经过优化,可以存储,映射,分析和遍历连接的数据网络,以发现不可见的上下文和隐藏的关系。
通过直观地映射数据点及其之间的连接,Neo4j支持智能实时应用程序,包括:人工智能,机器学习,物联网,实时推荐;主数据管理;欺诈识别;身份和访问管理。
Neo4j带有2个版本:社区版和企业版。Community Edition是学习Neo4j和不需要大量扩展或专业服务与支持的小型项目的理想选择。企业版具有与社区版相同的功能,具有企业级可用性,管理以及向上和向外扩展功能。
Neo4j社区版的主要功能和优势:
HyperGraphDB是一种通用的开源数据存储机制。顾名思义,它是用于存储超图的数据库。HyperGraphDB主要设计用于知识管理,AI和语义Web项目,但它也用作各种规模Java项目的嵌入式面向对象的数据库。尽管HyperGraphDB属于图数据库的通用系列,但其许多设计都提供了以任意复杂度来管理结构丰富的信息的方法。
主要功能和优点:
Titan是最具扩展性的开源图数据库之一,已优化用于存储和查询包含数千亿个顶点和边的图形。可以在Hadoop中进行此操作,对大型数据集非常有用。Titan是一个事务数据库,支持数千个并发用户实时执行复杂图形。Titan具有弹性和线性的可扩展性,可以满足不断增长的数据和用户群的需求。实现语言是Java。
主要功能和优点:
由于其C ++内核,ArangoDB是一个非常快速的解决方案。可以将ArangoDB用作键/值,文档或图的专用数据库,并在一个查询中混合使用这些数据模型。ArangoDB设计为本地多模型数据库,可让你以非常灵活的方式对数据进行建模并支持大量用例。可以扩展ArangoDB以更好地满足你的需求。可以通过Foxx(一个由google V8支持的数据库微服务Java框架)添加逻辑,从而在C ++级别上完全访问ArangoDB的功能。
主要功能和优点:
Apache TinkerPop还是一个受欢迎的开源图数据库。Apache TinkerPop是与供应商无关的图计算框架,为批处理分析图形处理器(OLAP)和实时事务性图形数据库(OLTP)的分发。当数据系统启用TinkerPop时,可以将域建模为图形,并使用Gremlin图形遍历语言对其进行分析。此外,所有启用TinkerPop的系统都相互集成。
主要功能和优点:
ThingSpan——可扩展的图分析平台。它由Objectivity/DB支持,通过与Apache Spark和Hadoop分布式文件系统本地集成来利用开源堆栈。
Cayley——其灵感来自Freebase和Google的Knowledge Graph背后的图数据库。
OpenLink Virtuoso——用于数据访问,虚拟化,集成和多模型关系数据库管理的现代企业级解决方案。
Apache Giraph——为实现高可伸缩性而构建的迭代图处理系统。
VelocityGraph——可分发的开源C#.NET混合NoSQL图数据库和对象数据库。高性能数据持久性。
InfoGrid——具有许多其他软件组件的开源Web图数据库。