TranslatorAPI Interface for graph databases.
Project description
See the Homepage for a better formatted version.
PLATER
PLATER is a service to stand up REST endpoint over a neo4j or redis graph database. There are some restrictions on the data structure of the Neo4j backend to be fully utilized through PLATER.
Data structure restrictions:
- All nodes should have an
id
to be searchable (Used in querying single Nodes)- All edges should have an
id
to be searchable (Used in generating ReasonerAPI)- Data is recommended to comply to the Translator Reasoner API.
Installation
To run the web server directly:
Create a virtual Environment and activate.
cd <PLATER-ROOT>
python<version> -m venv venv
source venv/bin/activate
Install dependencies
pip install -r PLATER/requirements.txt
Configure PLATER settings
Populate .env-template
file with settings and save as .env
in repo root dir.
WEB_HOST=0.0.0.0
WEB_PORT=8080
DB_HOST=<neo4j_or_redis_address>
DB_USERNAME=<user name required for neo4j, empty for redis>
DB_PASSWORD=''
DB_PORT=<redis port or neo4j http port>
DB_NAME=<db name for redis, uses default db for neo4j>
DB_TYPE=<use values 'redis' or 'neo4j'>
PLATER_TITLE='Plater'
PLATER_VERSION='1.0.0'
Run Script
./main.sh
DOCKER
Or build an image and run it.
cd PLATER
docker build --tag <image_tag> .
cd ../
docker run --env-file .env\
--name plater\
-p 8080:8080\
--network <network_where_neo4j_is_running>\
plater-tst
Clustering with Automat Server [Optional]
You can also serve several instances of plater through a common gateway(Automat). On specific instructions please refer to AUTOMAT's readme
Miscellaneous
/about
Endpoint
The /about
endpoint can be used to present meta-data about the current PLATER instance.
This meta-data is served from <repo-root>/PLATER/about.json
file. One can edit the contents of
this file to suite needs. In containerized environment we recommend mounting this file as a volume.
Eg:
docker run -p 0.0.0.0:8999:8080 \
--env DB_HOST=<your_db_host> \
--env DB_PORT=<your_db_port> \
--env DB_USERNAME=<db_user_name required for neo4j, ignored for redis> \
--env DB_PASSWORD=<db_password> \
--env DB_NAME=<required for redis> \
--env DB_TYPE=<redis or neo4j> \
--env WEB_HOST=0.0.0.0 \
-v <your-custom-about>:/<path-to-plater-repo-home>/plater/about.json \
--network=<docker_network_neo4j_is_running_at> \
<image_tag>
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.
Source Distribution
File details
Details for the file PLATER-GRAPH-1.2.tar.gz
.
File metadata
- Download URL: PLATER-GRAPH-1.2.tar.gz
- Upload date:
- Size: 24.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 942ddae9c2d7f20efc7878e45422ab13520ee159dc822848b036b6f87a545296 |
|
MD5 | cd76f1818d7715589208ed433806cbcd |
|
BLAKE2b-256 | 71050976d213781aa95f49e3d1b7a92eb5f8372c5d44032118f3303beed83238 |