Desbordante — наукоемкий профилировщик данных
Георгий Чернышев
СПбГУ, Юнидата
Профилирование данных — это процесс извлечения таких метаданных, которые могут быть полезны в задачах, связанных с управлением и качеством данных. Отличают наивное и продвинутое профилирование данных. При наивном профилировании извлекается такая простая информация, как время создания, размер, автор и т.д. При продвинутом профилировании из данных извлекаются сложные паттерны (шаблоны), которые описывают скрытые закономерности в данных. Эти паттерны могут быть полезны ученым, аналитикам и специалистам по машинному обучению
Desbordante — высокопроизводительный профилировщик данных, нацеленный на извлечение наукоемких паттернов. Система разрабатывается с 2019 года и предоставляет как консольный, так и веб интерфейс. В отличие от других инструментов, реализованных на Python или Java, ядро Desbordante реализовано на C++, что делает его наиболее высокопроизводительной системой среди подобных с открытым кодом.
Доклад начинается с общего обзора задачи профилирования данных, в частности наивного, приводятся примеры соответствующих инструментов. Далее рассматривается продвинутое профилирование, включая различные виды паттернов, обсуждается польза от их извлечения. Извлекаемые примитивы рассматриваются на примере функциональных зависимостей: обычных, приближенных и условных. Затем представляется новшество Desbordante — конвейеры (pipelines), реализуемые на базе найденных примитивов. В отличие от простого поиска паттернов, конвейеры сразу же реализуют функциональность, полезную обычному пользователю (в частности, поиск опечаток в таблицах с помощью приближенных функциональных зависимостей). После этого приводится обзор программной реализации системы, представляется архитектура веб-приложения и требования, лежащие в основе системы. Доклад завершается обзором дальнейших планов.
Код: https://github.com/Mstrutov/Desbordante
Развернутая версия: https://desbordante.unidata-platform.ru/
Документация: https://mstrutov.github.io/Desbordante/
Научно-популярные статьи: https://habr.com/ru/company/unidata/blog/667636/ и
https://habr.com/ru/company/unidata/blog/679390/
Слайды доклада
Видео доклада.
Литература:
- M. Strutovskiy, N. Bobrov, K. Smirnov and G. Chernishev, "Desbordante: a Framework for Exploring Limits of Dependency Discovery Algorithms," 2021 29th Conference of Open Innovations Association (FRUCT), 2021, pp. 344-354, doi: 10.23919/FRUCT52173.2021.9435469. https://fruct.org/publications/fruct29/files/Strut.pdf
- Ziawasch Abedjan, Lukasz Golab, and Felix Naumann. 2015. Profiling relational data: a survey. The VLDB Journal 24, 4 (August 2015), 557–581. https://doi.org/10.1007/s00778-015-0389-y
- Data Profiling. Ziawasch Abedjan, Lukasz Golab, Felix Naumann, Thorsten Papenbrock. Synthesis Lectures on Data Management. Springer Cham. ISSN 2153-5418. ISBN 978-3-031-01865-7. https://doi.org/10.1007/978-3-031-01865-7
- Ihab F. Ilyas and Xu Chu. 2019. Data Cleaning. Association for Computing Machinery, New York, NY, USA.
- Charu C. Aggarwal. 2015. Data Mining: The Textbook. ISBN 3319141414. Springer Publishing Company, Incorporated.
- Thorsten Papenbrock, Jens Ehrlich, Jannik Marten, Tommy Neubert, Jan-Peer Rudolph, Martin Schonberg, Jakob Zwiener, and Felix Naumann. 2015. Functional dependency discovery: an experimental evaluation of seven algorithms. Proc. VLDB Endow. 8, 10 (June 2015), 1082–1093. https://doi.org/10.14778/2794367.2794377
- W. Fan, F. Geerts, L. V. S. Lakshmanan and M. Xiong, "Discovering Conditional Functional Dependencies," 2009 IEEE 25th International Conference on Data Engineering, 2009, pp. 1231-1234, doi: 10.1109/ICDE.2009.208.
- Yunjia Zhang, Zhihan Guo, and Theodoros Rekatsinas. 2020. A Statistical Perspective on Discovering Functional Dependencies in Noisy Data. In Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data (SIGMOD '20). Association for Computing Machinery, New York, NY, USA, 861–876. https://doi.org/10.1145/3318464.3389749
- Sebastian Kruse and Felix Naumann. 2018. Efficient discovery of approximate dependencies. Proc. VLDB Endow. 11, 7 (March 2018), 759–772. https://doi.org/10.14778/3192965.3192968
- Thorsten Papenbrock and Felix Naumann. 2016. A Hybrid Approach to Functional Dependency Discovery. In Proceedings of the 2016 International Conference on Management of Data (SIGMOD '16). Association for Computing Machinery, New York, NY, USA, 821–833. https://doi.org/10.1145/2882903.2915203
|