large-file-reading-challenge/readme.md
2024-07-16 22:34:22 +02:00

51 lines
1.2 KiB
Markdown

# Large file reading challenge
Welcome in the recruitment challenge.
Write an application that, at the endpoint specified by you, returns the yearly average temperatures for a given city in
the format array of objects with the following fields: year, averageTemperature.
## Assumptions
- CSV file with data is no less than 3GB in size.
- The file represents temperature measurements in the format city;yyyy-mm-dd HH:mm:ss.SSS;temp
- The content of the source file may change during the application's running
## Example source file
[example_file.csv](example_file.csv)
## Response
### Schema
[response_schema](schema/response.json)
### Example
```json
[
{
"year": "2021",
"averageTemperature": 12.1
},
{
"year": "2022",
"averageTemperature": 11.1
},
{
"year": "2023",
"averageTemperature": 14.1
}
]
```
## Configuration
| property | description | default |
|---------------|--------------------------------|-----------------------|
| data.file-url | path to file with temperatures | data/temperatures.csv |
## Usage
Temperature statistics endpoint: `/api/temperatures/{city}`
Returns HTTP 200 when city is found, 404 otherwise.