Giter VIP home page Giter VIP logo

yamap's Introduction

yamap

Yamap Ain't Map – deployment OSM infrastructure project, inspired by osm-seed.

The goals of the project are to create infrastructure to replicate data from OSM into regional extract and keep the extracted data up-to-date, and use data from the local extract for other local services.

The input data is stored in the DB, the same as the main OSM API DB.

From there, updates are sent to other local services, which in turn reduce the load on OSM servers.

Schema

flowchart TD
    A[Planet OSM] -->|diffs| B(Local API DB\nwith regional\nextract)
    B -->|regional extract| C[local diffs]
    C --> D[fa:fa-search Search]
    C --> E[fa:fa-database Overpass Turbo]
    C --> F[fa:fa-car Routing]
    C --> G[fa:fa-external-link Other services]

Data deployment and update

For now, next routines are implemented:

  • Database deployment
  • Populating the database with data from the extract
  • Receiving, aggregating, cutting the data by a bounding polygon from planet diffs

Usage

To initialize DB and populate it with the extract run

make init-db

To keep up with the upstream DB

make run

Use make <target> to run a particular task.

Usage:
  make <target>

Run/Stop Services
  run             Builds, (re)creates, starts containers for a service
  start           Starts existing containers for a service
  stop            Stops running containers without removing them
  restart         Restarts all stopped and running services

Cleanup
  destroy         Stop and remove containers, networks
  clean-apidb     Cleaning of the mounted DB file system
  clean-data      Cleaning the data folder except for the mounted DB file system
  clean-db        TODO Cleaning up DB for fresh deployment

Building
  rebuild         Build or rebuild services if you change a service’s Dockerfile
  init-db         Init fresh DB and populate extract
  debug           Start services in debug mode to run commands manually

Helpers
  list            List containers
  images          List images used by the created containers
  config          Parse, resolve and render compose file in canonical format

Help
  help            Display this help

Preparation

Specify path to the input data extract and path to *.poly file in the popdb.env.

Replication interval and replication URI can be adjusted in the repapidb.env.

yamap's People

Contributors

andygol avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.