вам понадобится файл TDC, в котором указана конкретная опция строки подключения ODBC, чтобы обойти проблему.
Руководство Vertica заключалось в добавлении параметра ODBC Connect String со значением ResultBufferSize = 0. Это, по-видимому, заставляет буфер результатов быть неограниченным, предотвращая ошибку. Это достаточно просто сделать при создании строки подключения вручную или при работе с DSN, но Vertica - один из родных соединителей Tableau. Так как же сказать «родному» коннектору делать что-то еще со своим подключением?
Собственные соединения в Tableau можно настроить с помощью файлов TDC
«Собственные соединители» по-прежнему подключаются через драйверы ODBC поставщика и могут быть настроены так же, как подключение «Другие базы данных» / ODBC. В самих файлах TDC соединения «ODBC» называются «Generic ODBC», что является гораздо более точным способом понять разницу.
Полное руководство по настройке TDC со всеми параметрами доступно здесь, хотя это довольно подробное чтение. Одна вещь, которая не предоставляется, - это пример настройки «собственного коннектора». Базовая структура файла TDC такова.
<?xml version='1.0' encoding='utf-8' ?>
<connection-customization class='genericodbc' enabled='true' version='7.7'>
<vendor name='' />
<driver name='' />
<customizations>
</customizations>
</connection-customization>
При использовании «Generic ODBC» классом является «genericodbc», а затем необходимо указать имя поставщика и драйвера, чтобы Tableau мог знать, когда следует применить файл TDC. Для собственного коннектора это намного проще - вы просто используете собственное имя коннектора во всех трех местах. Большой список имен родных соединителей находится в конце этой статьи. К счастью для нас, Vertica называют просто «vertica». Итак, наша структура Vertica TDC будет выглядеть так:
<?xml version='1.0' encoding='utf-8' ?>
<connection-customization class='vertica' enabled='true' version='7.7'>
<vendor name='vertica' />
<driver name='vertica' />
<customizations>
</customizations>
</connection-customization>
Это хорошее начало, но нам нужны настоящие теги настройки, чтобы что-нибудь произошло. Согласно документации, чтобы добавить дополнительные элементы в строку подключения ODBC, мы используем тег с именем «odbc-connect-string-extras». Это будет выглядеть как
<customization name='odbc-connect-string-extras' value='ResultBufferSize=0;' />
Одна важная вещь, которую мы обнаружили, заключалась в том, что все дополнительные подключения ODBC должны быть в этом единственном теге. Поскольку мы хотели включить балансировку нагрузки в кластере Vertica, был рекомендован второй параметр: ConnectionLoadBalance = 1. Чтобы получить оба этих параметра, правильный метод:
<customization name='odbc-connect-string-extras' value='ResultBufferSize=0;ConnectionLoadBalance=1;' />
Есть целый набор других настроек, которые вы можете добавить, чтобы увидеть, как они влияют на производительность. Убедитесь, что вы понимаете формулировку параметра настройки - если он начинается с «SUPRESS», то при вводе значения «yes» функция отключится; в других случаях вы хотите установить значение «нет», чтобы отключить эту функцию. Некоторые из других, которые мы пробовали, были
<customization name='CAP_SUPPRESS_DISCOVERY_QUERIES' value='yes' />
<customization name='CAP_ODBC_METADATA_SUPPRESS_PREPARED_QUERY' value='yes' />
<customization name='CAP_ODBC_METADATA_SUPPRESS_SELECT_STAR' value='yes' />
<customization name='CAP_ODBC_METADATA_SUPPRESS_EXECUTED_QUERY' value='yes' />
<customization name='CAP_ODBC_METADATA_SUPRESS_SQLSTATISTICS_API' value='yes' />
<customization name= 'CAP_CREATE_TEMP_TABLES' value='no' />
<customization name= 'CAP_SELECT_INTO' value='no' />
<customization name= 'CAP_SELECT_TOP_INTO' value='no' />
Первый набор в основном касался уменьшения количества запросов на обнаружение метаданных, в то время как второй набор предписывал Tableau не использовать таблицы TEMP.
Лучший способ увидеть результаты этих настроек - изменить файл TDC и перезапустить Tableau Desktop. Когда вы будете удовлетворены изменениями, переместите файл TDC на свой сервер Tableau и перезапустите его.
Куда поместить файлы TDC
Согласно документации »
Для Tableau Desktop в Windows: Documents \ My Tableau Repository \ Datasources Для Tableau Server: Program Files \ Tableau \ Tableau Server \\ bin Примечание. Файл должен быть сохранен с использованием расширения .tdc, но имя не имеет значения ».
Если вы используете кластер Tableau Server, файл .tdc необходимо разместить на каждом рабочем узле в папке bin, чтобы процесс vizqlserver мог его найти. Я также выделил самую большую проблему из всех - вы должны редактировать их с помощью настоящего текстового редактора, такого как Notepad ++ или SublimeText, а не Notepad, потому что Notepad любит сохранять вещи со скрытым окончанием .TXT, а файл TDC будет распознан только в том случае, если окончание действительно .tdc, а не .tdc.txt.
person
Karthik Venkatraman
schedule
21.11.2015