2016-04-11 8 views
0

Organisation Umgang mit HR-Daten (60 GB + jeden Tag).Abfrage groß hierarchisch

Wie Organisationshierarchische Daten in effizienter Weise abzufragen. Angenommen, Sie möchten abfragen -

a) Auf welcher Ebene befindet sich eine Person in einem Organisationsbaum? b) Wie viele direkte und indirekte Berichtsmitglieder gibt es für eine Person, z. A hat 2 direkte Reporter (B und C) und B/C hat jeweils 10 direkte Reporter. Dann in diesem Fall Total indirect reports für A = 20 und Total für A = 22

Welcher Rahmen wird dafür am besten sein? Sollten wir uns für Neo4j entscheiden, das Cypher Query Language, Spark GraphX, Spark GraphDF usw. zur Verfügung stellt?

Einige schnelle Beispiel-Code wird viel helfen.

Antwort

1

Verwenden Chiffre für beide -

a) Um herauszufinden, wo die Mitarbeiter in der Organisation in Bezug auf die Top-Chef:

MATCH (e:Employee {empid: "ID"})-[r:REPORTS_TO*]->(boss:Employee) 
return e, r, boss 

b) die Mitarbeiter zu finden, die direkte und indirekte Berichte von einem Angestellten:

MATCH (e:Employee {empid: "ID"})<-[r:REPORTS_TO*1..2]-(sub:Employee) 
return e, r, sub 
Verwandte Themen