如何选择图数据库?除了产品性能,这几点也很重要!
尽管目前图数据库的价值已经受到了市场的认可,大部分企业也都加大了对于图技术的投入和应用。但对于企业而言要选择一款图数据库投入实际生产也是一个不小的挑战。图数据库的最终应用对于企业长期发展来说至关重要。面对市场上的图数据库和图分析产品,应该如何选择?产品性能自然是首要考虑的因素,除此之外,企业在选择合适的图数据库时还需要注意哪些方面?而哪些又是企业在做评估时容易忽略的问题,会对未来的项目实施,甚至业务发展产生影响?本文或许会给大家一些参考。
在回答如何选择合适的图数据库之前,企业决策者和项目负责人首先需要考虑以下几个问题:
企业为什么选择图数据库?
企业选择图数据库吗?
选择之前要准备什么?
企业为什么选择图数据库?
部分企业在没想明白这几个问题前,很容易盲目跟风选择图技术。图技术虽好,但每个企业情况不一样,发展阶段不一样,也就意味着选择不一样。所以在做图数据库采购的选择之前,首先需要想清楚企业为什么需要图数据库。是有明确的技术问题有待解决和提高?还是业务场景具有典型的图问题?例如,反欺诈、风控管理、供应链流程优化等跟图相关的复杂结构业务场景。如果有这类明确的问题和场景,需要对应的解决办法,那答案就很明确,选择图。对于一些新型的热点行业,例如人工智能、区块链和最近的元宇宙,他们更多地是在探索和寻找新的技术或投资方向,那图技术是他们很好的选择。
企业选择图数据库吗?
那回答完上面的问题,知道了为什么选择图数据库,那企业就一定要选择图数据库吗?首先,需要了解图数据库的市场现状和接受程度。
首先,图数据库还没有完全统一的标准,都还在逐步建立当中。但国际上有第三方的机构,如LDBC,已经制定了一些标准对图数据库的性能瓶颈和使用场景进行验证。另外,IEEE和ANSI也在逐步确定统一的图查询语言。
各家产品的优势不一样,企业在选择时,面对的并不是同质的产品,那考评标准必定也不一样。
另外,图技术本身的核心业务场景和优势业务场景有待验证和确定。目前并没有发现有什么特定业务场景非图不可。只能说在一些业务场景上,图技术相比传统技术,有一定的优势,但也不是一定要选择图。另一个现实就是大多数的图应用和部署需要图数据库厂商、合作伙伴和终端客户共同探索完成。这就需要选择图技术的企业具有探索的主动性,才能更好地促成图项目的实施落地。
而且,从我们接触的大部分客户来说,都会提出这样一个问题,图技术很好,但是对我来说有什么用呢?同时,知道图数据库的人很多都是紧跟前沿技术趋势非常专业的小部分技术人员,还远远没有到大众熟知的阶段。整体而言,图数据库属于较早的初期接受阶段,还没有到广泛的应用阶段。
所以,如果企业还处在比较保守的发展阶段,其实可以不用选择图数据库。
选择之前要准备什么?
对于一部分创新型企业而言,已经对图数据库的现状有了一定的了解,也确定要采用图技术的情况下,应该先充分了解企业自身是否已经准备好了应用图技术的条件。首先,团队是否已经了解图数据库的基本知识,同时是否放下了对于关系型数据库的先入为主的概念体系,开始全新的图思维模式。
第二点,团队需要先收集技术瓶颈和难于实现的业务需求,然后再整理哪些可以使用图技术来解决。而不是先入为主认为图可以解决哪些问题,而企业是不是有这些问题。TigerGraph的客户经常就有图的创新应用,是因为他们更懂自己的问题是什么,而图刚好可以帮到他们解决。例如,最近在沟通的制造行业客户遇到的一个列转行的操作问题,关系型数据库处理很慢,图数据库可以提升10以上的性能,这并不是一开始就知道用图来解决,是看到了问题,发现用图解决会更好,这就是一种创新应用。
第三点,对企业本身的技术栈用哪些工具构建和人才储备情况进行梳理,例如,团队成员是否有数据库经验,对于哪些大数据工具更为熟悉等。还有就是对于业务场景的梳理,图数据库的构建非常需要和业务专家不断地沟通才能获得更有效的schema,才能促成项目落地。
最后一点,利用图相关技术并不是一蹴而就的,需要反复迭代,需要有见效周期较长的心理建设。
在想清楚了以上的几个问题,我们再来讨论“如何选择合适的图数据库”。
首先考虑的必然是产品本身。我们通常会看以下这些方面:准确性、性能、扩展性、表达性(语言)、软件技术生态,数据上下游(BI,AI,Dashboard)、企业级功能(稳定性,安全性)、可视化、CI/CD。因为对比图数据库产品性能的内容非常多也非常全面,这次我们就不在这里展开,但要强调的是,我们通常说的性能强并不只是说响应时间越快越好,而应该看单位时间处理数据和计算的性能。遍历数据和统计计算的能力作为标准。这是图数据库优于传统方案的地方。性能的重要性还主要体现在计算量和吞吐量上,另外,就是体现在处理大量的图分析场景。全图计算,比如中心度、社区计算、连接分析、相似度算法等大批量算法是非常消耗性能的。如果选择的图数据库不能在可接受的时间内完成,这些构想就无法实现在实际的业务当中。这里完整版大家感兴趣可以去看我们的直播回放。
成本
那第二个关键就是大家都很关心的实施图数据库项目的总拥有成本,除了产品本身的直接成本,这里还需要注意开发时间成本、人员成本、迁移成本、硬件成本、维护成本。开发时间和图数据库产品本身的易用性和运行效率密切相关,这将决定在对一个场景进行验证、深度开发和稳定部署运行需要多长的时间。另外,图数据库产品的易用性也将影响项目的人员成本的投入,具体来说就是,一共需要投入多少人?是否需要招聘新的人员加入来进行项目开发?是否经常需要厂商介入调试?这些对企业来说都是可能增加的成本。便捷的图数据库产品将帮助企业最大程度地节约这部分成本。
然后是迁移成本。我们都知道如果替换产品,涉及上下游的连接方式、图查询语言替换等问题,我们都知道目前市场还没有统一的查询语言标准,因此,迁移成本是企业需要慎重考量的。但好消息是,查询语言标准(GQL)已经取得了一定的进展,而像TigerGraph可以支持马上就要出台的GQL,对于企业未来想要替换同样符合标准的任何图数据库,都将大大降低迁移成本。
然后就是硬件成本。存储同样的数据,进行同样的计算需要多少硬件资源,比如,CPU、内存、网络等等,这些都是项目管理者需要考量的成本。高性能的图数据库就有更高的压缩率和资源的利用率。就我们得到的反馈来说,同样的东西,TigerGraph只需更少的硬件资源,一定程度降低了这部分的成本。
专业的技术支持
图数据库厂商是否提供完整专业的技术服务支持是重要的考察点,包括但不限于,24x7的及时响应服务、完整的响应流程、专业的客户成功团队支持、知识共享库等等。尤其是对于风险厌恶型的行业,如,金融、智能制造、能源、通讯等,对于宕机等故障是低容忍的,那及时专业的响应服务就非常有必要。TigerGraph也是在与客户实际的沟通当中发现客户成功团队的必要性,有别于传统的售后团队,客户成功团队不仅仅是在客户使用产品出问题时才提供服务。而是定期与客户进行沟通,深入了解客户的业务诉求,帮助客户一同探索图应用。同时,听取和反馈客户的建议,让产品的每一次升级都更加客户友好。让客户无论是作为企业、团队甚至个人,都能从中收益,这才是真正意义上的客户成功。
社区
另外一个重点要考察的就是图数据库产品的社区。无论开源还是闭源产品,都会有自己的社区。虽然市面上对于选择开源和闭源产品有很大的争议,但其实对于企业使用来说,产品是否是开源,意义并不大。为什么这么说呢?如果本身不是数据库的开发者,那么图数据库的源代码也就并不重要了。只是使用图数据库来说,社区、技术文档、专业支持相对来说就更重要。特别是社区,作为一项很新的技术,市面上从事这方面的人才还相对较少,招聘成本相对较高。而且有社区不断地产生内容可以参考学习,专业玩家相互交流。因此,社区的活跃度也就很重要了。像TigerGraph虽然是闭源产品,但其社区的活跃度非常高,同时,面向的是全球的开发者和使用者,可以参考的内容更多,应用案例范围更广,有助于企业大大降低人员的培训成本。
其他
一个企业是否能够提供足够多的学习参考资料也是需要关注的。我们在与客户交流的过程当中,经常有客户咨询是否有案例和经验可参考。如果图数据库厂商能提供一些前沿的国内外案例可供参考,那也能很大程度上帮助刚接触图数据库的企业少走很多弯路。
另外,图数据库厂商是否在往技术前沿不断地探索和实践也是很重要的考察点。图技术作为一项非常新的技术,与机器学习关联性越来越强,大家熟知的GNN、GCN、等,TigerGraph一直都在进行相关的实践和测试,这也是为了让更多人能从图技术上收益,从而不断地进行最前沿的探索实践。一旦有企业有这方面的图技术需求,才有能力为企业提供这样的支持。
图数据库提供商的合作伙伴生态的搭建也是至关重要的。是否有足够多的合作伙伴能够共同构建,打磨相互之间的接口,这些都需要关注。包括,云平台,服务器,硬件加速,行业解决方案,咨询,数据上下游等等。
说了这么多,希望能够对有需要的人起到借鉴意义,总而言之,大家在选择图数据库的时候,要结合自身情况,具体问题具体分析,适合自己的才是最好的。