Эффективность сквозной аналитики данных

Рабочий процесс сквозной аналитики данных требует универсальности

Я наткнулся на статью от NVIDIA, в которой рассказывается о результатах их теста TPCx-BB на A100. Как специалист по данным, я был сразу заинтригован, потому что я большой поклонник тестов Transaction Processing Performance Council (TPC), которые обеспечивают разумные и объективные показатели производительности. Кроме того, в TPC есть четкие правила использования их тестов и представления результатов, чтобы гарантировать прямое сравнение результатов от разных поставщиков. Я расскажу об этом подробнее позже, но сначала давайте поговорим о рабочем процессе сквозной аналитики данных.

Я нарисовал грубый набросок рабочего процесса сквозной аналитики данных, основываясь на моем опыте специалиста по данным (рис. 1). Не все мои проекты в области науки о данных проходят через все стадии этого рабочего процесса, но он представляет собой общую сумму моих проектов. Следовательно, моя вычислительная среда должна быть способна обрабатывать все стадии, особенно ранние стадии: OLTP (онлайн-обработка транзакций) и OLAP (онлайн-аналитическая обработка). Как известно каждому специалисту по данным, к тому времени, когда вы приступите к моделированию, тяжелая работа уже сделана. OLTP занимается управлением хранилищами данных, а OLAP в основном занимается поиском информации. TPCx-BB - это в основном тест OLAP.

Всегда лучше оценивать вычислительную среду, используя ваши конкретные рабочие процессы, но наука о данных сильно различается. Рабочие процессы аналитики меняются от одного проекта к другому. Системная архитектура, которая хорошо работает на одном этапе сквозного рабочего процесса, может плохо работать на другом. Следовательно, аналитика данных требует обобщения. Вот почему так важны стандартные готовые тесты, такие как TPCx-BB.

Контрольные показатели, представленные в таблице 1, были созданы экспертами для объективной оценки различных этапов рабочего процесса сквозной аналитики данных. Их легко оценить (т. Е. Большинство из них имеют встроенные средства оценки правильности), их показатели эффективности четко определены, и большинство из них предлагает аудит. Процитируя TPC, это помогает «… защитить пользователей от вводящих в заблуждение или ложных заявлений о производительности…». Имея это в виду, давайте вернемся к результатам NVIDIA TPCx-BB.

TPCx-BB - это тест для больших данных, который содержит элементы OLAP и моделирования данных. Он предназначен для измерения производительности систем Apache Hadoop с использованием 30 запросов SQL, пользовательских функций и функций машинного обучения. NVIDIA разместила свой код на GitHub, поэтому я взглянул на их реализации запросов, чтобы узнать, действительно ли они запускают TPCx-BB. Они этого не сделали.

Во-первых, они заменили Spark на Dask, что лишает смысла эталонный тест на основе Hadoop. Dask - отличная технология, но Spark гораздо более распространен в рабочих процессах анализа данных. Во-вторых, некоторые из их реализаций запросов игнорировали определяемые пользователем функции и / или функции машинного обучения. Наконец, они не сообщают требуемые метрики производительности TPCx-BB: BBQpm (количество запросов в минуту) и Price / BBQpm. Первое имеет решающее значение для истинной оценки общей производительности, поскольку TPCx-BB моделирует систему под нагрузкой, а не производительность изолированных запросов. Измерения NVIDIA игнорируют нагрузку и пропускную способность, что нереально.

Текущие проверенные результаты TPCx-BB (по состоянию на 25 сентября 2020 г.) от нескольких основных поставщиков оборудования показаны на рисунке 2. Во всех их системах тестирования использовались процессоры Intel Xeon с различными коэффициентами масштабирования и ценами. Для процессоров NVIDIA нет текущих или исторических данных.

Хотя я приветствую попытку NVIDIA использовать стандартный готовый тест производительности, такой как TPCx-BB, запустите фактический набор тестов и сообщите основные показатели - если можете. Как я сказал выше, у TPC есть строгие правила использования их тестов:

… Следует отметить, что спецификации и политика тестов TPC требуют предоставления полной документации по этим тестам, которая затем рассматривается Советом TPC. Если будет установлено, что эталонный тест TPC поставщика был проведен неправильно или несправедливо, поставщик должен будет отозвать результат и больше не сможет использовать его публично. Эти правила защищают пользователей от вводящих в заблуждение или ложных заявлений о производительности и сохраняют достоверность результатов тестов TPC . (Источник: Запуск теста TPC)

Однажды я поставил перед NVIDIA задачу за использование надуманных тестов для представления всего этапа сквозного рабочего процесса:



Не дайте себя обмануть. В науке о данных решающее значение имеет универсальность. Системы на базе Xeon лучше масштабируются и обеспечивают лучшую производительность и совокупную стоимость владения для рабочего процесса сквозного анализа данных.