Aracılığıyla paylaş


POLYBase'i ODBC genel türleriyle dış verilere erişecek şekilde yapılandırma

Şunlar için geçerlidir: SQL Server

SQL Server 2019'dan başlayarak PolyBase, ODBC bağlayıcısını kullanarak ODBC uyumlu veri kaynaklarına bağlanmanızı sağlar. SQL Server 2025 (17.x) sürümünden itibaren bu özellik Linux'ta kullanılabilir.

Bu makalede, ODBC veri kaynağı kullanarak bağlantıyı yapılandırmanın nasıl oluşturulacağı gösterilmektedir. Sağlanan kılavuzda örnek olarak belirli bir ODBC sürücüsü kullanılır. Belirli örnekler için ODBC sağlayıcınıza başvurun. Uygun bağlantı dizesi seçeneklerini belirlemek için veri kaynağınızın ODBC sürücüsü belgelerine başvurun. Bu makaledeki örnekler belirli bir ODBC sürücüsü için geçerli olmayabilir.

Önkoşullar

Uyarı

SQL Server 2022 (16.x) ve önceki sürümlerde bu özellik Windows üzerinde SQL Server gerektirir.

  • PolyBase kurulumu ve etkinleştirilmesi, SQL Server örneginizde PolyBase yüklemesi için gereklidir.

  • Veritabanı kapsamlı kimlik bilgileri oluşturmadan önce bir ana anahtar oluşturmanız gerekir.

ODBC sürücüsünü yükleme

İşletim sisteminiz için yükleme yönergelerini izleyin.

SQL Server 2025 (17.x) varsayılan olarak PolyBase sqlserver veri kaynakları için SQL Server için Microsoft ODBC Sürücüsü sürüm 18'i kullanır. Bu sürücü TDS 8.0'ı destekler ve çeşitli güncelleştirmeler, özellikler ve bazı uyumsuzluk yaratan değişiklikler içerir. TDS 8.0'ı kullanmak için yeni bir şifreleme seçeneği kullanmanız ve sunucunuza güvenilir bir sertifika yüklemeniz gerekir.

SQL Server için Microsoft ODBC Sürücüsü sürüm 18 hakkında daha fazla bilgi için bkz:

SQL Server TDS 8.0 desteği hakkında daha fazla bilgi için bkz. TDS 8.0.

PolyBase düğümlerinin her birine bağlanmak istediğiniz veri kaynağının ODBC sürücüsünü indirin ve yükleyin. Sürücü düzgün bir şekilde yüklendikten sonra, ODBC Veri Kaynağı Yöneticisi'nden sürücüyü görüntüleyebilir ve test edebilirsiniz.

PolyBase ölçeği genişletme gruplarının ekran görüntüsü.

Önceki örnekte, sürücünün adı kırmızıyla daire içine alınmıştı. Dış veri kaynağını oluştururken bu adı kullanın.

Önemli

Sorgu performansını geliştirmek için bağlantı havuzunu etkinleştirin. Bu, ODBC Veri Kaynağı Yöneticisi'nden gerçekleştirilebilir.

SQL Server'da bağımlı nesneler oluşturma

ODBC veri kaynağını kullanmak için önce yapılandırmayı tamamlamak için birkaç nesne oluşturmanız gerekir.

Bu bölümde aşağıdaki Transact-SQL komutları kullanılır:

  1. ODBC kaynağına erişmek için veritabanı kapsamlı bir kimlik bilgisi oluşturun.

    CREATE DATABASE SCOPED CREDENTIAL [<credential_name>]
        WITH IDENTITY = '<username>', SECRET = '<password>';
    

    Örneğin, aşağıdaki örnekte kimliği ile adlı credential_namebir usernamekimlik bilgisi oluşturulur. değerini karmaşık bir parolayla değiştirin <password> .

    CREATE DATABASE SCOPED CREDENTIAL credential_name
        WITH IDENTITY = 'username', SECRET = '<password>';
    
  2. CREATE EXTERNAL DATA SOURCEile bir dış veri kaynağı oluşturun.

    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>]
    );
    

    Aşağıdaki örnek bir dış veri kaynağı oluşturur:

    • Adlı external_data_source_name
    • ODBC SERVERNAME ve 4444 bağlantı noktasında yer alır
    • CData ODBC Driver For SAP 2015 ile bağlantı - Bu, ODBC sürücüsü kurulumu sırasında oluşturulan sürücüdür
    • Bağlantı ServerNodesap_server_node noktasında 5555
    • Sunucuda işlenmek üzere yapılandırıldı (PUSHDOWN = ON)
    • credential_name Kimlik bilgilerini kullanma
    CREATE EXTERNAL DATA SOURCE external_data_source_name
    WITH (
        LOCATION = 'odbc://SERVERNAME:4444',
        PUSHDOWN = ON,
        CONNECTION_OPTIONS = 'Driver={CData ODBC Driver For SAP 2015};
            ServerNode = sap_server_node:5555',
        CREDENTIAL = credential_name
    );
    

Dış tablo oluşturma

Bağımlı nesneleri oluşturduktan sonra, T-SQL kullanarak bir dış tablo oluşturabilirsiniz.

Bu bölümde aşağıdaki Transact-SQL komutları kullanılır:

  1. Bir veya daha fazla dış tablo oluşturun.

    Dış bir tablo oluşturun. DATA_SOURCE bağımsız değişkenini kullanarak daha önce oluşturulan dış veri kaynağını belirtmeli ve LOCATION bağımsız değişkenini kullanarak kaynak tabloyu belirtmelisiniz. Tüm sütunlara başvurmanız gerekmez, ancak türlerin doğru eşlendiğinden emin olmanız gerekir.

    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 (
        DATA_SOURCE = [<external_data_source_name>],
        LOCATION = '<sap_table_name>'
    );
    

    Uyarı

    Bu dış veri kaynağını kullanarak tüm dış tablolar için bağımlı nesneleri yeniden kullanabileceğinizi unutmayın.

  2. Opsiyonel: Dış tabloda istatistikler oluşturun.

    En iyi sorgu performansı için, özellikle birleştirmeler, filtreler ve toplamalar için kullanılan dış tablo sütunlarında istatistikler oluşturmanızı öneririz.

    CREATE STATISTICS statistics_name ON contact(FirstName) WITH FULLSCAN;