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