Transformation
TRANSFORM picks up where EXTRACT finished by using the extracted csv files as the source.
Configuration allows the user to control which nodes and relationships are included and how they are processed. There are options to specify validation, cleaning, data linking, anonymisation and relationship details.
It is also possible to specify datatypes. Neo4j assumes string datatype unless it is well-formatted or pre-determined. Config allows the user to specify specific datatypes like dates, times, point, Boolean, etc.
All data
- Validation - basic validation of the data is performed. Validation is extensible and can be expanded, as requirements are identified.
- Cleaned - basic cleaning of all data is performed by stripping empty space and removing non-printable characters, etc. using regex. The cleaning functionality is expandable.
With clean data, the transformation proper starts:
Nodes and relationships
- Add Organisational Unit - where appropriate, the University Organisational Unit (e.g. College, School, Department) is added to the node. This will be picked up as a property during load.
- Data Augmentation - Room data is augmented with additional properties from the location master database, including latitude, longitude, square meterage, etc. Data augmentation is extensible.
- Anonymisation - Personal data is anonymised. An anonymisation function was developed to remove and replace any personally identifiable information (PII). The pipeline extracts minimal PII but this is safely anonymised. The functional also adds fake emails. See Appendix for additional details
- Relationships - Based on requirements in the configuration, relationships are extracted including optional relationship properties.