腾讯亿级用户规模自研业务的上云实践解读,立即报名 了解详情
写点什么

图数据库应用案例解析

  • 2018-12-10
  • 本文字数:2448 字

    阅读完需:约 8 分钟

图数据库应用案例解析
00:00 / 00:00
    1.0x
    • 2.0x
    • 1.5x
    • 1.25x
    • 1.0x
    • 0.75x
    • 0.5x
    网页全屏
    全屏
    00:00


    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:谢谢,以上就是我们今天的采访,非常感谢常老师,谢谢。


    2018-12-10 17:042393
    用户头像

    发布了 1189 篇内容, 共 501.8 次阅读, 收获喜欢 2341 次。

    关注

    评论 2 条评论

    发布
    用户头像
    难道不是 license key ?
    2018-12-10 17:23
    回复
    没有更多了
    发现更多内容

    mPaas研发流程和线上运维介绍

    阿里云金融线TAM SRE专家服务团队

    ios android

    Redis常见问题--哈希冲突

    是老郭啊

    哈希表 Redis项目

    开发者的福音,LR.NET模块化代码生成器

    Learun

    Java 敏捷开发 .net core 计算机程序设计艺术 软件设计

    NodeX Component - 滴滴集团 Node.js 生态组件体系

    滴滴普惠出行

    面经手册 · 第8篇《LinkedList插入速度比ArrayList快?你确定吗?》

    小傅哥

    Java 数据结构 面试 小傅哥 linkedlist

    银行大数据新玩法,构建“一湖两库”金融数据湖

    华为云开发者联盟

    大数据 数据湖 FusionInsight MRS DWS

    LeetCode题解:155. 最小栈,单个栈同时存储最小值,JavaScript,详细注释

    Lee Chen

    大前端 LeetCode

    消息队列之事务消息,RocketMQ 和 Kafka 是如何做的?

    yes

    分布式事务 RocketMQ kafak 事务消息

    Spring Boot中获取配置的一些方法

    Geek_416be1

    Spring Boot 2

    Docker 镜像的备份恢复迁移

    哈喽沃德先生

    Docker 容器 微服务 镜像

    OpenKruise:Kubernetes 核心控制器 Plus

    郭旭东

    Kubernetes 云原生 OpenKruise

    数字化转型需要低/零代码平台的支持

    代码制造者

    低代码 数字化转型 企业信息化 零代码 编程开发

    Redis 持久化--AOF

    是老郭啊

    redis redis持久化 aof

    向云再出发:如数据般飞驰的内蒙古

    脑极体

    Vue+Springboot项目部署

    ZRK

    Vue 前后端分离 springboot 部署

    Flink检查点、保存点及状态恢复-13

    小知识点

    scala 大数据 flink

    大事情!中国限制 AI 算法出口。网友:这是要阻止XX“下跪”

    程序员生活志

    5G边缘计算:开源架起5G MEC生态发展新通路

    华为云开发者联盟

    开源 5G 边缘计算 公有云 EdgeGallery

    Spring整合WebSocket

    牛初九

    10万奖金等你拿!2020第四届易观OLAP算法大赛火热开启

    易观大数据

    JVM 内存模型、字节码、垃圾回收面试要点

    escray

    学习 面试 垃圾回收 字节码

    一个空格引发的“救火之旅” - 记一次 SOFA RPC 的排查过程

    阿里云金融线TAM SRE专家服务团队

    30年技术积累,技术流RTC如何成为视频直播领域的黑马?

    华为云开发者联盟

    云计算 AI 5G RTC 华为云

    Redis常见问题--单线程

    是老郭啊

    nosql redis 线程

    易观CTO郭炜:如何构建企业级大数据Ad-hoc查询引擎

    易观大数据

    【译】Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases 上篇

    花里胡哨

    分布式数据库 异步 Amazon Aurora 日志驱动

    JAVA,.NET项目开发难上手?Learun敏捷开发框架解君愁

    Philips

    Java 敏捷开发 .net core

    一键洞察全量SQL ,远离性能异常

    华为云开发者联盟

    数据库 sql 大数据 数据治理 华为云

    一文带你深扒ClassLoader内核,揭开它的神秘面纱!

    我没有三颗心脏

    Java ClassLoader java基础 类加载器

    开发任务管理分析报告

    森林

    OFD版式技术深度解读:卷首语

    thuni

    版式文档 OFD

    图数据库应用案例解析_大数据_InfoQ 中文站_InfoQ精选文章