Bistro - библиотека для преобразования данных и аналитики

Feb 10, 2018 16:56


Bistro - https://github.com/asavinov/bistro

Bistro это библиотека для обработки данных общего назначения. Цель этой библиотеки в том, чтобы сделать обработку данных существенно легче, особенно в плане сложных преобразований и вычислений, когда есть много исходных таблиц и необходимо их комбинировать, группировать, агрегировать и т.п. Хотелось бы сделать такие операции с данным существенно легче чем в SQL, MapReduce и других подобных подходах основанных на преобразовании множеств. Bistro может применяться для генерации сложных отчетов, миграции данных, ETL, аналитики и в др. подобных приложениях.

Bistro основан на новом подходе, основанном на преобразовании колонок, а не множеств. Идея в том, что каждая новая колонка имеет определение в терминах других уже существующих колонок. Собственно, через оценку этих определений и происходит преобразование данных. В результате, Bistro не полагается на такие операции как join и group-by, которые весьма сложны в понимании.

Такой же колончатый подход используется в Data Commander: http://dc.conceptoriented.com/

Больше информации о том, как это реализовано можно найти в публикациях или по этой ссылке: http://conceptoriented.org

A. Savinov, From Group-By to Accumulation: Data Aggregation Revisited. Proc. IoTBDS 2017, 370-379. https://www.researchgate.net/publication/316551218_From_Group-by_to_Accumulation_Data_Aggregation_Revisited

A. Savinov, Concept-oriented model: the Functional View, Eprint: arXiv:1606.02237 [cs.DB], 2016. https://www.researchgate.net/publication/303840097_Concept-Oriented_Model_the_Functional_View

A. Savinov, Joins vs. Links or Relational Join Considered Harmful. Proc. IoTBD 2016, 362-368. https://www.researchgate.net/publication/301764816_Joins_vs_Links_or_Relational_Join_Considered_Harmful

bistro, data commandr, concept-oriented model, data wrangling

Previous post Next post
Up