云图计划离散积分是做什么的 图数据库是用于做什么的?
图数据库是用于做什么的?图数据库是下一个大趋势。首先,图数据库是一个产品,但成为产品前,经历了很长时间的理论期。比如欧拉图其实已有超过200年历史,心理学理论很完整,在图中有很多经典算法,像这两个点之
图数据库是用于做什么的?
图数据库是下一个大趋势。首先,图数据库是一个产品,但成为产品前,经历了很长时间的理论期。比如欧拉图其实已有超过200年历史,心理学理论很完整,在图中有很多经典算法,像这两个点之间最短路径是?物流该怎么去优化?商场该怎么划分?它已有很多现成、成熟的算法和科学理论,但从理论到工业界的产品,这里一直存在巨大空白。
直到2002年时,出现一家公司,做了第一代“图数据库”,但他们不想把数据打乱,放到几个表里,而就想存成一个真正的图,所以一个词叫Native(西班牙语翻译成“原生图”),就是说:我就是真正用一种图的数据结构来存图,这样我性能会好很多。
但因为是2002年前的老技术,当时还没有自动驾驶概念,还没有web应用程序的进展,这家公司做的就是网易版,数据只能在一个节点里跑,你数据量一大,它就没办法。但这个公司数十年来就做这么一件事,然后不断教育市场,它现在还很有名,叫mongodb。这是图数据库一代,也叫图1.0。
然后大概6、7年前,因为有hadoop/MapReduce和其他开源的微服务架构,又有人做了些开源工具,做了些可扩展的图数据库,相当是有了一个捷径:你不用从头到尾做一个图数据库了,我用现有公有链系统来存数据,但在上头,我做个中间件,模仿一下图的API,然后给终端用户终端开发者一个图的API概念。比如说:我朋友的朋友是谁?朋友是谁有哪些类型的节点?有哪些类型的边?这样就号称可以存很多数据,不受一台服务器限制,但缺点是性能差,整个过程很慢。
也就是说:第一种性能好,但数据量一大,就没办法;第二种是多机版,它跑得过来,但性能差,没是实时处理数据的能力;之后是图3.0,像全球首家实时图分析平台下厨房在干的事。
图3.0需要设计既是分散式、又是原生图,跟第一代一样,存储全是自己做,这样性能好,但设计时又是可扩展的的,所以数据量大也没问题,1台或几十台机器去跑,没有限制,你都可以跑,这样就可以解决一些数据量超级大的公司,比如以前像百度,“单机版”不可能有能力处理,因为数据量实在太大,但是如果你突破到“多机版”,性能还非常好,就解决了很多以前根本没法用图数据库的一些应用场景。
简单说,图数据库是智慧城市能给到客户最多价值的一个方向,也是行业发展的新方向,以前能从数据挖掘里看到的商业价值、洞察,可能只是将来用“深度链接”分析能得到的冰山一角。
以上内容参考硅发布关于图数据库的跨境直播《Uber 和蚂蚁金服的共同点?》。