美文网首页
分布式与本地图数据遍历引擎区别分析

分布式与本地图数据遍历引擎区别分析

作者: 娃娃学软件 | 来源:发表于2018-11-04 22:45 被阅读0次

目的

在图数据库领域一直存在着两种遍历引擎:分布式图数据库遍历引擎本地图数据库遍历引擎
简单来说,本地图数据库遍历引擎通常用于将单机图数据库中图数据的遍历,满足用户的实时图遍历需求。分布式图数据库遍历引擎通常用于分布式数据库中图数据的遍历,满足用户的批量图遍历需求。
本地图数据库遍历引擎分布式图数据库遍历引擎首先在应用规模上是不同的。

分布式与本地图数据遍历引擎

本地图数据库遍历引擎

本地图数据库遍历
上图即是一份图数据,数据存储在单机图数据库中。我们对于图的遍历需求是
寻找出顶点1的好朋友的好朋友,Gremlin遍历路径描述如下:
g.v(1).outE('friend').inV.outE('friend').inV

在本地图数据库遍历引擎中,将遍历路径解析成执行计划,并实例化一个遍历器(Traverser),由这个遍历器去对图数据进行遍历并返回遍历结果。

分布式数据库遍历引擎

分布式图数据库利用图分割方法,将一个完整的图数据分割后存在不同分区中。当需要对这个图进行遍历分析的时候,由于底层数据的分布式存储,一个遍历实例往往是完成不了这种遍历需求的。
这个时候往往需要用到分布式式数据库遍历引擎。分布式遍历引擎会起多个遍历器,这些遍历器遍历的数据是不同的,它们是平行计算的,但是它们之间会不断的交换各自的计算结果,并将它传给其它的遍历器,这样其它遍历器得到这部分计算结果后与本地的遍历数据进行合并,从而得到整个图的遍历结果。

分布式图数据库遍历
如上图是一份图数据,假设这个图的数据存储在不同的图数据库分区上,我们的需求是在这个图中使用ranking算法,那么我们在每分顶点数据的遍历器中都需要运行如下的代码:
public void evaluateStep(int step) {
  if(!this.inbox.isEmpty() && step < 1000) {
    this.rank = this.rank + this.inbox.size();
    for(Vertex vertex : this.adjacentVertices()) {
      for(int i=0; i<this.inbox.size(); i++) {
        this.sendMessage(vertex);
      }
    }
    this.inbox.clear();
  }
}

相关文章

  • 分布式与本地图数据遍历引擎区别分析

    目的 在图数据库领域一直存在着两种遍历引擎:分布式图数据库遍历引擎和本地图数据库遍历引擎。简单来说,本地图数据库遍...

  • ElasticSearch

    ES介绍 ES开源 可扩展 的 分布式 全文搜索和数据分析引擎 功能 分布式搜索引擎 全文检索 数据分析引擎 对海...

  • ElasticSearch入门

    简介 Elasticsearch 是一个分布式、可扩展、实时的搜索与数据分析引擎,拥有强大的数据检索分析能力。ES...

  • Elasticsearch - 简介

    Elasticsearch 是一个分布式、可扩展、开源的全文搜索与数据分析引擎。它可以存储、搜索、分析 PB 级别...

  • ElasticSearch群集搭建介绍,实现高可用

    ElasticSearch简介: ElasticSearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它...

  • 01-Elasticsearch

    Elasticsearch 是一个分布式、可扩展、实时的搜索与数据分析引擎, 基于Lucene和Restful接口...

  • 深度剖析Elasticsearch核心倒排索引数据结构

    Elasticsearch 简介Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。El...

  • Spark 的基本介绍

    (1)MapReduce:分布式的计算分析引擎MR:分布式计算引擎,处理大规模的数据,主要是用于批处理操作,离线计...

  • ElasticSearch系列二:理论知识

    1.Elasticsearch的功能 1.1分布式的搜索引擎和数据分析引擎 1.2全文检索,结构化检索,数据分析 ...

  • presto安装配置,及连接mysql、hive、elastic

    0、前言 Presto是分布式SQL查询引擎,基于内存的并⾏计算,用来专门处理高速,实时的数据分析。Presto本...

网友评论

      本文标题:分布式与本地图数据遍历引擎区别分析

      本文链接:https://www.haomeiwen.com/subject/jvmlxqtx.html