【问题标题】:Titan DB AggregationsTitan 数据库聚合
【发布时间】:2016-04-05 07:37:40
【问题描述】:

我想使用 Titan Db(存储后端:HBase)对我们维护的图数据执行聚合。我们的目标是将我们的数据仓库数据以图形的形式存储在 Titan DB 中。但是,聚合需要很多时间,我正在使用 Titan 的一个实例。 后续步骤: 1. 创建图 -4.5lac 顶点,4 lac 边。 2. 创建索引 - 顶点和边。 3. 启用数据库缓存。

当我在 4 的深度上遍历图形以找到总和以找到属性上大约 8000 个顶点的总和时,我发现第一次响应查询需要大约 30 秒。直到 3 分钟的后续查询(数据库缓存在 3 英寸处刷新)在 1 秒内完成。但 3 分钟后再次重建缓存并提供响应需要 30 秒。 有没有人有类似的用例以及关于如何使 Titan 的聚合性能更快的任何建议?我期待泰坦的实时表演。

【问题讨论】:

    标签: hbase graph-databases titan


    【解决方案1】:

    您可能已经知道这一点,但我将发布我们为从 Titan 获得一些性能提升所做的工作。这里的列表全部基于 Titan Docs 的 this 章节。

    1. 复合索引 - 您可能拥有这些索引,但值得一提的是,它们极大地加快了对某些顶点的直接查找速度。
    2. 以顶点为中心的索引 - 如果您有超级节点,这些可以很快消除您不需要遍历的边。
    3. 混合索引 - 这些索引非常适合任何需要数值范围或排序的操作,并且 Elasticsearch 是一个非常强大的索引工具。

    如果问题不是阅读而是写作,你也可以试试bulk loading

    【讨论】:

    • 感谢菲多的回复。我已经实现了上述建议,我发现查询仍然需要更高的延迟。你是否使用 Titan 来处理 OLAP 工作负载?如果是这样,您是否将其用作实时 OLAP 解决方案,或者您将图形缓存一段时间,之后您的查询将从 titan DB 的缓存信息中提供服务。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-20
    • 2019-02-03
    • 2018-06-25
    • 1970-01-01
    • 2011-06-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多