Skip to content

Muelsy/entity-service

 
 

Repository files navigation

entity-service

A service for performing privacy preserving record linkage. Allows organizations to carry out record linkage without disclosing personally identifiable information.

Clients should use clkhash or the encoding-service.

Documentation

The docs folder contains the service's documentation. A high level description of the service is available in docs/index.rst.

Building the docs

To build and serve the html docs run:

pip install -r docs/doc-requirements.txt
sphinx-build -b html docs html-docs
cd html-docs
python -m http.server

or using docker:

docker run -it -v <PATH TO PROJECT>:/src -v <OUTPUT HTML PATH>:/build quay.io/n1analytics/entity-docs

Build

Dependencies

Docker and docker-compose

Building the docker containers

Run ./tools/build.sh (from this directory, not from tools). This will create the tagged images used by docker-compose.

Note docker images are also pushed to quay.io, which can be used instead of building containers manually.

Component Quay.io
Backend/Worker Backend Docker Repository on Quay
Nginx Nginx Docker Repository on Quay
Benchmark Docker Repository on Quay
Docs Docs Builder Docker Repository on Quay

Running Locally

See the docs for more complete deployment documentation:

To run locally with docker-compose:

docker-compose -f tools/docker-compose.yml up

Testing

A simple query with curl should tell you the status of the service:

curl localhost:8851/api/v1/status
{
    "number_mappings": 2,
    "rate": 44051409,
    "status": "ok"
}

Testing with docker-compose

An additional docker-compose config file can be found in ./tools/ci.yml, this can be added to run tests along with the rest of the service:

docker-compose -f tools/docker-compose.yml -f tools/ci.yml -p entityservicetest up -d

About

Privacy Preserving Entity Service

Resources

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 67.7%
  • Jupyter Notebook 21.0%
  • Groovy 6.6%
  • Shell 1.8%
  • PLpgSQL 1.6%
  • Dockerfile 0.8%
  • Smarty 0.5%