Udostępnij za pomocą


Wirtualizacja danych za pomocą technologii PolyBase w programie SQL Server

Dotyczy: SQL Server Nieobsługiwane. Azure SQL Database Azure Synapse Analytics Analytics Platform System (PDW)

Technologia PolyBase umożliwia wirtualizację danych dla programu SQL Server.

Co to jest technologia PolyBase?

Technologia PolyBase umożliwia wystąpieniu programu SQL Server wykonywanie zapytań o dane za pomocą Transact-SQL (T-SQL) bezpośrednio z programu SQL Server, Oracle, Teradata, MongoDB, klastrów Hadoop, usługi Cosmos DB i magazynu obiektów zgodnego z usługą S3 bez oddzielnego instalowania oprogramowania do połączenia klienta. Możesz również użyć ogólnego łącznika ODBC, aby nawiązać połączenie z dodatkowymi dostawcami przy użyciu sterowników ODBC innych firm. Technologia PolyBase umożliwia wykonywanie zapytań T-SQL w celu łączenia danych ze źródeł zewnętrznych z tabelami relacyjnymi w wystąpieniu programu SQL Server.

Technologia PolyBase obsługuje również wykonywanie zapytań o częściowo ustrukturyzowane i ustrukturyzowane formaty danych, takie jak pliki CSV, Parquet, JSON i Delta Lake. Umożliwia to bezproblemową integrację danych opartych na plikach z przepływami pracy języka T-SQL.

Kluczowym przypadkiem użycia wirtualizacji danych za pomocą funkcji PolyBase jest umożliwienie przechowywania danych w oryginalnej lokalizacji i formacie. Dane zewnętrzne można zwirtualizować za pomocą wystąpienia programu SQL Server, aby można było wykonywać zapytania dotyczące ich w miejscu, tak jak w przypadku każdej innej tabeli w programie SQL Server. Ten proces minimalizuje zapotrzebowanie na procesy ETL na potrzeby przenoszenia danych. Ten scenariusz wirtualizacji danych jest możliwy przy użyciu łączników polyBase.

Obsługiwane produkty i usługi SQL

Technologia PolyBase udostępnia te same funkcje dla następujących produktów SQL firmy Microsoft:

Ulepszenia programu SQL Server 2025 PolyBase

Nowość w programie SQL Server 2025 (17.x) Szczegóły
Natywna obsługa plików CSV, Parquet i Delta 1 Usługa zapytań PolyBase dla instalacji danych zewnętrznych nie jest już wymagana do korzystania OPENROWSETz programu , CREATE EXTERNAL TABLEani CREATE EXTERNAL TABLE AS SELECT z następującymi typami danych zewnętrznych: Parquet, Delta, Azure Blob Storage (ABS), Azure Data Lake Storage (ADLS) lub S3-Compatible Magazyn obiektów.
Używanie ogólnych źródeł danych ODBC w systemie Linux Aby uzyskać więcej informacji, zobacz Configure PolyBase to access external data with ODBC generic types (Konfigurowanie technologii PolyBase w celu uzyskiwania dostępu do danych zewnętrznych przy użyciu typów ogólnych ODBC).
Obsługa protokołu TDS 8.0 Program PolyBase używa domyślnej konfiguracji z sterownikiem ODBC dla programu SQL Server w wersji 18 i Encrypt=Yes (obowiązkowe). W przeciwieństwie do innych funkcji programu SQL Server technologia PolyBase umożliwia TrustServerCertificate=True scenariusze certyfikatów z podpisem własnym. Aby wymusić szyfrowanie TLS 1.3 i ścisłe szyfrowanie z protokołem TDS 8.0, ustaw Encrypt=Strict i TrustServerCertificate=No. Aby uzyskać więcej informacji, zobacz CREATE EXTERNAL DATA SOURCE — CONNECTION_OPTIONS. Przejrzyj zmiany naruszające zgodność w funkcjach silnika bazy danych w programie SQL Server 2025.
Zarządzana Tożsamość Tożsamość zarządzana jest dostępna dla programu SQL Server włączonego przez usługę Azure Arc i program SQL Server 2025 na maszynach wirtualnych platformy Azure.

1 W programie SQL Server 2025 (17.x) usługa zapytań PolyBase dla danych zewnętrznych jest nadal wymagana do nawiązania połączenia z innymi bazami danych. Na przykład: SQL Server, Oracle, DB2, Teradata, MongoDB lub ODBC.

Ulepszenia programu SQL Server 2022 PolyBase

