HCA Ingest Service neo4j graph validator package
Project description
HCA Ingest Service Graph Validation Suite
What is this useful for in the scope of the HCA:
- Enables data wranglers to visually analyze the relationships inside a submission to look for inconsistencies.
- Provides an automated graph validator for which to create tests using step 1 and can be run fully containerized.
Features
The suite is divided in two separate, extensible parts:
-
hydrators enable users to import and populate data into a graph database. The reason not to call them importers is
import
is a reserved keyword in Python andfrom importers import importer
is a bit confusing. :dizzy_face: -
actions provide different tools to work with the generated graph. The first and most important is to run a series of tests to validate the constraints Data Wranglers want to impose on submissions. Another action is generating reports and extracting statistics from the graph to send to the submitters. Any other actions can be implemented to extend the suite.
Functionality
So far, the functionality planned is as follows (WIP items are still not fully implemented):
-
Hydrators:
- Ingest Service Spreadsheet.
- Ingest Service API Submission.
- BioSamples API (WIP).
-
Actions:
- Opening an interactive visualizer to query the graph.
- Running tests on the graph.
- Generating reports for the graph (WIP).
Installation
The graph validator suite requires docker running in the host machine.
From the git repo
git clone git@github.com:HumanCellAtlas/ingest-graph-validator.git
cd ingest-graph-validator
pip install .
From PyPI
A Python package has been published in (PyPI)[https://pypi.org/project/ingest-graph-validator].
pip install ingest-graph-validator
If you install the Graph Validator Suite this way, you head to the github repo to get the graph tests and the graph reports.
Usage
Basic usage for data wranglers
ingest-graph-validator init
ingest-graph-validator hydrate xls <spreadsheet filename>
After the hydrator is done loading the data, point a browser to http://localhost:7474 to take a look at the graph.
More help
The Suite uses a CLI similar to git. Running a command without specifying anything else will show help for that command. At each level, the commands have different arguments and options. Running any subcommand with -h
or --help
with give you more information about it.
The root level commands are:
-
ingest-graph-validator init
starts the database backend and enables a frontend visualizer to query the database, inhttp://localhost:7474
by default. -
ingest-graph-validator hydrate
shows the list of available hydrators. -
ingest-graph-validator actions
shows the list of available actions. -
ingest-graph-validator shutdown
stops the backend.
Containerized execution
WIP
Credits
This package was created with Cookiecutter.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size ingest_graph_validator-0.2.3-py2.py3-none-any.whl (17.5 kB) | File type Wheel | Python version py2.py3 | Upload date | Hashes View |
Filename, size ingest-graph-validator-0.2.3.tar.gz (178.2 kB) | File type Source | Python version None | Upload date | Hashes View |
Hashes for ingest_graph_validator-0.2.3-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | adbfca3ad8cd1eb9b115eaaf1a033055da15bb4583912c557f9ac8d264f185aa |
|
MD5 | e8147b37754ecb89556195aed1de0d12 |
|
BLAKE2-256 | d446b9854d219db4621c30c3c86d9df939471d81a258615aa54555090976f74c |
Hashes for ingest-graph-validator-0.2.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 079537539c2b3c5a8ab5f167640373f03883b6c584eab8f628d28c0418f97623 |
|
MD5 | 9c4681424774bedd7a26b5de4826d7c5 |
|
BLAKE2-256 | 190d9d34dd2d69e52694d6894c4b99d643fb6c6b978b9972f43a8a8e291e57f8 |