[WIP] Sync datatables#88
Conversation
30685c0 to
c4ad14c
Compare
|
Cool. Will add refgetstore creation/hash-calculation for the fasta files. |
…data tables into a Refgetstore, generating digest summaries compatible with GA4GH refget: sequence collections standard
|
We are interested! Ping @pauldg |
|
Hi @sveinugu, |
Updated README to clarify descriptions and correct terminology.
Clarify README descriptions and fix terminology
| if dbkey is None: | ||
| dbkey = fasta_value_to_dbkey[value] | ||
| elif dbkey != 'No_dbkey': | ||
| del entry['dbkey'] |
There was a problem hiding this comment.
This should trigger a warning as well IMO.
|
To answer some questions from above:
Hi @lldelisle, to answer your question: And yes, you don't need a store at all to get the digests.
Sure, happy to have that discussion. One thing worth putting on the table: I've been building S3-backed refgetstores for datasets like VGP. You can explore them here:
This is a web interface built directly on top of a refgetstore living in S3, no backend server required. The benefit is a cloud-friendly storage layer: the store is just static files in a bucket, and the explorer (and the seqcol API) read from it over HTTP range requests. So instead of standing up and maintaining a server, you can drop the store in object storage and serve or explore it directly. Might be a useful distribution model to consider alongside CVMFS? Also, your CVMFS tree already has a |
|
@nsheff Thanks for the response! The main thing I was unable to convey to the others was how refgenie v1 connects to this, as I was unable to locate the corresponding code base. The syncing efforts is linked to efforts reorganising how mapping indices etc are generated and populated. Regarding S3: CVMFS is doing much of the same work as an S3 bucket, but with local caching and, importantly for us, relaying into our secure server setup at the University of Oslo which is cut off from the rest of the internet. Thus, I would very much like to investigate a frontend web interface running on top of local (e.g. CVMFS) storage. I was able to get this to work by setting up a simple FastAPI hosting of the local file system, but this was a bit hacky and would be nice if something like this would work out-of-the-box. There are potential security issues here, but since CVMFS in nature is a read-only file system I am sure it would be possible to secure if that is the source of the refgetstore. |
for datatable entries
|
Added a script to compute hashes (sha256) and manifest (hash, size, name, of all included files) of all data table entries starting from the yaml created by Idea is that we can match the top-level hashes .. and use the manifest info only in case of conflict. Edit: On my instance the script needed 2h and produced 500MB yaml (mostly due to the manifests .. maybe I should create one with and one without manifests). Guess that we should also include the index data tables. |
|
Hi @bernt-matthias, |
This was an oversight (caused by copy paste) I will change it. |
including the all_fasta - because: why not
Co-authored-by: Lucille Delisle <lucille.delisle@unige.ch>
…o datatable_sync
This PR is opened just to open conversation and allow anyone to contribute.