Indexing Nexus data
We want to explore how the nexus data could be integrated in the NOMAD search features. The first task would be to simply try ingesting any simple nexus data directly into our ES index: later we have to think about how this plays nicely with results and the GUI.
Here are a few observations from an initial test:
- Need support for dynamically extending the used metainfo:
- This already works to an extent. The programmatic way for creating the metainfo structure from XML files is a bit cumbersome, but seems to work.
- Fix possible recursion issue in Nexus metainfo:
- When I tried to create the mappings for BASE_CLASSES, there seems to be a recursion loop: maybe
nx_group_geometry
andnx_group_TRANSLATION
are children of each other...? When I removed the creation of the BASE_CLASSES package, creating the mapping for the rest of the nexus information works fine.
- When I tried to create the mappings for BASE_CLASSES, there seems to be a recursion loop: maybe
- ES field limits:
- ElasticSearch limits the number of fields that are allowed in the mapping. Already simply adding ES annotations to the
nx_unit
s that are present in the nexus data hits the default limit of 1000 fields. Maybe start out with some small section and then we explore the limits later. The limit can of course be changed in the ES config but this should be decided later once we know what we want to index in the end.
- ElasticSearch limits the number of fields that are allowed in the mapping. Already simply adding ES annotations to the