День 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