Configuring an ADF Linked Service Connection for Presto
For information on how to enable a connection for use with linked services, see Configuring a Linked Service Connection.
Field labels in this walkthrough follow the underlying Azure Data Factory property names, with the connection column that carries each value named alongside. The exact labels shown in the BimlFlex Connection Editor may differ.
After selecting Presto from the Linked Service Type dropdown, the form required for creating a Presto Linked Service will appear.
BimlFlex writes the Presto linked service at version 2.0.
Source Only Connector
A Presto connection is used as a source. It is not available as a target.
Each Presto object is read with a source query on the copy source.
Choosing an Authentication Method
| Method | Credentials | Additional Settings |
|---|---|---|
| Anonymous | None | catalog |
| LDAP | Username and Password | catalog |
Recommendation: Store the Password in Azure Key Vault rather than entering it as plaintext.
Complete Example: LDAP with Azure Key Vault
| Field | Example Value |
|---|---|
| Connect via Integration Runtime | AutoResolveIntegrationRuntime |
| Host | presto.contoso.com |
| Port | 8443 |
Additional Settings key catalog | contoso |
| Enable SSL | Checked |
| Authentication Type | LDAP |
| Username | bfx_reader |
| Azure Key Vault Linked Service | bfx-kv |
| Secret Name (for Password) | BFX-SRC-PrestoPassword |
Required Fields
Common Required Fields
Most required fields for a Presto Linked Service connection depend on the Authentication Type used. There are some fields that are required regardless of Authentication Type.
These common required fields are:
Authentication Type Dependent Required Fields
The remaining field requirements are dependent on Authentication Type.
Required fields for LDAP:
- Username
- Password (or Azure Key Vault)
Optional fields are:
Connect via Integration Runtime
Connect via Integration Runtime names the integration runtime for a Presto Linked Service connection.
The default value is AutoResolveIntegrationRuntime.
To use another runtime, select it from the dropdown or choose + New to add one.
When a custom value is saved in the linked service form, it will be added to the custom integration runtimes.
The custom values that appear in this dropdown can be maintained in Settings under Azure - AzureIntegrationRuntime.
The runtime is stored in the connection's LS_ConnectVia_IntegrationRuntime column. Any value other than AutoResolveIntegrationRuntime is written to the linked service as the runtime it connects through.
Host
The Host is the IP address or host name of the Presto server (for example, presto.contoso.com).
It is stored in the connection's LS_Host column and maps to the ADF host property.
Port
The Port is the TCP port that the Presto server uses to listen for client connections. The default value is 8443.
It is stored in the connection's LS_Port column and maps to the ADF port property. BimlFlex writes it to the linked service when the column is set.
Catalog
The Catalog is the catalog context for all requests against the server (for example, contoso).
Azure Data Factory requires a catalog for this linked service.
The Presto form has no Catalog field. The Catalog is stored in the connection's Additional Settings (LS_AdditionalSettings) under the key catalog, and maps to the ADF catalog property.
Enable SSL
Enable SSL specifies whether the connections to the server are encrypted using TLS.
It is stored in the connection's LS_EnableSsl column and maps to the ADF enableSsl property.
When Enable SSL is checked, BimlFlex writes enableSsl as true.
The build reads the column as true when it holds true, t, yes, y or 1, in any letter case. A cleared box stores false in the column.
When the column does not read as true, the build reads the key enableSsl in the connection's Additional Settings (LS_AdditionalSettings), and a value of true, 1 or Y there also writes enableSsl as true.
Otherwise the property is not written and Azure Data Factory uses its default value, true.
Enable Server Certificate Validation
Enable Server Certificate Validation specifies whether the server SSL certificate is validated when the connection opens. Validation uses the system trust store.
The Presto form has no field for it. The build reads the connection's LS_EnableServerCertificateValidation column and maps it to the ADF enableServerCertificateValidation property.
The build reads a filled column as true when it holds true, t, yes, y or 1, in any letter case, and as false for any other value.
A column read as false writes enableServerCertificateValidation as false.
A column read as true, or a blank column, writes no property, and Azure Data Factory uses its default value, true.
Use System Trust Store
The Presto form shows a Use System Trust Store box, stored in the connection's LS_UseSystemTrustStore column.
The value entered in that box is not written to the linked service.
The build writes no useSystemTrustStore, trustedCertPath, allowHostNameCNMismatch or allowSelfSignedServerCert property, and a value held in the LS_TrustedCertPath, LS_AllowHostNameCNMismatch or LS_AllowSelfSignedServerCert column is not written either.
Server certificate validation uses the system trust store, as the Enable Server Certificate Validation section describes.
Time Zone ID
The Time Zone ID is the local time zone used by the connection. Valid values are specified in the IANA Time Zone Database. The default value is the Presto system time zone.
The Presto form has no Time Zone ID field. The Time Zone ID is stored in the connection's Additional Settings (LS_AdditionalSettings) under the key timeZoneID, and maps to the ADF timeZoneID property. BimlFlex writes it to the linked service when the key is set.
Additional Settings
Of the keys in the connection's Additional Settings (LS_AdditionalSettings), the build reads catalog, timeZoneID and enableSsl alone. No other key is written to the linked service.
Authentication Type
The Presto Linked Service connection can use Anonymous or LDAP authentication.
The selected value is stored in the connection's LS_AuthenticationType column and maps to the ADF authenticationType property.
When using LDAP, a Username and Password are required.
Anonymous
Anonymous authentication takes no Username or Password.
LDAP
LDAP authentication signs in to the Presto server with a Username and Password.
The Username is stored in the connection's LS_Username column and maps to the ADF username property.
The Password field accepts the password as plaintext in the LS_Password column, or an Azure Key Vault reference held in the LS_PasswordKVS_ fields that resolves to the password at runtime. It maps to the ADF password property.
It is suggested that Azure Key Vault be used in place of manually entering the Password.
Azure Data Factory Linked Service Additional Information
For additional information on ADF Presto Linked Service and its connection requirements see the Azure Data Factory Presto Connector documentation.