

# Parâmetros avançados de conexão
<a name="jdbc-v3-driver-advanced-connection-parameters"></a>

As seções a seguir descrevem os parâmetros avançados de conexão para o driver JDBC 3.x.

**Topics**
+ [Parâmetros da criptografia de resultados](#jdbc-v3-driver-result-encryption-parameters)
+ [Parâmetros de busca de resultados](#jdbc-v3-driver-result-fetching-parameters)
+ [Parâmetros de configuração do resultado](#jdbc-v3-driver-result-config)
+ [Parâmetros de reutilização dos resultados da consulta](#jdbc-v3-driver-query-result-reuse-parameters)
+ [Parâmetros de sondagem da execução de uma consulta](#jdbc-v3-driver-query-execution-polling-parameters)
+ [Parâmetros de substituição de endpoint](#jdbc-v3-driver-endpoint-override-parameters)
+ [Parâmetros de configuração de proxy](#jdbc-v3-driver-proxy-configuration-parameters)
+ [Parâmetros de registro em log](#jdbc-v3-driver-logging-parameters)
+ [Nome da aplicação](#jdbc-v3-driver-application-name)
+ [Teste de conexão](#jdbc-v3-driver-connection-test)
+ [Número de novas tentativas](#jdbc-v3-driver-number-of-retries)
+ [Tempo limite de rede](#jdbc-v3-driver-networktimeoutmillis)

## Parâmetros da criptografia de resultados
<a name="jdbc-v3-driver-result-encryption-parameters"></a>

Observe os seguintes pontos:
+ A chave do AWS KMS deve ser especificada quando `EncryptionOption` é `SSE_KMS` ou `CSE_KMS`.
+ A chave do AWS KMS não pode ser especificada quando a `EncryptionOption` não está especificada ou quando a `EncryptionOption` é `SSE_S3`.

### Opção de criptografia
<a name="jdbc-v3-driver-encryption-option"></a>

O tipo de criptografia a ser usado nos resultados de consultas quando eles são armazenados no Amazon S3. Para obter mais informações sobre as opções de criptografia, consulte [EncryptionConfiguration](https://docs.aws.amazon.com/athena/latest/APIReference/API_EncryptionConfiguration.html) na *Amazon Athena API Reference*.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | Possíveis valores | 
| --- | --- | --- | --- | --- | 
| EncryptionOption | S3OutputEncOption (obsoleto) | Opcional | nenhuma | SSE\$1S3, SSE\$1KMS, CSE\$1KMS | 

### Chave do KMS
<a name="jdbc-v3-driver-kms-key"></a>

O ARN ou ID da chave do KMS, se `SSE_KMS` ou `CSE_KMS` for escolhido como a opção de criptografia. Para obter mais informações, consulte [EncryptionConfiguration](https://docs.aws.amazon.com/athena/latest/APIReference/API_EncryptionConfiguration.html) na *Amazon Athena API Reference*.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| KmsKey | S3OutputEncKMSKey (obsoleto) | Opcional | nenhuma | 

## Parâmetros de busca de resultados
<a name="jdbc-v3-driver-result-fetching-parameters"></a>

### Buscador de resultados
<a name="jdbc-v3-driver-result-fetcher"></a>

O buscador que será usado para baixar resultados das consultas.

O buscador de resultados padrão, `auto`, baixa os resultados das consultas diretamente do Amazon S3 sem usar as APIs do Athena. Quando não é possível fazer o download direto do S3, como nos casos em que os resultados da consulta estão criptografados com a opção `CSE_KMS`, o Athena automaticamente usa a API `GetQueryResultsStream` como alternativa.

O uso do buscador `auto` é recomendado na maioria das situações. Se suas políticas do IAM ou as políticas para o bucket do S3 usarem a condição [s3:CalledVia](security-iam-athena-calledvia.md) com a finalidade de limitar o acesso às solicitações de objetos do S3 provenientes do Athena, o buscador `auto` tentará primeiro fazer o download dos resultados do S3 e, em seguida, recorrerá à API `GetQueryResultsStream`. Nessa situação, é possível configurar o ResultFetcher para `GetQueryResultsStream`, evitando uma chamada de API adicional.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | Possíveis valores | 
| --- | --- | --- | --- | --- | 
| ResultFetcher | nenhuma | Opcional | auto | auto, S3, GetQueryResults e GetQueryResultsStream | 

### Tamanho da busca
<a name="jdbc-v3-driver-fetch-size"></a>

O valor desse parâmetro é usado como o mínimo para buffers internos e como tamanho das páginas de destino ao buscar resultados. O valor 0 (zero) significa que o driver deve usar seus próprios padrões conforme descrito abaixo. O valor máximo é 1.000.000.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| FetchSize | RowsToFetchPerBlock (obsoleto) | Opcional | 0 | 
+ O buscador `GetQueryResults` sempre usará um tamanho de página de 1.000, que é o valor máximo permitido para a chamada de API. Quando o tamanho da busca é maior do de 1.000, várias chamadas sucessivas de API são feitas para preencher o buffer acima do mínimo.
+ O buscador `GetQueryResultsStream` usa o tamanho de busca configurado como o tamanho de página, ou 10.000 por padrão.
+ O buscador `S3` usa o tamanho de busca configurado como o tamanho de página, ou 10.000 por padrão.

## Parâmetros de configuração do resultado
<a name="jdbc-v3-driver-result-config"></a>

### Expected bucket owner (Proprietário esperado do bucket)
<a name="jdbc-v3-driver-exp-bucket-owner"></a>

O ID da conta do proprietário esperado do bucket do S3. Se o ID da conta que você fornecer não corresponder ao proprietário real do bucket, a solicitação falhará. Para obter mais informações sobre como verificar o proprietário do bucket do S3, consulte [Verificar a propriedade do bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-owner-condition.html#bucket-owner-condition-use).


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| ExpectedBucketOwner | nenhuma | Opcional | nenhuma | 

### Opção ACL
<a name="jdbc-v3-driver-acl"></a>

Indica que uma ACL predefinida do Amazon S3 deve ser configurada para controlar o proprietário dos resultados da consulta armazenados. Para mais informações sobre `AclOption`, consulte [AclConfiguration](https://docs.aws.amazon.com/athena/latest/APIReference/API_AclConfiguration.html).


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | Possíveis valores | 
| --- | --- | --- | --- | --- | 
| AclOption | nenhuma | Opcional | nenhuma | BUCKET\$1OWNER\$1FULL\$1CONTROL | 

## Parâmetros de reutilização dos resultados da consulta
<a name="jdbc-v3-driver-query-result-reuse-parameters"></a>

### Habilitar a reutilização de resultados
<a name="jdbc-v3-driver-enable-result-reuse"></a>

Especifica se os resultados anteriores para a mesma consulta poderão reutilizados quando uma consulta for executada. Para obter informações sobre a reutilização de resultados de consulta, consulte [ResultReuseByAgeConfiguration](https://docs.aws.amazon.com/athena/latest/APIReference/API_ResultReuseByAgeConfiguration.html).


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| EnableResultReuseByAge | nenhuma | Opcional | FALSE | 

### Idade máxima para reutilização dos resultados
<a name="jdbc-v3-driver-result-reuse-max-age"></a>

Especifica, em minutos, a idade máxima do resultado de uma consulta anterior que o Athena deve considerar para reutilização. Para obter informações sobre a idade máxima para reutilização de resultados, consulte [ResultReuseByAgeConfiguration](https://docs.aws.amazon.com/athena/latest/APIReference/API_ResultReuseByAgeConfiguration.html).


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| MaxResultReuseAgeInMinutes | nenhuma | Opcional | 60 | 

## Parâmetros de sondagem da execução de uma consulta
<a name="jdbc-v3-driver-query-execution-polling-parameters"></a>

### Intervalo mínimo para a sondagem da execução de uma consulta
<a name="jdbc-v3-driver-minimum-query-execution-polling-interval"></a>

O tempo mínimo, em milissegundos, a ser aguardado antes de sondar o Athena sobre o status da execução de uma consulta.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| MinQueryExecutionPollingIntervalMillis | MinQueryExecutionPollingInterval (obsoleto) | Opcional | 100 | 

### Intervalo máximo para sondagem da execução de uma consulta
<a name="jdbc-v3-driver-maximum-query-execution-polling-interval"></a>

O tempo máximo, em milissegundos, a ser aguardado antes de sondar o Athena sobre o status da execução de uma consulta.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| MaxQueryExecutionPollingIntervalMillis | MaxQueryExecutionPollingInterval (obsoleto) | Opcional | 5000 | 

### Multiplicador do intervalo de sondagem da execução de uma consulta
<a name="jdbc-v3-driver-query-execution-polling-interval-multiplier"></a>

O fator de aumento do período de sondagem. Por padrão, a sondagem começa com o valor de `MinQueryExecutionPollingIntervalMillis` e dobra a cada sondagem até atingir o valor de `MaxQueryExecutionPollingIntervalMillis`.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| QueryExecutionPollingIntervalMultiplier | nenhuma | Opcional | 2 | 

## Parâmetros de substituição de endpoint
<a name="jdbc-v3-driver-endpoint-override-parameters"></a>

### Substituição do endpoint do Athena
<a name="jdbc-v3-driver-athena-endpoint-override"></a>

O endpoint que o driver usará para fazer chamadas de API para o Athena.

Observe os seguintes pontos:
+ Se os protocolos `https://` ou `http://` não forem especificados na URL fornecida, o driver inserirá o prefixo `https://`.
+ Se esse parâmetro não for especificado, o driver usará um endpoint padrão.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| AthenaEndpoint | EndpointOverride (obsoleto) | Opcional | nenhuma | 

### Substituição de endpoint de serviço de streaming do Athena
<a name="jdbc-v3-driver-athena-streaming-service-endpoint-override"></a>

O endpoint que o driver usará para baixar os resultados das consultas quando usar o serviço de streaming do Athena. O serviço de streaming do Athena está disponível na porta 444.

Observe os seguintes pontos:
+ Se os protocolos `https://` ou `http://` não forem especificados na URL fornecida, o driver inserirá o prefixo `https://`.
+ Se uma porta não for especificada na URL fornecida, o driver inserirá a porta 444 do serviço de streaming.
+ Se o parâmetro `AthenaStreamingEndpoint` não for especificado, o driver usará a substituição do `AthenaEndpoint`. Se nem o `AthenaStreamingEndpoint` nem a substituição do `AthenaEndpoint` forem especificados, o driver usará um endpoint de streaming padrão.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| AthenaStreamingEndpoint | StreamingEndpointOverride (obsoleto) | Opcional | nenhuma | 

### Substituição de endpoint do LakeFormation
<a name="jdbc-v3-driver-athena-lake-formation-endpoint-override"></a>

O endpoint que o driver usará para o serviço Lake Formation quando usar a API [AssumeDecorateRoleWithSAML](https://docs.aws.amazon.com/lake-formation/latest/APIReference/API_AssumeDecoratedRoleWithSAML.html) do AWS Lake Formation para recuperar credenciais temporárias. Se esse parâmetro não for especificado, o driver usará um endpoint padrão do Lake Formation.

Observe os seguintes pontos:
+ Se os protocolos `https://` ou `http://` não forem especificados na URL fornecida, o driver inserirá o prefixo `https://`.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| LakeFormationEndpoint |  LfEndpointOverride (obsoleto)  | Opcional | nenhuma | 

### Substituição de endpoint do S3
<a name="jdbc-v3-driver-athena-s3-endpoint-override"></a>

O endpoint que o driver usará para baixar os resultados das consultas quando usar o buscador do Amazon S3. Se esse parâmetro não for especificado, o driver usará um endpoint padrão do Amazon S3.

Observe os seguintes pontos:
+ Se os protocolos `https://` ou `http://` não forem especificados na URL fornecida, o driver inserirá o prefixo `https://`.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| S3Endpoint | Nenhum | Opcional | nenhuma | 

### Substituição de endpoint do STS
<a name="jdbc-v3-driver-athena-sts-endpoint-override"></a>

O endpoint que o driver usará para o serviço AWS STS quando usar a API [AssumeRoleWithSAML](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) do AWS STS para recuperar as credenciais temporárias. Se esse parâmetro não for especificado, o driver usará um endpoint padrão do AWS STS.

Observe os seguintes pontos:
+ Se os protocolos `https://` ou `http://` não forem especificados na URL fornecida, o driver inserirá o prefixo `https://`.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| StsEndpoint | StsEndpointOverride(obsoleto) | Opcional | nenhuma | 

### Substituição de endpoint OIDC de SSO
<a name="jdbc-v3-driver-athena-sso-oidc-endpoint-override"></a>

O endpoint que o driver usará ao utilizar `ClientConfiguration.endpointOverride` para substituir o endpoint HTTP padrão para o cliente SSO OIDC. Para obter mais informações, consulte [ClientConfiguration](https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/client-config.html).


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| SSOOIDCEndpointOverride |  | Opcional | nenhuma | 

### Substituição do endpoint de SSO Admin
<a name="jdbc-v3-driver-athena-sso-admin-endpoint-override"></a>

O endpoint que o driver usará ao utilizar `ClientConfiguration.endpointOverride` para substituir o endpoint HTTP padrão para o cliente de SSO Admin. Para obter mais informações, consulte [ClientConfiguration](https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/client-config.html).


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| SSOAdminEndpointOverride |  | Opcional | nenhuma | 

## Parâmetros de configuração de proxy
<a name="jdbc-v3-driver-proxy-configuration-parameters"></a>

### Host do proxy
<a name="jdbc-v3-driver-proxy-host"></a>

A URL do host proxy. Use esse parâmetro se você precisar que as solicitações do Athena passem por um proxy.

**nota**  
 Certifique-se de incluir o protocolo `https://` ou `http://` no início da URL do `ProxyHost`. 


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| ProxyHost | nenhuma | Opcional | nenhuma | 

### Porta do proxy
<a name="jdbc-v3-driver-proxy-port"></a>

A porta a ser usada no host proxy. Use esse parâmetro se você precisar que as solicitações do Athena passem por um proxy.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| ProxyPort | nenhuma | Opcional | nenhuma | 

### Nome de usuário do proxy
<a name="jdbc-v3-driver-proxy-username"></a>

O nome de usuário para autenticação no servidor proxy. Use esse parâmetro se você precisar que as solicitações do Athena passem por um proxy.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| ProxyUsername | ProxyUID (obsoleto) | Opcional | nenhuma | 

### Senha do proxy
<a name="jdbc-v3-driver-proxy-password"></a>

A senha para a autenticação no servidor proxy. Use esse parâmetro se você precisar que as solicitações do Athena passem por um proxy.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| ProxyPassword | ProxyPWD (obsoleto) | Opcional | nenhuma | 

### Hosts isentos de proxy
<a name="jdbc-v3-driver-proxy-exempt-hosts"></a>

Um conjunto dos nomes de host aos quais o driver se conecta sem usar um proxy quando o uso de proxy está habilitado (ou seja, quando os parâmetros de conexão `ProxyHost` e `ProxyPort` estão definidos). Os hosts devem ser separados pelo caractere barra vertical (`|`) (por exemplo, `host1.com|host2.com`).


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| ProxyExemptHosts | NonProxyHost | Opcional | nenhuma | 

### Proxy habilitado para provedores de identidades
<a name="jdbc-v3-driver-proxy-enabled-for-identity-providers"></a>

Especifica se um proxy deverá ser usado quando o driver se conectar a um provedor de identidades.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| ProxyEnabledForIdP | UseProxyForIdP | Opcional | FALSE | 

## Parâmetros de registro em log
<a name="jdbc-v3-driver-logging-parameters"></a>

Esta seção descreve os parâmetros relacionados a registro em log.

### Nível de log
<a name="jdbc-v3-driver-logging-parameters-log-level"></a>

Especifica o nível para o registro em log do driver. Nada é registrado em log, a menos que o parâmetro `LogPath` também esteja definido.

**nota**  
Recomendamos definir somente o parâmetro `LogPath`, a menos que você tenha requisitos especiais. Definir somente o parâmetro `LogPath` habilita o registro em log e usa o nível de log padrão `TRACE`. O nível do registro em log `TRACE` fornece o registro em log mais detalhado.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | Possíveis valores | 
| --- | --- | --- | --- | --- | 
| LogLevel | nenhuma | Opcional | TRACE | OFF, ERROR, WARN, INFO, DEBUG, TRACE | 

### Caminho do log.
<a name="jdbc-v3-driver-logging-parameters-log-path"></a>

O caminho para um diretório no computador que executa o driver no qual os logs do driver serão armazenados. Um arquivo de log com um nome exclusivo será criado no diretório especificado. Se definido, habilita o registro em log do driver.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| LogPath | nenhuma | Opcional | nenhuma | 

## Nome da aplicação
<a name="jdbc-v3-driver-application-name"></a>

O nome da aplicação que usa o driver. Se um valor for especificado para esse parâmetro, esse valor será incluído na string de agente do usuário das chamadas de API que o driver fizer para o Athena.

**nota**  
Você também pode definir o nome da aplicação chamando `setApplicationName` no objeto `DataSource`.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| ApplicationName | nenhuma | Opcional | nenhuma | 

## Teste de conexão
<a name="jdbc-v3-driver-connection-test"></a>

Se definido como `TRUE`, o driver executa um teste de conexão toda vez que uma conexão JDBC é criada, mesmo que uma consulta não seja executada na conexão.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| ConnectionTest | nenhuma | Opcional | TRUE | 

**nota**  
Um teste de conexão envia uma consulta `SELECT 1` ao Athena para verificar se a conexão foi configurada corretamente. Isso significa que dois arquivos serão armazenados no Amazon S3 (o conjunto de resultados e os metadados), e tarifas adicionais podem ser aplicadas de acordo com a [política de preços do Amazon Athena](https://aws.amazon.com/athena/pricing).

## Número de novas tentativas
<a name="jdbc-v3-driver-number-of-retries"></a>

O número máximo de vezes que o driver deve reenviar uma solicitação recuperável para o Athena.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
| NumRetries | MaxErrorRetry (obsoleto) | Opcional | nenhuma | 

## Tempo limite de rede
<a name="jdbc-v3-driver-networktimeoutmillis"></a>

O tempo limite de rede controla a quantidade de tempo que o driver espera para que uma conexão de rede seja estabelecida. Isso inclui o tempo necessário para enviar solicitações de API. Em raras circunstâncias, pode ser útil alterar o tempo limite da rede. Por exemplo, você pode querer aumentar o tempo limite para pausas longas na coleta de resíduos. Definir este parâmetro de conexão é equivalente a usar o método `setNetworkTimeout` em um objeto `Connection`.


****  

| Nome do parâmetro | Alias | Tipo de parâmetro | Valor padrão | 
| --- | --- | --- | --- | 
|  NetworkTimeoutMillis  | nenhuma | Opcional | nenhuma | 