Framework to generate request pattern, based on the faas-topologies repository generated topology datasets.
We use the generated topology datasets from https://github.com/edgerun/faas-topologies and the public available taxi trip data from https://chriswhong.com/open-data/foil_nyc_taxi/
- place the
.csvtopology data file into thedata/topologiesfolder - place the
.csvtrip data file into thedata/tripsfolder
To prepare the trip dataset, execute following command and specify the required parameter.
python prepare_trip_dataset.py --path data/trips/example.csv --topology data/topologies/example.csv --name example_output
It creates a new csv file and names it like the given --name
parameter. The --trip data got filtered by the maximum boundaries of the given --topology file.
To generate the pattern use python generate_request_pattern.py --name example --trips data/trips/example.csv --topology data/topologies/example.csv --start "2013-10-01 18:00:00" --end "2013-10-01 19:00:00" where the start and end parameters define the time range in which the pattern will be created.
The ouput files are saved in a seperate folder in output/${name}/1_pickups.csv where the number in front of the filename indicates the cloudlet number in the selected topology. The file contains the time deltas of each request in the defined time range.
[1.5, 1.5, 1.5, 1.5] means e.g. that 4 requests were sent to the specific cloudlet within an interval of 1.5 seconds.
trip input:
- medallion: string
- pickup_datetime: string
- passenger_count: float
- pickup_longitude: float
- pickup_latitude: float
topology input:
- cell: string
- lon: float
- lat: float
- cloudlet: string