Konfigurowanie programu PolyBase w celu uzyskiwania dostępu do danych zewnętrznych przy użyciu typów ogólnych ODBC
Dotyczy:programu SQL Server
Technologia PolyBase począwszy od programu SQL Server 2019 umożliwia łączenie się ze źródłami danych zgodnymi z ODBC przy użyciu łącznika ODBC.
W tym artykule pokazano, jak utworzyć konfigurowanie łączności przy użyciu źródła danych ODBC. Podane wskazówki używają jednego określonego sterownika ODBC jako przykładu. Zapoznaj się z dostawcą ODBC, aby zapoznać się z konkretnymi przykładami. Aby określić odpowiednie opcje parametrów połączenia, należy odwołać się do dokumentacji sterownika ODBC dla źródła danych. Przykłady w tym artykule mogą nie dotyczyć żadnego konkretnego sterownika ODBC.
Warunki wstępne
Uwaga
Ta funkcja wymaga programu SQL Server w systemie Windows.
PolyBase musi być zainstalowane i włączone dla wystąpienia SQL Server instalacji PolyBase.
Przed utworzeniem poświadczeń o zakresie bazy danych należy utworzyć klucz główny.
Instalowanie sterownika ODBC
Pobierz i zainstaluj sterownik ODBC źródła danych, z którym chcesz nawiązać połączenie w każdym z węzłów programu PolyBase. Po poprawnym zainstalowaniu sterownika można wyświetlić i przetestować sterownik z administratora źródła danych ODBC.
W powyższym przykładzie nazwa sterownika jest zakreślina na czerwono. Użyj tej nazwy podczas tworzenia zewnętrznego źródła danych.
Ważny
Aby zwiększyć wydajność zapytań, włącz buforowanie połączeń. Można to zrobić za pomocą administratora źródła danych ODBC.
Tworzenie obiektów zależnych w programie SQL Server
Aby użyć źródła danych ODBC, należy najpierw utworzyć kilka obiektów, aby ukończyć konfigurację.
W tej sekcji są używane następujące polecenia Transact-SQL:
Utwórz poświadczenie o zakresie bazy danych na potrzeby uzyskiwania dostępu do źródła ODBC.
CREATE DATABASE SCOPED CREDENTIAL [<credential_name>] WITH IDENTITY = '<username>', Secret = '<password>';
Na przykład poniższy przykład tworzy poświadczenie o nazwie
credential_name
z tożsamościąusername
i złożonym hasłem.CREATE DATABASE SCOPED CREDENTIAL credential_name WITH IDENTITY = 'username', Secret = 'BycA4ZjrE#*2W%!';
Utwórz zewnętrzne źródło danych za pomocą CREATE EXTERNAL DATA SOURCE.
CREATE EXTERNAL DATA SOURCE [<external_data_source_name>] WITH ( LOCATION = 'odbc://<ODBC server address>[:<port>]', CONNECTION_OPTIONS = 'Driver={<Name of Installed Driver>}; ServerNode = <name of server address>:<Port>', -- PUSHDOWN = [ON] | OFF, CREDENTIAL = [<credential_name>] );
Poniższy przykład tworzy zewnętrzne źródło danych:
- Nazwany
external_data_source_name
- Znajduje się w ODBC
SERVERNAME
i porcie4444
- Nawiązywanie połączenia z
CData ODBC Driver For SAP 2015
— jest to sterownik utworzony w Instalowanie sterownika ODBC - Na porcie
ServerNode
sap_server_node
5555
- Skonfigurowano przetwarzanie delegowane na serwer (
PUSHDOWN = ON
) - Używanie poświadczenia
credential_name
CREATE EXTERNAL DATA SOURCE external_data_source_name WITH ( LOCATION = 'odbc://SERVERNAME:4444', CONNECTION_OPTIONS = 'Driver={CData ODBC Driver For SAP 2015}; ServerNode = sap_server_node:5555', PUSHDOWN = ON, CREDENTIAL = credential_name );
- Nazwany
Tworzenie tabeli zewnętrznej
Po utworzeniu obiektów zależnych można utworzyć tabelę zewnętrzną przy użyciu języka T-SQL.
W tej sekcji są używane następujące polecenia Transact-SQL:
Utwórz co najmniej jedną tabelę zewnętrzną.
Utwórz tabelę zewnętrzną. Musisz odwołać się do zewnętrznego źródła danych utworzonego powyżej przy użyciu argumentu
DATA_SOURCE
i określić tabelę źródłową jakoLOCATION
. Nie musisz odwoływać się do wszystkich kolumn, ale musisz upewnić się, że typy są poprawnie mapowane.CREATE EXTERNAL TABLE [<your_table_name>] ( [<col1_name>] DECIMAL(38) NOT NULL, [<col2_name>] DECIMAL(38) NOT NULL, [<col3_name>] CHAR COLLATE Latin1_General_BIN NOT NULL ) WITH ( LOCATION='<sap_table_name>', DATA_SOURCE= [<external_data_source_name>] ) ;
Notatka
Należy pamiętać, że można ponownie użyć obiektów zależnych dla wszystkich tabel zewnętrznych przy użyciu tego zewnętrznego źródła danych.
Opcjonalne: Utwórz statystyki w tabeli zewnętrznej.
Aby uzyskać optymalną wydajność zapytań, zalecamy utworzenie statystyk dotyczących kolumn tabeli zewnętrznej, zwłaszcza tych używanych do sprzężeń, filtrów i agregacji.
CREATE STATISTICS statistics_name ON contact (FirstName) WITH FULLSCAN;
Następne kroki
Aby dowiedzieć się więcej na temat technologii PolyBase, zobacz Omówienie programu SQL Server PolyBase.
Aby uzyskać więcej samouczków dotyczących tworzenia zewnętrznych źródeł danych i tabel zewnętrznych w różnych źródłach danych, zobacz dokumentacji programu PolyBase Transact-SQL.