Перейти к содержимому

День 039 — Дневник продакт-менеджера — Вывод продукта по обработке данных Red5Sorcery на рынок

TheSocialCredit

0:00 / 0:00

День 039 — Дневник продакт-менеджера — Вывод продукта по обработке данных Red5Sorcery на рынок

21 просмотр · 1 день назад
TheSocialCredit
315 подписчиков
21 просмотр · 1 день назад
День 39 стал первым реальным доказательством того, что Data Sculptor способен быстро и эффективно обрабатывать большие файлы в браузере. Используя Microsoft Edge и WebAssembly на ноутбуке Intel N100 с 16 ГБ оперативной памяти, мы обработали CSV-файл Statistics Canada размером 7,25 ГБ и материализовали столбец `VALUE` в 29 014 718 строках. *Браджеру/движку WASM не потребовалось загружать набор данных размером 7,25 ГБ в оперативную память; он обрабатывал его в течение фиксированных окон передачи в 4 МиБ.* Успешный экспериментальный запуск выдал 62 266 366 байт выходных данных за 45,9486 секунд, с 1729 операциями WASM push и без вызовов проверки UTF-8 во время материализации. Последний пункт важен, поскольку этот день привел нас к более чистой двухэтапной модели: Сначала проверка исходных данных на соответствие кодировке UTF-8. Затем, после подтверждения этого факта, необходимо создать столбцы, которые действительно нужны аналитику. Путь к этому был очень похож на метод парного деления в столбик: измерить что-то одно, собрать доказательства, проверить их, исправить одну ограниченную проблему, а затем продолжить. В процессе мы обнаружили, что только около 0,0091% исходного кода объемом 7,25 ГБ были не-ASCII, создали встроенный валидатор UTF-8, протестировали намеренно поврежденный файл, обнаружили ошибку в BOM в первом экстракторе столбцов, а затем нашли еще одну ошибку, поскольку выходные данные были ровно на два байта больше, чем нужно для каждой строки. Арифметические вычисления практически указали на проблему: прототип сохранял открывающие и закрывающие CSV-кавычки вокруг каждого `VALUE`. Исправили эти два байта для каждой строки, запустили повторно, и браузер выдал точно ожидаемое количество строк и размер выходных данных. Это не окончательная приемка WASM-001b, и PRD еще не завершен. Впереди еще проверка, интеграция, замороженная работа по приемке и дальнейшая разработка. Но это первое доказательство того, что первоначальная идея может работать в реальном масштабе в браузере с полезной производительностью. И мне нравится, что это подразумевает и для пользовательского опыта: выберите свой чемодан, создайте или выберите рабочий заказ, запустите его, и пусть Data Sculptor записывает удобочитаемые CSV-архивы столбцов, в то время как консоль сохраняет отображение сопоставления и доказательств. Большинство офисных наборов данных не будут иметь размер 7,25 ГБ. Многие просто будут больше, чем Excel может обработать. Именно для этой области и создается Data Sculptor. *Бесплатно. Быстро. Конфиденциально. КРАСИВО.* *Работа с данными, которую можно объяснить.* #DataEngineering #WebAssembly #WASM #Rust #DataAnalytics #LocalFirst #OpenSource #DataSculptor #Red5Sorcery #SoftwareEngineering #CSV #DataTools