- 2.0x
- 1.5x
- 1.25x
- 1.0x
- 0.75x
- 0.5x
InfoQ:各位观众大家好,我们现在正在 2018 QCon 全球软件开发大会上海站的现场,InfoQ 很荣幸地邀请到了 TigerGraph 资深用户解决方案经理常新宇老师接受我们的采访,首先请常老师简单介绍一下自己吧。
常新宇:大家好,我是 TigerGraph 用户技术解决方案的经理常新宇。我在 TigerGraph 工作已经有 4 年,从事产品的研发,客户的解决方案,大部分主要的客户都是经由我来提供专业的知识服务、培训,以及解决方案的开发。
InfoQ:想问一下常老师,图数据库典型的应用场景和领域有哪些?
常新宇:图数据库的应用领域是很广泛的,只要是反映事物之间联系的计算都可以通过图数据库来解决他们的问题,比较常用的领域,包括反欺诈,反洗钱,产品的推荐,用户 360 以及产业链等等。
InfoQ:它与传统的数据库相比,在推荐系统,支持图谱等方面有哪些优势?
常新宇:图数据的优势主要在于它对数据存储的一个形式,它打破了以往通过表格的存储,它采用了一种边跟节点的存储方式,它可以大大增加计算的性能,这样的话,当我们在做产品推荐的时候,我们可以从你的目标用户出发,发展它的属性、行为,假设用户做一些搜索、点击的行为,甚至说用户是哪里人,多大岁数,我们都可以找到它相关的用户,这样,通过它相关的用户,我们看一看,这些跟它相关的用户里面,他们也购买了怎样的产品,从而我们会做个产品的推荐,对于知识图谱的应用,发挥图数据的优势,它可以找到你所有,我们拿一个语言分析的例子来讲好了,这样的话,每一句话呢,你可以找到你所有 Key word,你所有关键字相似的 Key word,再从这些相似的 Key word 出发,找到他们的,通过他们的一个主谓宾的形式找到你的宾语,这样就是非常好的应用。
InfoQ:那您能简单介绍一下 TigerGraph 图数据库的原理和架构吗?
常新宇:TigerGraph 是一个原生并行的图数据库,原生的意义就在于,它对数据库的存储本质上也是以一个图的形式对数据进行存储,那么它的存储是分布式的存储边跟结点的数据,这样,当我们把数据进行分区之后,当我们在执行查询的时候,我们就可以做到说一个大规模并发的处理,我们把点跟边的分区呢,分布在一个机群所有的机器上面,这样的话,我们在计算的时候呢,我们会尽可能的利用所有硬件的资源,当我们的 CPU 有很多核的时候,我们就会用到所有的 CPU 核,当我们在一个机群里面有很多机器的时候,我让所有的机器并行化处理我们的查询。
InfoQ:GSQL 文档是否完善,对于数据分析、挖掘人员快速学习的门槛是不是太高了?
常新宇:现在在网上的时候,在网上的话,我们已经有全备的用户文档,而且我们也正在持续地改进它们,我们即将推出一个新版的用户文档,可以供用户更简单的使用,可以搜索,可以更方便地找到他们想要的东西,而且此外我们陆续也会在将来提供一些网上教学的小视频和用户社区的服务。
InfoQ:TigerGraph 图数据库,它是如何高效存储数据和图结构信息的?
常新宇:TigerGraph 就像我刚才所讲的,首先它有分布式的存储,为了服务并行的计算,另外一点 TigerGraph 对数据存储有很高的压缩性能,那么通过对数据的压缩,在有限的内存里面我们可以容纳更多图的数据,那么在数据被压缩之后,我们又可以有助于我们更高效的计算,更好地使用系统资源。
InfoQ:目前支持哪些图挖掘算法?
常新宇:现在我们支持的算法涵盖还是比较广泛的,因为我们的 GSQL 查询语言,它实际上是可以实现你任何的逻辑,那么所有的算法都可以通过它实现,那么我们现在所提供的作为内置库的查询的算法里面,包括英文和一些社区发现,以及联通图等等,最短路径等等的算法。
InfoQ:那在海量节点,复杂关系的图可视化方面,TigerGraph 图数据库做了哪些技术创新和优化?
常新宇:我们的创新在于,我们支持一个分布式的存储,当你的数据非常巨大的时候,我们不仅可以实现说用更多的内存来容纳更多的图以外,我们也可以增加你新的节点服务器来容纳更多的图。
InfoQ:与 TigerGraph、Neo4j 和 Titan 对比,TigerGraph 有哪些优势?
常新宇:优势可以分为几点,首先是我们性能上的优势,通过我们这个,我们做得英文,可能一个性能的比较,那么 TigerGraph 在一步查询,二步查询,三步查询里面的性能快于 Neo4j 和 Titan 几倍、甚至几十倍,几百倍的,这样在加载的速度里,TigerGraph 也是两三倍地优于 Neo4j,在读取和查询的性能之外呢,我们的查询语言是一个完整的查询语言,它可以表达任何用户的业务逻辑,然后当我们在使用像英文这样查询语言的话,是可以很简单的表达我们想要匹配的模式,但是在处理更复杂的查询的时候,它的表达能力就受限了。第三点,Graph Studio,我们的 Graph Studio 可以支持用户做非常简单的开发,只要是拖拖拽拽,在图形界面上就可以很容易地完成一个图的解决方案。
InfoQ:TigerGraph 是单机版本的还是支持分布式的?
常新宇:TigerGraph 现在是两者都支持,当你在下载开发者版本的话,它暂时只支持单机版本,如果你申请到一个企业版的话,通过使用一个 Lessons K,这样我们就支持一个机群版,分布式的存储。
InfoQ:它还具备商业版本和社区版本?
常新宇:现在是这样,只是说你在网站上我们有不同的地方可以申请到开发者版和商业版。
InfoQ:你们在开发过程中有遇到哪些坑吗?
常新宇:开发过程,当然我们这个产品 6 年来,一路走来全部都是,虽然我们是一年之前走出英文,但是我们也是一直都在做客户,那么在不断地与客户的练兵,或者实现我们产品的这个过程当中,实际上,我们产品整个的迭代、开发都是针对我们所遇到的客户最迫切的需求,是针对这个市场上的一个空缺,那所以说我们这个产品发展方向,就是为了来完全是针对用户的痛点,一点一点演化成现在的样子。
InfoQ:那在接下来,就是未来两年,你们是打算在技术上更大的一个升级?或者有怎么样的开发想法?
常新宇:我们有很多非常好的新的特性,我们想要加到我们的系统当中,比如说举个例子好了,比如加更多种类的索引的支持,比如加更多的算法的库,比如,总之有很多,我们都有计划要实现。
InfoQ:谢谢,以上就是我们今天的采访,非常感谢常老师,谢谢。
评论 2 条评论