Как оптимизировать стратегию развертывания для панелей мониторинга Tableau? - PullRequest
0 голосов
/ 12 сентября 2018

У нас есть две среды (TEST и PROD) для публикации сводных панелей. Данные для этих envs находятся на том же сервере RDBMS, 1 схема на env. И мы хотим опубликовать 1 панель мониторинга для 2 envs, так что 1 панель управления смотрит на схему TEST, а другая - на схему PROD.

Это подход, который мы придумали, но он работает не так, как ожидалось: мы не можем найти способ развернуть панель инструментов Tableau в 2 envs (и использовать 2 отдельные схемы) без фактического обслуживания 2 версий одной панели (одна для ТЕСТА и один для ПРОД).

Так что либо мы выбрали плохую стратегию развертывания для Tableau, либо мы что-то делаем неправильно. Может кто-нибудь поделиться своим опытом о том, как развернуть информационные панели Tableau в отдельных средах без необходимости вручную редактировать информационные панели для каждого окружения? Или в чем проблема с нашим подходом?

Ответы [ 2 ]

0 голосов
/ 25 сентября 2018

Ваша ситуация звучит как моя. Мне нужно опубликовать один и тот же отчет в разных средах, используя разные конфигурации сервера / базы данных. Вот что я делаю:

  1. Поддерживать единый источник правды, который является производственной версией.
  2. Создание утилиты, конвертирующей отчет в разные среды. Вы также можете сделать это вручную следующим образом:

    • Сохраните вашу книгу (файл таблицы) как .twb
    • Открыть файл twb в любом текстовом редакторе. Это как XML. Tableau создает соединение и визуализирует графику из этой информации.
    • Текстовый поиск по имени пользователя, серверу, порту ... Вы увидите всю информацию о вашей конфигурации здесь.
    • Заменить эту информацию информацией о целевой среде.
    • Сохраните и снова откройте его с помощью Tableau Desktop и опубликуйте.
  3. Если у вас есть такой инструмент автоматизации, как Jenkin, вы можете разработать решение для развертывания одним щелчком мыши с помощью команд Tableau.

0 голосов
/ 12 сентября 2018

Вы не указали свою СУБД в этом вопросе, поэтому в моем ответе будет содержаться общее утверждение, которое может не обязательно применяться в вашем конкретном случае.

Я думаю, что вы выбрали плохой подход для своих сред тестирования и производственных баз данных. Обычно test и prod находятся на совершенно разных экземплярах базы данных и во многих случаях на отдельных серверах. Совместное использование их на одном экземпляре или сервере означает, что вы используете производственные аппаратные ресурсы во время тестирования с возможностью блокировки сервера из-за запуска запросов к непроизводственной схеме. С одним экземпляром было бы очень просто непреднамеренно или злонамеренно остановить ваш производственный экземпляр, даже не войдя в производственную схему.

Ваш лучший подход - иметь два отдельных экземпляра базы данных: один для теста, другой для продукта. Два экземпляра могут быть на одном сервере, но это изолированные экземпляры БД. Оба экземпляра имеют одинаковых пользователей и одинаковые схемы. Затем вы можете легко указать ваши источники данных Tableau на соответствующие экземпляры без необходимости обновлять ваши рабочие книги или сохранять две копии каждой рабочей книги. Например, если вы используете Oracle, оставьте псевдонимы TNS одинаковыми на обоих серверах Tableau, но измените данные соединения в tnsnames, чтобы они указывали либо на тестовый сервер, либо на сервер prod db.

...