Производительность источника данных бизнес-аналитики - большой стол - PullRequest
2 голосов
/ 15 апреля 2019

Я использую Tableau и у меня есть таблица с 140 полями. Из-за размера / ширины стола производительность низкая. Я хотел бы удалить поля, чтобы увеличить скорость чтения, но моя база пользователей настолько велика, что по крайней мере один человек использует каждое из полей, а 90% используют те же ~ 20 полей.

Как лучше всего решить эту проблему? (Tableau - это наш инструмент BI, BigQuery - наша база данных)

Что я сделал до сих пор: В Таблице неясно, как использовать динамические источники данных, которые изменяются в зависимости от выбранного поля. В идеале я хотел бы иметь меньшие представления или денормализованные таблицы. Когда пользователи выбирают в Таблице, базовые источники данных обновляются в таблице или представлении с этим полем.

Я попробовал простую версию большого представления, но она работала хуже, чем моя большая таблица, и прочитал значительно больше данных (помните, я BigQuery, поэтому меня очень волнует чтение байтов из-за затрат)

1 Ответ

3 голосов
/ 15 апреля 2019

Предложение 1: Извлеките свои данные.

Особенно, когда речь идет об источниках данных, которые являются платой за байт запроса, (Big Query, Athena, Etc) имеют большой смысл. В зависимости от того, насколько «свежие» данные должны быть для пользователей. (Конечно, все пользователи скажут, что «это единственный выход», но немного углубимся в это и посмотрите, что это может быть на самом деле.) Обновления могут быть запланированы всего на 15 минут. Реальная сила обновлений приходит в форме «инкрементных обновлений», при которых добавляются только новые записи (по индексу int или date.) Это отличный способ сократить расходы - если ваша база данных BigQuery секционирована - ( что и должно быть. ) Поскольку экстракты Tableau содержатся в файлах .hyper, являющихся структурой собственного дизайна / элемента управления Tableau, они чрезвычайно быстры и идеально оптимизированы для использования в Tableau.

Предложение 2: Создание 3 источников данных (или более). Сертифицируйте эти источники данных после проверки того, что они предоставляют правильную информацию. Предоставьте пользователям четкие описания.

  1. Оригинальный большой набор данных.
  2. Подмножество ~ 20 полей для 90%.
  3. Остаток полей для 10%
  4. Экстракт 1
  5. Экстракт 2
  6. Экстракт 3

Важно, что если имена полей совпадают в каждом источнике данных (то есть: никогда не изменялись вручную), тогда пользователю должно быть легко «масштабироваться» до больших наборов данных по мере необходимости. Это означает, что обычно они всегда могут начать с небольшого подмножества данных, чтобы начать свое исследование, а затем использовать функцию '1027 * replace datasource ', чтобы переключиться на другой источник данных, сохраняя при этом те же представления. (Хотя это не сработает, если вообще уменьшит масштаб.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...