2015-09-23 2 views
-1

Мне нужно запросить базу данных vertic hp из хранимой процедуры SQL Server. Это запрос соединения, и если я использую связанный сервер, он будет запускаться как 2 отдельных выбора и присоединиться к нему в SQL Server. Есть ли способ, которым я могу использовать ODBC для запуска запроса присоединения к Vertica из TSQL и вернуть обработанный результат обратно в таблицу SQL.? Любой другой подход, предлагаемый для достижения этого?SQL Server - Vertica Connection

+0

1. Создайте [связанный сервер] (http://vertica.tips/2013/10/30/creating-a-linked-server-from-sql-server/) для Vertica 2. Извлеките данные в темп table – Kermit

+0

Я верю, что это то, что вы ищете: http://dba.stackexchange.com/questions/52521/create-linked-server-to-vertica – Ralph

+0

Не совсем. Я подключил связанный сервер, и он отлично работает. Проблема заключается в том, что если я выполняю запрос, соединяющий 2 таблицы в vertica (70 миллионов записей и 1 миллион записей), он не подтягивается быстро, потому что, похоже, процесс объединения не происходит в Vertica, вместо этого он вытягивает обе таблицы отдельно и делает соединение в SQL Server, который не помогает. – bithom

ответ

1

Возможно, вам понадобится использовать синтаксис OPENQUERY на SQL Server, чтобы получить полный запрос, отправленный на Vertica для выполнения там ... Есть и другие возможности, но нам нужно будет гораздо больше деталей о том, что у вас есть в игре (особенно но не только ваш текущий запрос), чтобы обсудить их.

+0

По какой-то причине я не думал о OPENQUERY. Большое спасибо. – bithom