Skip to content

Feature: Louvain algo supports only one node table and one edge table #638

Description

@ericyuanhui

API

Python

Description

Unlike PageRank, Louvain cannot directly generate the desired "user communities" on heterogeneous graphs such as User -> Session -> NASDevice.
This stems from strict hard constraints in Ladybug’s current Louvain implementation:
Only one node table is supported
Only one edge table is supported
This means two key limitations:
You cannot run Louvain directly on multi-label graphs containing multiple node types like User, Session and NASDevice.
You cannot perform user community detection using cross-type relationships such as User -> Session and Session -> NASDevice.
Therefore, Louvain remains highly valuable for your ITDR use case, but only after converting the heterogeneous access chains into a graph consisting of relationships between nodes of the same type — in other words, a homogeneous graph.

Why is this feature unsupported? Multi-layer relational graph structures are commonly used in real-world scenarios to identify lateral drift, aren’t they?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions