Skip to content

drgavrikov/querifylabs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Тестовое задание для https://www.querifylabs.com/

Архитектура решения следующая:

во время инициализации:
- для каждой даты 2020 года создается отдельный файл с поездками (trip), начинающие в эту дата. Например в файле 2020-01-01 находятся все поездки, которые начинаются 1 января 20202 года
- помимо это, в момент инициализация в оперативной памяти хранится Storage (class AggregateDistanceStorage), который за каждую дату выдает Average Distances

во время запросов:
- вместо того, чтобы каждый раз перечитывать весь parquet файл, мы складываем агрегированные значения из текстовых файлов и оперативной памяти
- если дата входит полностью, то берем агрегированные данные из оперативной памяти, например за 2020-01-01, если не полностью, то быстро вычитываем соответствующий текстовый файл

при закрытии файла:
- удаляем все текстовые файлы, чтобы освободить память за диске

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages