数据库 频道

如何选择一款合适的图数据库?

图数据库方兴未艾,而且变化很快。市场上图数据库种类繁多,缺乏标准,差异非常大,使得用户在进行图数据库选型时产生了困扰。

Gartner建议企业结合自身场景特性进行选择合适的图数据库,“在不断增长的查询速度需求与日益复杂的数据模型之间平衡取舍”,评估现有数据库是否支持多语言编程接口、是否具备高扩展轻部署能力、是否拥有可视化分析工具、与上下游供应商的兼容性等。

根据《金融电子化》杂志社在2023年发布的《金融业图数据库发展调研报告》,金融机构选择图数据库产品时需要从性能、安全可控性、业务支撑度、简单易运维、应用能力五个维度分析图数据库产品间的核心差异。调研结果显示,当前金融业对于图数据库产品的技术价值关注度主要聚焦于存储、查询、分析能力,87.8%的被调研机构将图数据库的大数据处理性能看作最重要的考量指标。

企业在进行图数据库选型时,主要考虑产品技术、供应商、拥有成本三方面因素:

1、产品技术

  • 高可用性和安全性。作为一款数据库产品,需要产品的稳定性,具备高可用性。由于图数据库更倾向于映射关系,需要更严格的安全和访问措施,确保数据隐私和安全。

  • 查询执行速度。能否查询大量数据并实时生成结果。

  • 可扩展性。能否应对当下和未来数据增长,可扩展性非常重要。

  • 是否支持HTAP。获得实时洞察的需求催生了HTAP的发展,不同图数据库供应商有各自侧重的负载支持,如OLAP或OLTP,大家都在向着支持HTAP的方向发展。

  • 数据加载性能。图数据库在使用过程中涉及批量数据加载任务,尤其是数据导入性能是非常重要的衡量指标,支持输入数据格式的范围是一个相关的选择指标。

  • 支持标准应用程序接口。不同图数据库对 REST API、JSON 输出、JDBC、Python 和 Spark 等行业标准的支持存在差异。若缺乏对行业标准的充分支持,会导致大量额外的软件开发和测试工作。

  • 易用性。不同的图数据库在各方面的易用性存在差异,针对软件开发人员、DBA、业务分析师,能够提供足够的易用性。比如,开发执行环境、运维监控能力等方面的支持。业务分析师可能需要可视化分析工具。

  • 图查询语言。不同供应商采用不同的图查询语言,在能力上存在差异,图灵完备性、表达图计算能力、本地处理分析能力、复杂参数化程序支持等是重要考量因素,图查询语言国际标准GQL正在制定中,未来是否支持通用标准图查询语言也很重要。根据经验,“最 佳”的图查询语言取决于个人偏好。

  • 图算法库。图算法的数量和丰富程度,是否支持图算法的定制和扩展等。

  • 部署方式。是否支持云部署(视业务场景而定)。

2、供应商

  • 相关案例。图数据库较新,很多应用还在探索中,一些企业会考虑供应商是否有相关成熟标杆案例。

  • 可持续的技术服务支持。众多图数据库供应商组织成熟度差异大,有可能因发展不善倒闭、被并购、或放弃图数据库产品。需要供应商能够提供可持续的技术服务支持,规避供应商风险。

  • 培训支持以及完善的产品文档。由于图数据库较新,培训支持、友好完善的产品文档对于企业应用图数据库非常重要。

  • 活跃的开发者社区。一个不断发展壮大的开发者社区,有助于帮助客户使用图数据库产品,解决使用过程中遇到的问题。

  • 上下游生态兼容性。数据栈越来越复杂,图数据库有自己的生态位,需要很好地兼容上下游生态。

3、拥有成本

拥有成本是图数据库整体评估中优先级较低的部分。总体拥有成本(TCO),包括License费用、软件维护、支持费用、版本升级实施费用、运营成本。不同图数据库总体拥有成本差异较大。在图数据库使用时,要注意计算资源开销,面向图数据库的应用程序所消耗的计算资源非常可观。不同图数据库之间的这种消耗差异非常明显,并且会影响图数据库环境的运营成本。

云产品如图数据库的DBaaS服务、Serverless服务,在云中运行应用程序的成本明显低于在企业内部运行相同应用程序的成本。然而许多企业的经验是,云成本优势很快就会被更高的计算资源消耗所抵消。甚至,到了一定规模后,云的成本会比本地部署还要高。

小结

选择一款合适的图数据库并不容易,企业需要根据自己的业务场景需求谨慎选择。厂商在宣传时都会说自己产品的功能、性能等有多么好,也有不少图数据基准测试的文章介绍其性能优势。

实践出真知。在进行图数据库选型时,要选择自己的真实业务场景测试,尤其是对比较复杂的实际业务场景进行测试。所有数据库基准测试都充满了复杂性,如果没有特定的用例,其实用性就会受到限制。唯一重要的基准是你自己的业务需求基准,值得花时间从自己的使用案例中导入和查询一些示例数据,验证对自己重要的指标。

参考资料:

《How to choose a graph database: we compare 6 favorites》

《How to select a graph database》

《金融业图数据库发展调研报告》

2
相关文章