dbs¶
What does it do?¶
The phu dbs command group manages local databases used by phu. It provides a scalable contract so each database can define its own preparation logic while sharing a common user interface.
Current built-in backends are pfam and kofam.
Synopsis¶
phu dbs [COMMAND] [OPTIONS] [DATABASES...]
Supported commands¶
phu dbs listphu dbs status [DATABASES...] [--all]phu dbs prepare [DATABASES...] [--all] [--force-refresh]phu dbs refresh [DATABASES...] [--all]phu dbs remove [DATABASES...] [--all] --yes
Behavior contract¶
For each database, operations are interpreted by that backend:
- prepare: make the database ready for runtime use.
- refresh: validate local state and repair incomplete or stale data.
- remove: delete local data for selected databases.
- status: report readiness and local metadata.
For pfam, preparation includes:
- Ensuring
Pfam-A.hmmis present locally. - Building the byte-offset index used for accession lookup.
For kofam, preparation includes:
- Ensuring
kofam.hmmandko_listare present locally. - Building KO metadata index from
ko_list(threshold,score_type, etc.). - Building the byte-offset index for sparse KO model extraction.
KOfam metadata drives threshold behavior in phu screen; see screen thresholds and decision logic.
KOfam support follows the KofamKOALA method for KO assignment and thresholding:
Aramaki T., Blanc-Mathieu R., Endo H., Ohkubo K., Kanehisa M., Goto S., Ogata H. KofamKOALA: KEGG ortholog assignment based on profile HMM and adaptive score threshold. Bioinformatics. 2019 Nov 19. pii: btz859. doi: 10.1093/bioinformatics/btz859.
Examples¶
Prepare only PFAM:
phu dbs prepare pfam
Prepare all supported databases:
phu dbs prepare --all
Prepare only KOfam:
phu dbs prepare kofam
Check status:
phu dbs status pfam kofam
Refresh integrity:
phu dbs refresh pfam kofam
Remove PFAM data:
phu dbs remove pfam --yes
Remove KOfam data:
phu dbs remove kofam --yes
List supported databases:
phu dbs list