Open chrisjsewell opened 2 years ago
@chrisjsewell Please assignme this.I would like to work on this
Hi @soma2000-lang, sorry for the late reply, what did you have in mind? I primarily wrote this down, whilst doing #5330, to collate some of my thoughts and circle back around to. But happy to collaborate
I feel the documentation is lacking a top-level "primer" of what aiida-core is/does (plus having this terminology permeate in the API code).
Something along the lines of:
Storage
I have recently been streamlining the storage API (e.g. #5154, #5172, #5320, #5145, #5228). It is of note that, although we currently split storage into the PostgreSQL database and the disk-objectstore repository, this should not be a primary concern for "standard" users. I would explain the storage as something like the following:
Profile
is intended for a single project, configured for the processing and storage of a single provenance graph.user
,authinfo
,computer
,group
,node
,log
,comment
node
entity is the primary component of a provenance graph (and the edges between them)node
has a "special" field,attributes
, which allows it to be extended to different data typesattributes
value is a dictionary that can contain keys specific to that data typeattributes
contain some special keys, which are deemed mutable until the process has completed (and is sealed). This includes thecheckpoint
key, which stores the process checkpoint in YAML serialized format.node
also has a special field,extras
, which allows users to store mutable data on any data type.node
entities can also storeobjects
, which are (string) POSIX paths that point towards bytes data.Processing
The AiiDA daemon and RabbitMQ broker, both fall under this processing umbrella. I feel the terminology around this (daemons, workers, etc) is probably a bit confusing to "non-technical" users, and could be improved. Also, as per https://github.com/aiidateam/AEP/pull/30, it is quite possible that we will replace RabbitMQ in the future, so there should not be any terminology specific to that (e.g. broker) But more to come on this later...