Nowość w programie SQL Server 2022 (16.x) Szczegóły
Przechowywanie obiektów zgodne ze standardem S3 Program SQL Server 2022 (16.x) dodaje nowy łącznik, magazyn obiektów zgodny z protokołem S3 przy użyciu interfejsu API REST S3. Do wykonywania zapytań dotyczących plików danych w magazynie obiektów zgodnych z usługą S3 można użyć zarówno funkcji OPENROWSET , jak i CREATE EXTERNAL TABLE .
Niektóre łączniki są oddzielone od usług PolyBase Łącznik magazynu obiektów zgodny ze standardem S3, ADSL Gen2 i Azure Blob Storage nie są już zależne od usług PolyBase. Usługi PolyBase muszą nadal działać, aby obsługiwać łączność z bazami Danych Oracle, Teradata, MongoDB i Generic ODBC. Funkcja PolyBase musi być nadal zainstalowana w instancji SQL Server.
Format pliku Parquet Technologia PolyBase umożliwia teraz wykonywanie zapytań dotyczących danych z plików Parquet przechowywanych w magazynie obiektów zgodnym z usługą S3. Aby uzyskać więcej informacji, zobacz Virtualize parquet file in a S3-compatible object storage with PolyBase (Wirtualizacja pliku Parquet w magazynie obiektów zgodnym z S3 za pomocą PolyBase).
Format tabeli delty Technologia PolyBase umożliwia teraz wykonywanie zapytań (tylko do odczytu) danych z formatu tabeli delty przechowywanego w magazynie obiektów zgodnym z usługą S3, koncie usługi Azure Storage w wersji 2 i usłudze Azure Data Lake Storage Gen2. Aby uzyskać więcej informacji, zobacz Wirtualizacja tabeli różnicowej za pomocą technologii PolyBase
Utwórz tabelę zewnętrzną jako wybierz (CETAS) Technologia PolyBase może teraz użyć instrukcji CETAS do utworzenia tabeli zewnętrznej, a następnie wyeksportować równolegle wynik instrukcji Transact-SQL SELECT do usługi Azure Data Lake Storage Gen2, konta usługi Azure Storage w wersji 2 i magazynu obiektów zgodnego z usługą S3. Aby uzyskać więcej informacji, zobacz CREATE EXTERNAL TABLE AS SELECT (CETAS).

Aby uzyskać więcej nowych funkcji programu SQL Server 2022 (16.x), zobacz Co nowego w programie SQL Server 2022.

Wskazówka

Aby zapoznać się z samouczkiem dotyczącym funkcji i możliwości technologii PolyBase w programie SQL Server 2022 (16.x), zobacz Wprowadzenie do technologii PolyBase w programie SQL Server 2022.

Łączniki programu PolyBase

Funkcja PolyBase zapewnia łączność z następującymi zewnętrznymi źródłami danych:

Zewnętrzne źródła danych SQL Server 2016-2019 z technologią PolyBase SQL Server 2022 (16.x) z technologią PolyBase APS PDW Azure Synapse Analytics
Oracle, MongoDB, Teradata Przeczytaj Przeczytaj Nie. Nie.
Ogólne ODBC Odczyt (tylko system Windows) Odczyt (tylko system Windows) Nie. Nie.
Azure Storage Odczyt/Zapis Odczyt/Zapis Odczyt/Zapis Odczyt/Zapis
Hadoop Odczyt/Zapis Nie. Odczyt/Zapis Nie.
SQL Server Przeczytaj Przeczytaj Nie. Nie.
Przechowywanie obiektów zgodne ze standardem S3 Nie. Odczyt/Zapis Nie. Nie.
  • Program SQL Server 2022 (16.x) i nowsze wersje nie obsługują usługi Hadoop.
  • Program SQL Server 2016 (13.x) wprowadził program PolyBase z obsługą połączeń z usługami Hadoop i Azure Blob Storage.
  • Program SQL Server 2019 (15.x) wprowadził więcej łączników, takich jak SQL Server, Oracle, Teradata i MongoDB.
  • SQL Server 2022 (16.x) wprowadził łącznik pamięci masowej zgodny z protokołem S3.
  • Sql Server 2019 (15.x) Aktualizacja zbiorcza 19 wprowadziła obsługę usługi Oracle TNS.
  • Sql Server 2022 (16.x) Aktualizacja zbiorcza 2 wprowadziła obsługę usługi Oracle TNS.

Przykłady łączników zewnętrznych to:

1 Technologia PolyBase obsługuje dwóch dostawców platformy Hadoop: Hortonworks Data Platform (HDP) i Cloudera Distributed Hadoop (CDH) za pośrednictwem programu SQL Server 2019. Obsługa programu SQL Server dla zewnętrznych źródeł danych HDFS Cloudera (CDP) i Hortonworks (HDP) została wycofana i nie jest uwzględniona w programie SQL Server 2022 (16.x) i nowszych wersjach. Aby uzyskać więcej informacji, zobacz opcje Big Data na platformie Microsoft SQL Server.

Aby użyć programu PolyBase w wystąpieniu programu SQL Server:

  1. Zainstaluj program PolyBase w systemie Windows lub zainstaluj program PolyBase w systemie Linux.
  2. Począwszy od programu SQL Server 2019 (15.x), włącz program PolyBase w sp_configure w razie potrzeby.
  3. Utwórz zewnętrzne źródło danych.
  4. Utwórz tabelę zewnętrzną.

Integracja platformy Azure

Dzięki podstawowej pomocy technologii PolyBase zapytania T-SQL mogą również importować i eksportować dane z usługi Azure Blob Storage. Ponadto technologia PolyBase umożliwia usłudze Azure Synapse Analytics importowanie i eksportowanie danych z usługi Azure Data Lake Store oraz z usługi Azure Blob Storage.

Dlaczego warto używać technologii PolyBase?

Technologia PolyBase umożliwia łączenie danych z instancji SQL Server z danymi zewnętrznymi. Zanim program PolyBase zezwolił na dołączanie danych do zewnętrznych źródeł danych, można wykonać następujące czynności:

  • Przenieś połowę danych, aby wszystkie dane znajdowały się w jednej lokalizacji.
  • Wykonaj zapytanie względem obu źródeł danych, a następnie napisz niestandardową logikę zapytań, aby sprzężć i zintegrować dane na poziomie klienta.

Technologia PolyBase umożliwia łączenie danych przy użyciu Transact-SQL.

Technologia PolyBase nie wymaga zainstalowania dodatkowego oprogramowania w środowisku usługi Hadoop. Wykonywanie zapytań dotyczących danych zewnętrznych przy użyciu tej samej składni języka T-SQL używanej do wykonywania zapytań dotyczących tabeli bazy danych. Działania wsparcia implementowane przez program PolyBase są wykonywane w sposób przezroczysty. Autor zapytania nie potrzebuje żadnej wiedzy na temat źródła zewnętrznego.

Technologia PolyBase używa

Technologia PolyBase umożliwia korzystanie z następujących scenariuszy w programie SQL Server:

  • Bezproblemowy dostęp do danych: Wykonywanie zapytań względem innych maszyn RDBM lub plików zewnętrznych, takich jak CSV, Parquet i Delta Lake, przy użyciu języka T-SQL tak, jakby były tabelami natywnymi.
  • Odciążanie zimnych danych: Zachowując łatwo dostęp do niego.
  • Zwiększona produktywność: Zmniejsz czas i nakład pracy wymagany do zintegrowania i analizowania danych z wielu źródeł.
  • Efektywność kosztowa: Zminimalizuj potrzebę replikacji danych i kosztów magazynowania skojarzonych z tradycyjnymi metodami integracji danych.
  • Szczegółowe informacje w czasie rzeczywistym: Włącz wykonywanie zapytań dotyczących danych w czasie rzeczywistym i szczegółowe informacje bez opóźnień spowodowanych przenoszeniem lub synchronizacją danych.
  • Bezpieczeństwo: Użyj funkcji zabezpieczeń programu SQL Server, aby uzyskać szczegółowe uprawnienia, zarządzanie poświadczeniami i kontrolę.

Wydajność

Nie ma twardego limitu liczby plików ani ilości danych, które mogą być odpytywane. Wydajność zapytań zależy od ilości danych, formatu danych, sposobu organizowania danych oraz złożoności zapytań i sprzężeń.

Aby uzyskać więcej informacji na temat wskazówek dotyczących wydajności i zaleceń dotyczących technologii PolyBase, zobacz Zagadnienia dotyczące wydajności w programie PolyBase dla programu SQL Server.

Uaktualnianie do programu SQL Server 2022

Począwszy od programu SQL Server 2022 (16.x) Hortonworks Data Platform (HDP) i Cloudera Distributed Hadoop (CDH) nie są już obsługiwane. Ze względu na te zmiany przed migracją do programu SQL Server 2022 (16.x) lub nowszego należy ręcznie usunąć zewnętrzne źródła danych programu PolyBase utworzone w poprzednich wersjach programu SQL Server TYPE = HADOOP lub azure Storage. Porzucanie zewnętrznych źródeł danych wymaga również porzucania skojarzonych obiektów bazy danych, takich jak poświadczenia o zakresie bazy danych i tabele zewnętrzne.

Łączniki usługi Azure Storage należy zmienić na podstawie poniższej tabeli referencyjnej:

Zewnętrzne źródło danych Źródło Do
Azure Blob Storage wasb[s] abs
ADLS Gen 2 abfs[s] adls

Wprowadzenie

Przed użyciem programu PolyBase należy zainstalować program PolyBase w systemie Windows lub zainstalować program PolyBase w systemie Linux i włączyć program PolyBase w sp_configure w razie potrzeby.

Aby zapoznać się z samouczkiem dotyczącym funkcji i możliwości technologii PolyBase, zobacz Wprowadzenie do technologii PolyBase w programie SQL Server 2022.

Aby uzyskać więcej samouczków dotyczących różnych zewnętrznych źródeł danych, zapoznaj się z tematem:

Wirtualizacja danych na innych platformach

Funkcje wirtualizacji danych są również dostępne na innych platformach: