database - Neo4j 适合 BI 用途吗?
问题描述
我正在设计一个项目,该项目从组织中的不同系统(HR、出勤、ERP 等)获取所有数据(数据的 ETL 流程),然后我想将数据放入数据库中以用于 BI 目的和异常检测目的。
我在 Graph DB 方面没有经验,我想知道 neo4j 是否是构建数据库的好解决方案?我希望能够将每位员工与他的过去以及他的同事进行比较。例如,我想知道与他的过去相比,他的到达和离开模式是否发生了变化,是否与他的同事不同......以及比较其余数据(他的年龄与其他同事的年龄。他的教育与他们的教育...等)
neo4j 可以支持这样的查询吗?这是一个很好的用例吗?(因为当您需要了解组织中的个人之间的关系时,图表在组织中才有意义)
解决方案
听起来您正在尝试做的是组织网络分析。AIHR Analytics 的网站看起来他们有一些关于如何在 HR 环境中使用它的信息。
基本上你要做的是建立一个图表,其中每个员工都是一个节点,具有你想要分析的任何属性(开始日期、结束日期、年龄、教育等)。然后,您将搜索一名员工,与直接的同事、同事的同事联系,并随心所欲。最后,比较员工和同事的属性。
我建议在开始时让图表尽可能简单(让员工与其他员工建立联系),然后随着您对 Cypher 的熟悉以及如何增加复杂性(例如其他类型的节点,如缺勤日期或技术技能)图数据库工作。Neo4j 有一篇文章供初学者使用。
推荐阅读
- java - ajax 中的错误“未捕获的 ReferenceError:未定义 responseParsedJSON”?
- javascript - Javascript中没有定义text.length,但是定义了text
- php - 完全难倒:数组不会返回值
- c++ - 如何使用用户定义的概念作为 std::span 的模板类型?
- html - 当一项溢出时,如何将列表项拉伸到 100%?
- amazon-web-services - 我应该在单个 Lambda 函数中定义我的 Lambda 函数还是分别定义每个函数
- c++ - 我正在尝试对 C++ 中两个指针的值进行算术运算,但它有时有效,有时失败。努力在网上寻找解释
- c - C读取txt文件,将信息保存在struct中并用函数调用
- bert-language-model - 类型错误:argmax():参数“输入”(位置 1)必须是张量,而不是 str
- python - 如何使 zipimporter 模块自包含