Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/Implement connectivity map #259

Merged
merged 29 commits into from
Apr 7, 2020

Conversation

CodeBear801
Copy link

@CodeBear801 CodeBear801 commented Apr 1, 2020

Issue

#238

  • Implements connectivity map, it builds connectivity for each place point by:
    • find all near by places by spatial index(implements in indexer)
    • ranking near by places by great circle distance or shortest path distance(by osrm)
  • Implements a work-poo based builder to do building related tasks, because for each place, if we are using 'OSRM' to calculate shortest path, we need to separate calculation into different workers. OSRM part's logic already be wrapped in osrmconnector, for each worker, when handling a place, he just need submit a http task to osrmconnector and then get a future like channel. The maximum request in osrmconnector equals to NumOfTasks defined here.

/*
                                    ->   tasksChannel   ---> worker
                                  /                                   \
                                 /                                     \
Input Iterator ==> dispatcher    --->    tasksChannel   ---> worker      ---> aggregatorChannel -> iterate and put result to map
                                 \                                     /
                                  \                                   /
                                    ->   tasksChannel   ---> worker
*/


Tasklist

  • implement logic
  • add tests
  • review

@CodeBear801 CodeBear801 added NewFeature New feature or feature improvement Prototype Proof of concept InProgress Currently working on it labels Apr 1, 2020
@CodeBear801 CodeBear801 self-assigned this Apr 1, 2020
integration/service/connectivitymap/builder.go Outdated Show resolved Hide resolved
integration/service/connectivitymap/builder.go Outdated Show resolved Hide resolved
integration/service/connectivitymap/builder.go Outdated Show resolved Hide resolved
integration/service/connectivitymap/builder.go Outdated Show resolved Hide resolved
integration/service/connectivitymap/connectivity_map.go Outdated Show resolved Hide resolved
integration/service/connectivitymap/doc.go Outdated Show resolved Hide resolved
integration/service/connectivitymap/doc.go Show resolved Hide resolved
integration/service/spatialindexer/iterface_mock.go Outdated Show resolved Hide resolved
@CodeBear801 CodeBear801 merged commit 2b28e5b into master Apr 7, 2020
@CodeBear801 CodeBear801 deleted the feature/placeconnectivitymap-impl2 branch April 7, 2020 16:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
InProgress Currently working on it NewFeature New feature or feature improvement Prototype Proof of concept
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants