Skip to main content
QUICK REVIEW

[论文解读] Graph or Relational Databases: A Speed Comparison for Process Mining Algorithm

Jeevan Joishi, Ashish Sureka|arXiv (Cornell University)|Dec 31, 2016
Service-Oriented Architecture and Web Services参考文献 1被引用 7
一句话总结

本文比较了关系型数据库(MySQL)与图数据库(Neo4j)在实现流程挖掘中使用的两种组织数据挖掘算法——相似任务(Similar-Task)与分包(Sub-Contract)——时的性能表现。结果表明,对于依赖关系的查询任务(如分包检测),Neo4j 的查询执行速度比 MySQL 快 up to 7 倍;而 MySQL 在写操作和相似度计算方面表现更优,Neo4j 则展现出更高的 I/O 效率和缓存性能。

ABSTRACT

Process-Aware Information System (PAIS) are IT systems that manages, supports business processes and generate large event logs from execution of business processes. An event log is represented as a tuple of the form CaseID, TimeStamp, Activity and Actor. Process Mining is an emerging area of research that deals with the study and analysis of business processes based on event logs. Process Mining aims at analyzing event logs and discover business process models, enhance them or check for conformance with an a priori model. The large volume of event logs generated are stored in databases. Relational databases perform well for certain class of applications. However, there are certain class of applications for which relational databases are not able to scale. A number of NoSQL databases have emerged to encounter the challenges of scalability. Discovering social network from event logs is one of the most challenging and important Process Mining task. Similar-Task and Sub-Contract algorithms are some of the most widely used Organizational Mining techniques. Our objective is to investigate which of the databases (Relational or Graph) perform better for Organizational Mining under Process Mining. An intersection of Process Mining and Graph Databases can be accomplished by modelling these Organizational Mining metrics with graph databases. We implement Similar-Task and Sub-Contract algorithms on relational and NoSQL (graph-oriented) databases using only query language constructs. We conduct empirical analysis on a large real world data set to compare the performance of row-oriented database and NoSQL graph-oriented database. We benchmark performance factors like query execution time, CPU usage and disk/memory space usage for NoSQL graph-oriented database against row-oriented database.

研究动机与目标

  • 研究仅使用 SQL 构造在行式关系型数据库(MySQL)中实现相似任务(Similar-Task)算法的可行性。
  • 考察这些算法在图导向型数据库(Neo4j)中使用原生 CYPHER 查询的适应性。
  • 通过实验基准测试,对比两种数据库在查询执行时间、CPU 使用率、磁盘 I/O 和内存使用率方面的性能表现。
  • 评估两种系统在典型流程挖掘实际数据工作负载下的可扩展性与效率。
  • 根据组织数据挖掘任务的性质——特别是关系遍历与计算密集型操作——确定最优数据库选择。

提出的方法

  • 使用标准 SQL 查询和高级存储过程在 MySQL 中实现相似任务(Similar-Task)算法,将其视为单层应用。
  • 使用原生 CYPHER 查询语言在 Neo4j 中实现相似任务(Similar-Task)算法,充分利用图原生遍历能力。
  • 在 MySQL 和 Neo4j 中分别仅使用 SQL 和 CYPHER 实现分包(Sub-Contract)算法,以确保公平对比。
  • 对两种数据库均使用 Java API 搭配记忆化技术,评估其在内存计算工作负载下的性能表现。
  • 在大规模真实世界事件日志数据集上开展实验,测量查询执行时间、CPU 使用率、磁盘 I/O、内存使用率和页面错误次数。
  • 使用系统监控工具(如性能监视器)收集并对比两种数据库系统之间的低层级资源指标。

实验结果

研究问题

  • RQ1在查询执行时间和资源使用方面,相似任务(Similar-Task)算法在 MySQL 与 Neo4j 中的性能表现如何?
  • RQ2在遍历参与者关系方面,分包(Sub-Contract)算法在 Neo4j 与 MySQL 中的表现有何差异?
  • RQ3在大规模数据处理过程中,MySQL 与 Neo4j 哪种数据库系统展现出更优的 I/O 效率和缓存行为?
  • RQ4对于事件日志数据的导入与存储,MySQL 与 Neo4j 的相对写入性能特征如何?
  • RQ5对于相同数据集和算法,MySQL 表与 Neo4j 图元素在磁盘空间需求方面有何差异?

主要发现

  • 当仅创建唯一元素时,Neo4j 在加载大型数据集方面的性能比 MySQL 快 1.25 倍,表明其在数据插入且重复极少时表现更优。
  • MySQL 在写操作方面比 Neo4j 快 1.5 倍,显示出在数据插入和更新工作负载中性能更优。
  • 相似任务(Similar-Task)算法中的相似度计算在 MySQL 中比在 Neo4j 中快 32 倍,凸显了 MySQL 在计算密集型任务中的优势。
  • 在遍历关系以检测分包参与者时,Neo4j 的执行速度比 MySQL 快 7 倍,证明了 Neo4j 在关系密集型查询中的优势。
  • Neo4j 的缓存效率比 MySQL 高 18 倍,磁盘 I/O 操作次数少 6 倍,且磁盘操作耗时仅为 MySQL 的十分之一。
  • 尽管由于无索引邻接和属性存储导致磁盘使用量较高,但 Neo4j 在唯一图元素上的磁盘空间使用量仅为 MySQL 的十二分之一;而在存在重复元素的数据集中,其磁盘使用量则超过 MySQL 的三十倍。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。