Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
teaching:projh402 [2020/10/01 11:23]
ezimanyi [Projects in Mobility Databases]
teaching:projh402 [2020/10/01 11:56]
mahmsakr [Map-matching as a Service]
Line 9: Line 9:
 Mobility databases (MOD) are database systems that can store and manage moving object geospatial trajectory data. A moving object is an object that changes its location over time (e.g., a car driving on the road network). Using a variety of sensors, the location tracks of moving objects can be recorded in digital formats. A MOD, then, helps storing and querying such data. A couple of prototype systems have been proposed by research groups. Yet, a mainstream system is by far still missing. By mainstream we mean that the development builds on widely accepted tools, that are actively being maintained and developed. A mainstream system would exploit the functionality of these tools, and would maximize the reuse of their ecosystems. As a result, it becomes more closer to end users, and easily adopted in the industry. Mobility databases (MOD) are database systems that can store and manage moving object geospatial trajectory data. A moving object is an object that changes its location over time (e.g., a car driving on the road network). Using a variety of sensors, the location tracks of moving objects can be recorded in digital formats. A MOD, then, helps storing and querying such data. A couple of prototype systems have been proposed by research groups. Yet, a mainstream system is by far still missing. By mainstream we mean that the development builds on widely accepted tools, that are actively being maintained and developed. A mainstream system would exploit the functionality of these tools, and would maximize the reuse of their ecosystems. As a result, it becomes more closer to end users, and easily adopted in the industry.
  
-Towards filling this gap, our group is building the [[https://​github.com/​MobilityDB/​MobilityDB|MobilityDB]] system. It builds on [[https://​postgis.net/​|PostGIS]],​ which is a spatial database extension of PostgreSQL. MobilityDB extends the type system of PostgreSQL and PostGIS with ADTs for representing moving object data. It defines, for instance, the tgeompoint type for representing a time dependant geometry point. MobilityDB types are well integrated into the platform, to achieve maximal reusability,​ hence a mainstream development. For instance, the tgeompoint type builds on the PostGIS geometry(point) type. Similarly MobilityDB builds on existing operations, indexing, and optimization framework.+Towards filling this gap, our group is building the [[https://​github.com/​MobilityDB/​MobilityDB|MobilityDB]] system. It builds on [[https://​postgis.net/​|PostGIS]],​ which is a spatial database extension of [[https://​www.postgresql.org/​|PostgreSQL]]. MobilityDB extends the type system of PostgreSQL and PostGIS with ADTs for representing moving object data. It defines, for instance, the tgeompoint type for representing a time dependant geometry point. MobilityDB types are well integrated into the platform, to achieve maximal reusability,​ hence a mainstream development. For instance, the tgeompoint type builds on the PostGIS geometry(point) type. Similarly MobilityDB builds on existing operations, indexing, and optimization framework.
  
 MobilityDB supports SQL as query interface. Currently it is quite rich in terms of types and functions. It is incubated as community project in [[https://​www.osgeo.org/​projects/​mobilitydb/​|OSGeo]],​ which certifies high technical quality. ​ MobilityDB supports SQL as query interface. Currently it is quite rich in terms of types and functions. It is incubated as community project in [[https://​www.osgeo.org/​projects/​mobilitydb/​|OSGeo]],​ which certifies high technical quality. ​
Line 26: Line 26:
  
 ===== Implementing TSBS on MobilityDB ===== ===== Implementing TSBS on MobilityDB =====
-which includes devising a spatio-temporal bucket function equivalent to time_bucket from TimescaleDB. 
  
-<TBD>+The Time Series Benchmark Suite ([[https://​github.com/​timescale/​tsbs|TSBS]]) is a collection of Go programs that are used to generate datasets and then benchmark read and write performance of various time series databases. This bechmark has been developed by [[https://​www.timescale.com/​|TimescaleDB]],​ which is a time series extension of PostgreSQL.  
 + 
 +A significant addition of TimescaleDB to PosgreSQL is the addition of the [[https://​blog.timescale.com/​blog/​simplified-time-series-analytics-using-the-time_bucket-function/​|time_bucket]] function. This function allows to partition the time line in user-defined interval units that are used for aggregating data. 
 + 
 +The project consists in implementing a multidimensional generalization of the time_bucket function that allows the user to partition the spatial and/or temporal domain of a table in units (or tiles) that can be used for aggregating data. Then, the project consists of performing a benchmark comparison of TimescaleDB and MobilityDB. 
  
  
Line 43: Line 47:
  
 ===== Map-matching as a Service ===== ===== Map-matching as a Service =====
-When GPS tracks typically contain errors, because the GPS receiver  ​+GPS location ​tracks typically contain errors, as the GPS points will normally be some meters away from the true position. If we know that the movement happened on a street network, e.g., a bus or a car, then we can correct this back by putting the points on the street. Luckily there are Algorithms for this, called Map-Matching. There are also a handful of open source systems that do map matching. It remains however difficult to end users to use them, because ​they involve non-trivial installation and configuration effort. Preparing the base map, which will be used in the matching is also an issue to users.  
 + 
 +The goal of this project is to build an architecture for a Map-Matching service. The challanges are that the GPS data arrives in different formats, and that Map-Matching is a time consuming Algorithm. This architecture should thus allow different input formats, and should be able to automatically scale according to the request rate. Another key outcome of this project is to compare the existing Map-Matching implementations,​ and to discuss their suitability in real world problems. 
 + 
 +Links: 
 +[[https://​github.com/​bmwcarit/​barefoot|Barefoot]] 
 +[[https://​valhalla.readthedocs.io/​en/​latest/​api/​map-matching/​api-reference/​|Valhalla Map Matching API]]  
 +[[https://​github.com/​graphhopper/​map-matching|GraphHopper]] 
 +[[https://​github.com/​cyang-kth/​fmm|Fast Map Matching]]
  
  
 
teaching/projh402.txt · Last modified: 2022/09/06 10:39 by ezimanyi