In compliance with the UK financial standards, we need to develop a OFAC list search tool, that looking for a match in our huge person database (25M).
So, because we don't have the server resources to do a search like this, we move to AWS, to schedule a monthly load, search and report.
This example shows partially the development that we did.
Amazon Web Services - Elastic Beanstalk
Personsearch uses a number of open source projects to work properly:
- [AngularJS] - HTML enhanced for web apps
- [Angular Material] - great UI that use Google Guidelines
- [Angular Resources]- great API call manager
- [python2] - evented I/O for the backend
- [Django] - fast high level Python Web framework
- [Django RestFramework] - Django plugin for REST API with web console
- [Django RestFramework Filters] - Django plugin for Search API
You can test the app in
- Amazon Web Service People Search
- Amazon Web Service People API
- Amazon Web Service People Upload API
- Amazon Web Service People All API
For upload you can generate a random database with this awesome app and paste the contents in the web UI People Upload REST API.
Once you configure your AWS account, credentials and you have setup your python environment you can setup your virtual environment.
virtualenv ps-virt
source ps-virt/bin/activate
pip install django
pip install djangorestframework
pip install django-filter
mkdir peoplesearch
cd peoplesearch
git clone https://github.com/DKbyo/peoplesearch.git
python manage.py collectstatic
For local test, you can start the local server.
python manage.py runserver
For deploy the app on your own AWS environment.
eb init -p python2.7 peoplesearch
eb create ps_env
Once AWS has deployed the app you can test
eb open
And you can update your changes
python manage.py collectstatic
eb deploy