Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Future: Allow users to use the optimade structure as first-class citizen that can import/export to AiiDA #15

Open
unkcpz opened this issue Mar 7, 2023 · 1 comment
Labels
roadmap/proposed A roadmap item that has been proposed but not yet processed

Comments

@unkcpz
Copy link
Member

unkcpz commented Mar 7, 2023

Motivation

Integrate the OPTIMADE API as a first-class citizen into the AiiDA ecosystem. This will enable AiiDA users to import and export structure data easily using the OPTIMADE API, providing a more streamlined and convenient way to access and share structure data.

Use case 1: Users can use the OPTIMADE API to query for structures and use it directly for their AiiDA workflow.

Use case 2: Users running calculations have a group of structures in the database they want to convert to the OPTIMADE server for hosting the data. Currently, this can be achieved using aiida-optimade by using the AiiDA data type. It would be very useful if the output structures conform to the OPTIMADE specification format and can be easily served using optimade-python-tool.

Desired Outcome

The optimade query can be directly used as the structure input of a calculation.
The export data can be a database type that can be served as OPTIMADE server without data modification or other plugins (aiida-optimade) required.

Impact

If the OPTIMADE data can be recognized by the AiiDA, the Materials Cloud can easily use the exported MongoDB JSON database to serve the Materials Cloud OPTIMADE sub-databases. Probably it is possible to dynamically serving the data from the Materials Cloud archive that is a database compatible with OPTIMADE specification.

The utilization of AiiDA as the workflow engine, coupled with the utilization of structures from an OPTIMADE-supported database, enables high-throughput calculations to seamlessly traverse the database without necessitating additional structure conversion or sanitization procedures.

Complexity

We need an additional structure data type, other than StructureData and CifData, we want to have OptimadeData. However, we don't want to introduce any more domain-specific data types to the aiida-core. One option is to implement it as a plugin, but this would require moving both StructureData and CifData at the same time. This goes against the goal of having a domain-agnostic AiiDA core, as discussed in another roadmap issue (TODO: link required). While it's straightforward to add a plugin for the new structure data type, replacing the current data in aiida-core with the new plugin is not a simple task.

Progress

NaN

@unkcpz unkcpz added the roadmap/proposed A roadmap item that has been proposed but not yet processed label Mar 7, 2023
@unkcpz unkcpz mentioned this issue Mar 7, 2023
27 tasks
@unkcpz
Copy link
Member Author

unkcpz commented Mar 7, 2023

@eimrek @ml-evs @giovannipizzi I did this roadmap item which I opened and assigned to myself last year after the workshop. Sadly no progress on this but it is very related to what we are going to discuss on Monday.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
roadmap/proposed A roadmap item that has been proposed but not yet processed
Projects
None yet
Development

No branches or pull requests

1 participant