Ir para o conteúdo

Detalhes da Conexão do Apache Cassandra

Introdução

Versão do conector

Esta documentação é baseada na versão 21.0.8257 do conector.

Começando

Suporte à versão do Cassandra

O conector suporta versões CQL 2.0, 3.0 e 4.0

Estabelecendo uma Conexão

Conectando ao Servidor

Colocou o Server e Database propriedades de conexão para se conectar ao Cassandra.

Para se conectar a um sistema distribuído, você pode definir Server a uma lista separada por vírgulas de servidores e portas, separados por dois pontos. Você também precisará definir ConsistencyLevel.

As seções a seguir detalham as propriedades de conexão para autenticação, segurança e acesso a dados. Consulte Ajuste fino de acesso a dados se precisar de mais controle sobre a conexão com seu sistema.

Conectando-se ao CosmosDB com a API do Cassandra

Para obter a cadeia de conexão necessária para se conectar a uma conta do Cosmos DB usando a API do Cassandra, faça logon no Portal do Azure, selecione Azure Cosmos DB e selecione sua conta. Na seção Settings, clique em Connection String e defina os seguintes valores.

  • Server: Defina como o valor Host, o FQDN do servidor provisionado para sua conta. Você também pode especificar a porta aqui ou em Port.
  • Port: Defina isso para a porta.
  • Database: Defina isso para o banco de dados que você deseja ler e gravar.
  • User: O nome da conta do Cosmos DB.
  • Password: a chave da conta associada à conta do Cosmos DB.
  • UseSSL: Defina como Verdadeiro

Protegendo Conexões do Cassandra

Você pode definir UseSSL para negociar criptografia SSL/TLS quando você se conectar. Por padrão, o conector tenta negociar SSL/TLS verificando o certificado do servidor em relação ao armazenamento de certificados confiáveis do sistema. Para especificar outro certificado, consulte o SSLServerCert propriedade para os formatos disponíveis para fazê-lo.

Autenticação para Cassandra

O conector oferece suporte à autenticação básica com credenciais de login e aos recursos adicionais de autenticação do DataStax Enterprise (DSE) Cassandra. As seções a seguir detalham as propriedades de conexão que seu método de autenticação pode exigir.

Você precisa definir AuthScheme ao valor correspondente ao autenticador configurado para seu sistema. Você especifica o autenticador no authenticator propriedade no arquivo cassandra.yaml. Esse arquivo geralmente é encontrado em /etc/dse/cassandra. ou por meio do DSE Unified Authenticator no DSE Cassandra.

Autenticação Básica

A autenticação básica é suportada por meio do PasswordAuthenticator padrão integrado do Cassandra.

  • Colocou o AuthScheme propriedade como 'BASIC' e defina o User e Password propriedades.
  • No arquivo cassandra.yaml, defina o authenticator propriedade para 'PasswordAuthenticator'.
Autenticação Kerberos

A autenticação Kerberos é suportada por meio da autenticação unificada DataStax Enterprise.

  • Colocou o AuthScheme propriedade para 'KERBEROS' e defina o User e Password propriedades.
  • Colocou o KerberosKDC, KerberosRealm, e KerberosSPN propriedades.
  • No arquivo cassandra.yaml, defina o authenticator propriedade para "com.datastax.bdp.cassandra.auth.DseAuthenticator".
  • Modifique o authentication_options seção no arquivo dse.yaml, especificando as propriedades default_schema e other_schemas como 'kerberos'.
  • Modifique o kerberos_options seção no arquivo dse.yaml, especificando as propriedades keytab, service_principle, http_principle e qop

Consulte Usando Kerberos para obter mais detalhes sobre como definir propriedades de conexão para se conectar ao Kerberos.

Autenticação LDAP

A autenticação LDAP é suportada através do DataStax Enterprise Unified Authentication.

  • Colocou o AuthScheme propriedade para ' LDAP' e defina o User e Password propriedades.
  • No arquivo cassandra.yaml, defina o authenticator propriedade para "com.datastax.bdp.cassandra.auth.DseAuthenticator".
  • Modifique o authentication_options seção no arquivo dse.yaml, especificando as propriedades default_schema e other_schemas como 'ldap'.
  • Modifique o ldap_options seção no arquivo dse.yaml, especificando as propriedades server_host, server_port, search_dn, search_password, user_search_base e user_search_filter
Usando PKI

Você pode especificar um certificado de cliente para autenticar o conector com SSLClientCert, SSLClientCertType, SSLClientCertSubject, e SSLClientCertPassword.

Usando Kerberos

Esta seção mostra como usar o conector para autenticar no Cassandra usando Kerberos.

Autenticação com Kerberos

Para autenticar no Cassandra usando Kerberos, defina as seguintes propriedades:

  • AuthScheme: Defina para KERBEROS.
  • KerberosKDC: Defina isso como host name or IP Address de sua máquina Kerberos KDC.
  • KerberosRealm: Defina para the realm of the Cassandra Kerberos principal. Este será o valor após o símbolo '@' (por exemplo, EXAMPLE.COM) do principal value (por exemplo, hbase/MyHost@EXAMPLE.COM).
  • KerberosSPN: Defina isso como service and host of the Cassandra Kerberos Principal. Este será o valor anterior ao símbolo '@' (por exemplo, hbase/MyHost) do principal value (por exemplo, hbase/MyHost@EXAMPLE.COM).

Recupere o Tíquete Kerberos

Você pode usar uma das opções a seguir para recuperar o tíquete Kerberos necessário.

Arquivo de Cache de Credenciais do MIT Kerberos

Esta opção permite que você use o MIT Kerberos Ticket Manager ou o comando kinit para obter tickets. Observe que você não precisa definir o User ou Password propriedades de conexão com esta opção.

  1. Certifique-se de ter criado uma variável de ambiente chamada KRB5CCNAME.
  2. Defina o KRB5CCNAME variável de ambiente para um caminho apontando para o seu credential cache file (por exemplo, C:\krb_cache\krb5cc_0 ou /tmp/krb5cc_0). Este arquivo será criado ao gerar seu ticket com o MIT Kerberos Ticket Manager.
  3. Para obter um ticket, abra o aplicativo MIT Kerberos Ticket Manager, clique em Get Ticket, enter your principal name and password, then click OK. Se for bem-sucedido, as informações do tíquete aparecerão no Kerberos Ticket Manager e agora serão armazenadas no arquivo de cache de credenciais.
  4. Agora que o arquivo de cache de credenciais foi criado, o conector usará o arquivo de cache para obter o tíquete Kerberos para se conectar ao Cassandra.

Como alternativa para definir o KRB5CCNAME variável de ambiente, você pode definir diretamente o caminho do arquivo usando KerberosTicketCache propriedade. Quando definido, o conector usará o arquivo de cache especificado para obter o tíquete Kerberos para se conectar ao Cassandra.

Arquivo Keytab

Se a variável de ambiente KRB5CCNAME não foi definida, você pode recuperar um tíquete Kerberos usando um Keytab File. Para fazer isso, defina o User propriedade para o nome de usuário desejado e defina o KerberosKeytabFile para um caminho de arquivo apontando para o arquivo keytab associado ao usuário.

Usuário e Senha

Se a variável de ambiente KRB5CCNAME e a propriedade KerberosKeytabFile não tiverem sido definidas, você pode recuperar um ticket usando um User and Password combination. Para fazer isso, defina o User e Password propriedades para a combinação de usuário/senha que você usa para autenticar com Cassandra.

Autenticação Cross-Realm

Ambientes Kerberos mais complexos podem exigir autenticação cross-realm em que vários realms e servidores KDC são usados (por exemplo, onde um realm/KDC é usado para autenticação do usuário e outro realm/KDC usado para obter o tíquete de serviço).

Em tal ambiente, o KerberosRealm e KerberosKDC as propriedades podem ser definidas com os valores necessários para autenticação do usuário. O KerberosServiceRealm e KerberosServiceKDC as propriedades podem ser definidas com os valores necessários para obter o ticket de serviço.

Acesso a Dados de Ajuste Fino

Acesso a Dados de Ajuste Fino

Você pode usar as seguintes propriedades para obter maior controle sobre os recursos da API do Cassandra e as estratégias que o conector usa para exibi-los:

  • AllowFiltering: Defina esta propriedade para permitir que o servidor processe pesquisas de desempenho lento.

  • UseJsonFormat: Defina esta propriedade para usar literais CQL em vez de JSON.

  • QueryPassthrough: Esta propriedade permite usar instruções CQL nativas em vez de SQL.

  • RowScanDepth: Esta propriedade determina o número de linhas que serão verificadas para detectar os tipos de dados da coluna ao gerar os metadados da tabela.

    Esta propriedade se aplica se você estiver trabalhando com os esquemas dinâmicos gerados a partir de Automatic Schema Discovery ou se estiver usando QueryPassthrough.

Anotações Importantes

Procedimentos Armazenados

  • Os recursos de procedimentos armazenados descritos nesta documentação não são suportados no momento.
  • Como os procedimentos armazenados não são suportados atualmente, qualquer recurso dependente de procedimentos armazenados também não é suportado atualmente.

Arquivos de Configuração e Seus Caminhos

  • Todas as referências para adicionar arquivos de configuração e seus caminhos referem-se a arquivos e locais no Harmony Agente onde o conector está instalado. Esses caminhos devem ser ajustados conforme apropriado, dependendo do agente e do sistema operacional. Se vários agentes forem usados em um grupo de agentes, arquivos idênticos serão necessários em cada agente.

Banco de Dados NoSQL

Cassandra é um banco de dados NoSQL que fornece alto desempenho, disponibilidade e escalabilidade. No entanto, esses recursos não são necessariamente incompatíveis com uma linguagem de consultar compatível com padrões como o SQL-92. O conector modela tabelas Cassandra em tabelas relacionais e traduz consultas SQL em chamadas para a API Cassandra, o protocolo binário CQL (Cassandra Query Language).

O equivalente a uma tabela no Cassandra é uma família de colunas. As famílias de colunas contêm colunas de dados relacionados. Como outros bancos de dados NoSQL, o Cassandra permite tipos complexos de campos, como conjunto, lista e mapa. Uma família de colunas é uma estrutura de dados de mapa aninhada. Isso pode ser representado como um objeto JSON.

O conector oferece duas maneiras de modelar objetos Cassandra. A Descoberta Automática de Esquema localiza automaticamente os tipos de dados em um objeto Cassandra verificando um número configurado de linhas do objeto. Você pode usar RowScanDepth, FlattenArrays, e FlattenObjects para controlar a representação relacional das tabelas em Cassandra.

Descoberta Automática de Esquema

O conector infere automaticamente um esquema relacional inspecionando uma série de documentos Cassandra em uma coleção. Você pode usar o RowScanDepth propriedade para definir a quantidade de documentos que o conector digitalizará para isso. As colunas identificadas durante o processo de descoberta dependem do FlattenArrays e FlattenObjects propriedades.

Objetos Achatados

Se FlattenObjects for definido, todos os objetos aninhados serão nivelados em uma série de colunas. Por exemplo, considere o seguinte documento:

{
  id: 12,
  name: "Lohia Manufacturers Inc.",
  address: {street: "Main Street", city: "Chapel Hill", state: "NC"},
  offices: ["Chapel Hill", "London", "New York"],
  annual_revenue: 35,600,000
}

Este documento será representado pelas seguintes colunas:

Nome da coluna Tipo de Dados Valor de exemplo
id inteiro 12
nome Corda Lohia Manufacturers Inc.
endereço.rua Corda Rua Principal
endereço.cidade Corda Morro da Capela
endereço.estado Corda NC
escritórios Corda ["Chapel Hill", "Londres", "Nova York"]
receita_anual Duplo 35.600.000

Se FlattenObjects não for definido, as colunas address.street, address.city e address.state não serão separadas. A coluna de endereço do tipo string representará o objeto inteiro. Seu valor seria {street: "Main Street", city: "Chapel Hill", state: "NC"}. Consulte Funções JSON para obter mais detalhes sobre como trabalhar com agregados JSON.

Achatamento de Matrizes

O FlattenArrays a propriedade pode ser usada para nivelar os valores da matriz em colunas próprias. Isso é recomendado apenas para arrays que devem ser curtos, por exemplo, as coordenadas abaixo:

"coord": [-73.856077, 40.848447 ]

O FlattenArrays a propriedade pode ser definida como 2 para representar o array acima da seguinte forma:

Nome da coluna Tipo de dados Valor de exemplo
coord.0 flutuar -73.856077
coord.1 flutuar 40.848447

É melhor deixar outras matrizes ilimitadas como estão e separar os dados para elas conforme necessário usando Funções JSON.

Funções JSON

O conector pode retornar estruturas JSON como valores de coluna. O conector permite usar funções SQL padrão para trabalhar com essas estruturas JSON. Os exemplos nesta seção usam a seguinte matriz:

[
     { "grade": "A", "score": 2 },
     { "grade": "A", "score": 6 },
     { "grade": "A", "score": 10 },
     { "grade": "A", "score": 9 },
     { "grade": "B", "score": 14 }
]

JSON_EXTRACT

A função JSON_EXTRACT pode extrair valores individuais de um objeto JSON. A consultar a seguir retorna os valores mostrados abaixo com base no caminho JSON passado como o segundo argumento para a função:

SELECT Name, JSON_EXTRACT(grades,'[0].grade') AS Grade, JSON_EXTRACT(grades,'[0].score') AS Score FROM Students;
Nome da coluna Valor de exemplo
Grade A
Score 2

JSON_COUNT

A função JSON_COUNT retorna o número de elementos em uma matriz JSON dentro de um objeto JSON. A consultar a seguir retorna o número de elementos especificados pelo caminho JSON passado como o segundo argumento para a função:

SELECT Name, JSON_COUNT(grades,'[x]') AS NumberOfGrades FROM Students;
Nome da coluna Valor de exemplo
NumberOfGrades 5

JSON_SUM

A função JSON_SUM retorna a soma dos valores numéricos de uma matriz JSON em um objeto JSON. A consultar a seguir retorna o total dos valores especificados pelo caminho JSON passado como o segundo argumento da função:

SELECT Name, JSON_SUM(score,'[x].score') AS TotalScore FROM Students;
Nome da coluna Valor de exemplo
TotalScore 41

JSON_MIN

A função JSON_MIN retorna o menor valor numérico de uma matriz JSON dentro de um objeto JSON. A consultar a seguir retorna o valor mínimo especificado pelo caminho JSON passado como o segundo argumento para a função:

SELECT Name, JSON_MIN(score,'[x].score') AS LowestScore FROM Students;
Nome da coluna Valor de exemplo
LowestScore 2

JSON_MAX

A função JSON_MAX retorna o valor numérico mais alto de uma matriz JSON dentro de um objeto JSON. A consultar a seguir retorna o valor máximo especificado pelo caminho JSON passado como o segundo argumento para a função:

SELECT Name, JSON_MAX(score,'[x].score') AS HighestScore FROM Students;
Nome da coluna Valor de exemplo
HighestScore 14

JSON

A função JSON pode ser usada para recuperar a tabela inteira como uma string JSON. Veja a consultar a seguir e seu resultado como exemplo:

SELECT JSON(*) FROM Customers;

A consultar acima retornará a tabela inteira como mostrado.

{ "id": 12, "name": "Lohia Manufacturers Inc.", "address": { "street": "Main Street", "city": "Chapel Hill", "state": "NC"}, "offices": ["Chapel Hill", "Londres", "Nova York"], "annual_revenue": 35,600,000 }

Mapeamento de Tipo de Dados

Mapeamentos de Tipo de Dados

O conector mapeia os tipos da fonte de dados para o tipo de dados correspondente disponível no esquema. A tabela abaixo documenta esses mapeamentos.

Observe que as colunas de string podem mapear para diferentes tipos de dados, dependendo de seu comprimento.

Cassandra Esquema
ascii cadeia
bigint longo
blob binário
boolean bool
counter longo
date data
decimal decimal
double flutuar
float flutuar
inet cadeia
int int
list cadeia
map cadeia
set cadeia
smallint int
text cadeia
time tempo
timestamp data e hora
timeuuid cadeia
tinyint int
tuple cadeia
udt cadeia
uuid cadeia
varchar cadeia
varint cadeia

Tabelas do Sistema

Você pode consultar as tabelas do sistema descritas nesta seção para acessar informações de esquema, informações sobre a funcionalidade da fonte de dados e estatísticas de operação em lote.

Tabelas de Esquema

As tabelas a seguir retornam metadados de banco de dados para Cassandra:

Tabelas de Fonte de Dados

As tabelas a seguir retornam informações sobre como se conectar e consultar a fonte de dados:

  • sys_connection_props: Retorna informações sobre as propriedades de conexão disponíveis.
  • sys_sqlinfo: Descreve as consultas SELECT que o conector pode descarregar para a fonte de dados.

Consultar Tabelas de Informações

A tabela a seguir retorna estatísticas de consultar para consultas de modificação de dados, incluindo operações em lote:

  • sys_identity: Retorna informações sobre operações em lote ou atualizações únicas.

Sys_catalogs

Lista os bancos de dados disponíveis.

A consultar a seguir recupera todos os bancos de dados determinados pela string de conexão:

SELECT * FROM sys_catalogs
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados.

Sys_schemas

Lista os esquemas disponíveis.

A consultar a seguir recupera todos os esquemas disponíveis:

SELECT * FROM sys_schemas
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados.
SchemaName String O nome do esquema.

Sys_tables

Lista as tabelas disponíveis.

A consultar a seguir recupera as tabelas e exibições disponíveis:

SELECT * FROM sys_tables
Colunas
Nome Tipo Descrição
CatalogName String O banco de dados que contém a tabela ou exibição.
SchemaName String O esquema que contém a tabela ou exibição.
TableName String O nome da tabela ou visualização.
TableType String O tipo de tabela (tabela ou exibição).
Description String Uma descrição da tabela ou exibição.
IsUpdateable Boolean Se a tabela pode ser atualizada.

Sys_tablecolumns

Descreve as colunas das tabelas e exibições disponíveis.

A consultar a seguir retorna as colunas e os tipos de dados para a tabela "".."Sample".Products:

SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='Products' AND CatalogName='' AND SchemaName='Sample'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém a tabela ou exibição.
SchemaName String O esquema que contém a tabela ou exibição.
TableName String O nome da tabela ou exibição que contém a coluna.
ColumnName String O nome da coluna.
DataTypeName String O nome do tipo de dados.
DataType Int32 Um número inteiro indicando o tipo de dados. Esse valor é determinado no tempo de execução com base no ambiente.
Length Int32 O tamanho de armazenamento da coluna.
DisplaySize Int32 A largura máxima normal da coluna designada em caracteres.
NumericPrecision Int32 O número máximo de dígitos em dados numéricos. O comprimento da coluna em caracteres para caracteres e dados de data e hora.
NumericScale Int32 A escala da coluna ou o número de dígitos à direita do ponto decimal.
IsNullable Boolean Se a coluna pode conter null.
Description String Uma breve descrição da coluna.
Ordinal Int32 O número de sequência da coluna.
IsAutoIncrement String Se o valor da coluna é atribuído em incrementos fixos.
IsGeneratedColumn String Se a coluna é gerada.
IsHidden Boolean Se a coluna está oculta.
IsArray Boolean Se a coluna é uma matriz.

Sys_procedures

Lista os procedimentos armazenados disponíveis.

A consultar a seguir recupera os procedimentos armazenados disponíveis:

SELECT * FROM sys_procedures
Colunas
Nome Tipo Descrição
CatalogName String O banco de dados que contém o procedimento armazenado.
SchemaName String O esquema que contém o procedimento armazenado.
ProcedureName String O nome do procedimento armazenado.
Description String Uma descrição do procedimento armazenado.
ProcedureType String O tipo do procedimento, como PROCEDURE ou FUNCTION.

Sys_procedureparameters

Descreve procedimento armazenado* parâmetros.

A consultar a seguir retorna informações sobre todos os parâmetros de entrada para o procedimento armazenado SelectEntries:

SELECT * FROM sys_procedureparameters WHERE ProcedureName='SelectEntries' AND Direction=1 OR Direction=2
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém o procedimento armazenado.
SchemaName String O nome do esquema que contém o procedimento armazenado.
ProcedureName String O nome do procedimento armazenado* contendo o parâmetro.
ColumnName String O nome do procedimento armazenado* parâmetro.
Direction Int32 Um número inteiro correspondente ao tipo do parâmetro: entrada (1), entrada/saída (2) ou saída (4). parâmetros de tipo de entrada/saída podem ser parâmetros de entrada e saída.
DataTypeName String O nome do tipo de dados.
DataType Int32 Um número inteiro indicando o tipo de dados. Esse valor é determinado no tempo de execução com base no ambiente.
Length Int32 O número de caracteres permitido para dados de caractere. O número de dígitos permitidos para dados numéricos.
NumericPrecision Int32 A precisão máxima para dados numéricos. O comprimento da coluna em caracteres para caracteres e dados de data e hora.
NumericScale Int32 O número de dígitos à direita do ponto decimal em dados numéricos.
IsNullable Boolean Se o parâmetro pode conter null.
IsRequired Boolean Se o parâmetro é necessário para a execução do procedimento.
IsArray Boolean Se o parâmetro é uma matriz.
Description String A descrição do parâmetro.
Ordinal Int32 O índice do parâmetro.

Sys_keycolumns

Descreve as chaves primárias e estrangeiras. A consultar a seguir recupera a chave primária da tabela "".."Sample".Products:

SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Products' AND CatalogName='' AND SchemaName='Sample'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém a chave.
SchemaName String O nome do esquema que contém a chave.
TableName String O nome da tabela que contém a chave.
ColumnName String O nome da coluna chave.
IsKey Boolean Se a coluna é uma chave primária na tabela referenciada no campo TableName.
IsForeignKey Boolean Se a coluna é uma chave estrangeira referenciada no campo TableName.
PrimaryKeyName String O nome da chave primária.
ForeignKeyName String O nome da chave estrangeira.
ReferencedCatalogName String O banco de dados que contém a chave primária.
ReferencedSchemaName String O esquema que contém a chave primária.
ReferencedTableName String A tabela que contém a chave primária.
ReferencedColumnName String O nome da coluna da chave primária.

Sys_foreignkeys

Descreve as chaves estrangeiras. A consultar a seguir recupera todas as chaves estrangeiras que se referem a outras tabelas:

SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém a chave.
SchemaName String O nome do esquema que contém a chave.
TableName String O nome da tabela que contém a chave.
ColumnName String O nome da coluna chave.
PrimaryKeyName String O nome da chave primária.
ForeignKeyName String O nome da chave estrangeira.
ReferencedCatalogName String O banco de dados que contém a chave primária.
ReferencedSchemaName String O esquema que contém a chave primária.
ReferencedTableName String A tabela que contém a chave primária.
ReferencedColumnName String O nome da coluna da chave primária.
ForeignKeyType String Designa se a chave estrangeira é uma chave de importação (aponta para outras tabelas) ou de exportação (referenciada de outras tabelas).

Sys_indexes

Descreve os índices disponíveis. Ao filtrar por índices, você pode escrever consultas mais seletivas com tempos de resposta de consultar mais rápidos.

A consultar a seguir recupera todos os índices que não são chaves primárias:

SELECT * FROM sys_indexes WHERE IsPrimary='false'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém o índice.
SchemaName String O nome do esquema que contém o índice.
TableName String O nome da tabela que contém o índice.
IndexName String O nome do índice.
ColumnName String O nome da coluna associada ao índice.
IsUnique Boolean True se o índice for exclusivo. Falso caso contrário.
IsPrimary Boolean Verdadeiro se o índice for uma chave primária. Falso caso contrário.
Type Int16 Um valor inteiro correspondente ao tipo de índice: estatística (0), clusterizado (1), hash (2) ou outro (3).
SortOrder String A ordem de classificação: A para crescente ou D para decrescente.
OrdinalPosition Int16 O número de sequência da coluna no índice.

Sys_connection_props

Retorna informações sobre as propriedades de conexão disponíveis e as definidas na string de conexão.

Ao consultar esta tabela, a string de conexão de configuração deve ser usada:

jdbc:cdata:cassandra:config:

Esta string de conexão permite que você consultar esta tabela sem uma conexão válida.

A consultar a seguir recupera todas as propriedades de conexão que foram definidas na string de conexão ou definidas por meio de um valor padrão:

SELECT * FROM sys_connection_props WHERE Value <> ''
Colunas
Nome Tipo Descrição
Name String O nome da propriedade de conexão.
ShortDescription String Uma breve descrição.
Type String O tipo de dados da propriedade de conexão.
Default String O valor padrão, se não houver um definido explicitamente.
Values String Uma lista separada por vírgulas de valores possíveis. Um erro de validação é lançado se outro valor for especificado.
Value String O valor que você definiu ou um padrão pré-configurado.
Required Boolean Se a propriedade é necessária para se conectar.
Category String A categoria da propriedade de conexão.
IsSessionProperty String Se a propriedade é uma propriedade de sessão, usada para salvar informações sobre a conexão atual.
Sensitivity String O nível de sensibilidade da propriedade. Isso informa se a propriedade é ofuscada nos formulários de registro e autenticação.
PropertyName String Uma forma truncada em camel case do nome da propriedade de conexão.
Ordinal Int32 O índice do parâmetro.
CatOrdinal Int32 O índice da categoria do parâmetro.
Hierarchy String Mostra as propriedades dependentes associadas que precisam ser definidas juntamente com esta.
Visible Boolean Informa se a propriedade está visível na UI da conexão.
ETC String Diversas informações diversas sobre o imóvel.

Sys_sqlinfo

Descreve o processamento da consultar SELECT que o conector pode transferir para a fonte de dados.

Processamento de Consultas Colaborativas

Ao trabalhar com fontes de dados que não suportam SQL-92, você pode consultar a exibição sys_sqlinfo para determinar os recursos de consultar das APIs subjacentes, expressas na sintaxe SQL. O conector transfere o máximo possível do processamento da instrução SELECT para o servidor e, em seguida, processa o restante da consultar na memória.

Descobrindo os Recursos SELECT da Fonte de Dados

Abaixo está um exemplo de conjunto de dados de recursos SQL. O conjunto de resultados a seguir indica a funcionalidade SELECT que o conector pode descarregar para a fonte de dados ou processar o lado do cliente. Sua fonte de dados pode suportar sintaxe SQL adicional. Alguns aspectos da funcionalidade SELECT são retornados em uma lista separada por vírgulas, se suportados; caso contrário, a coluna contém NO.

Nome Descrição Valores Possíveis
AGGREGATE_FUNCTIONS Funções de agregação suportadas. AVG, COUNT, MAX, MIN, SUM, DISTINCT
COUNT Se a função COUNT é suportada. YES, NO
IDENTIFIER_QUOTE_OPEN_CHAR O caractere de abertura usado para escapar de um identificador. [
IDENTIFIER_QUOTE_CLOSE_CHAR O caractere de fechamento usado para escapar de um identificador. ]
SUPPORTED_OPERATORS Uma lista de operadores SQL com suporte. =, >, <, >=, <=, <>, !=, LIKE, NOT LIKE, IN, NOT IN, IS NULL, IS NOT NULL, AND, OR
GROUP_BY Se GROUP BY é compatível e, em caso afirmativo, o grau de suporte. NO, NO_RELATION, EQUALS_SELECT, SQL_GB_COLLATE
STRING_FUNCTIONS Funções de string suportadas. LENGTH, CHAR, LOCATE, REPLACE, SUBSTRING, RTRIM, LTRIM, RIGHT, LEFT, UCASE, SPACE, SOUNDEX, LCASE, CONCAT, ASCII, REPEAT, OCTET, BIT, POSITION, INSERT, TRIM, UPPER, REGEXP, LOWER, DIFFERENCE, CHARACTER, SUBSTR, STR, REVERSE, PLAN, UUIDTOSTR, TRANSLATE, TRAILING, TO, STUFF, STRTOUUID, STRING, SPLIT, SORTKEY, SIMILAR, REPLICATE, PATINDEX, LPAD, LEN, LEADING, KEY, INSTR, INSERTSTR, HTML, GRAPHICAL, CONVERT, COLLATION, CHARINDEX, BYTE
NUMERIC_FUNCTIONS Funções numéricas suportadas. ABS, ACOS, ASIN, ATAN, ATAN2, CEILING, COS, COT, EXP, FLOOR, LOG, MOD, SIGN, SIN, SQRT, TAN, PI, RAND, DEGREES, LOG10, POWER, RADIANS, ROUND, TRUNCATE
TIMEDATE_FUNCTIONS Funções de data/hora suportadas. NOW, CURDATE, DAYOFMONTH, DAYOFWEEK, DAYOFYEAR, MONTH, QUARTER, WEEK, YEAR, CURTIME, HOUR, MINUTE, SECOND, TIMESTAMPADD, TIMESTAMPDIFF, DAYNAME, MONTHNAME, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, EXTRACT
REPLICATION_SKIP_TABLES Indica tabelas ignoradas durante a replicação.
REPLICATION_TIMECHECK_COLUMNS Uma matriz de string contendo uma lista de colunas que serão usadas para verificar (na ordem especificada) para usar como uma coluna modificada durante a replicação.
IDENTIFIER_PATTERN Valor de string que indica qual string é válida para um identificador.
SUPPORT_TRANSACTION Indica se o provedor oferece suporte a transações como confirmação e reversão. YES, NO
DIALECT Indica o dialeto SQL a ser usado.
KEY_PROPERTIES Indica as propriedades que identificam o banco de dados uniforme.
SUPPORTS_MULTIPLE_SCHEMAS Indica se vários esquemas podem existir para o provedor. YES, NO
SUPPORTS_MULTIPLE_CATALOGS Indica se vários catálogos podem existir para o provedor. YES, NO
DATASYNCVERSION A versão do Data Sync necessária para acessar este driver. Standard, Starter, Professional, Enterprise
DATASYNCCATEGORY A categoria Data Sync deste driver. Source, Destination, Cloud Destination
SUPPORTSENHANCEDSQL Se a funcionalidade SQL aprimorada além do que é oferecido pela API é suportada. TRUE, FALSE
SUPPORTS_BATCH_OPERATIONS Se as operações em lote são suportadas. YES, NO
SQL_CAP Todos os recursos SQL suportados para este driver. SELECT, INSERT, DELETE, UPDATE, TRANSACTIONS, ORDERBY, OAUTH, ASSIGNEDID, LIMIT, LIKE, BULKINSERT, COUNT, BULKDELETE, BULKUPDATE, GROUPBY, HAVING, AGGS, OFFSET, REPLICATE, COUNTDISTINCT, JOINS, DROP, CREATE, DISTINCT, INNERJOINS, SUBQUERIES, ALTER, MULTIPLESCHEMAS, GROUPBYNORELATION, OUTERJOINS, UNIONALL, UNION, UPSERT, GETDELETED, CROSSJOINS, GROUPBYCOLLATE, MULTIPLECATS, FULLOUTERJOIN, MERGE, JSONEXTRACT, BULKUPSERT, SUM, SUBQUERIESFULL, MIN, MAX, JOINSFULL, XMLEXTRACT, AVG, MULTISTATEMENTS, FOREIGNKEYS, CASE, LEFTJOINS, COMMAJOINS, WITH, LITERALS, RENAME, NESTEDTABLES, EXECUTE, BATCH, BASIC, INDEX
PREFERRED_CACHE_OPTIONS Um valor de string especifica o cacheOptions preferencial.
ENABLE_EF_ADVANCED_QUERY Indica se o driver oferece suporte direto a consultas avançadas provenientes do Entity Framework. Caso contrário, as consultas serão tratadas no lado do cliente. YES, NO
PSEUDO_COLUMNS Uma matriz de cadeia de caracteres que indica as pseudocolunas disponíveis.
MERGE_ALWAYS Se o valor for verdadeiro, o modo de mesclagem será executado à força no Data Sync. TRUE, FALSE
REPLICATION_MIN_DATE_QUERY Uma consultar de seleção para retornar a data e hora de início da replicação.
REPLICATION_MIN_FUNCTION Permite que um provedor especifique o nome da fórmula a ser usado para executar um min do lado do servidor.
REPLICATION_START_DATE Permite que um provedor especifique uma data de início de replicação.
REPLICATION_MAX_DATE_QUERY Uma consultar de seleção para retornar a data e hora de término da replicação.
REPLICATION_MAX_FUNCTION Permite que um provedor especifique o nome da fórmula a ser usado para executar um máximo do lado do servidor.
IGNORE_INTERVALS_ON_INITIAL_REPLICATE Uma lista de tabelas que ignorará a divisão da replicação em blocos na replicação inicial.
CHECKCACHE_USE_PARENTID Indica se a instrução CheckCache deve ser executada na coluna de chave pai. TRUE, FALSE
CREATE_SCHEMA_PROCEDURES Indica procedimentos armazenados* que pode ser usado para gerar arquivos de esquema.

A consultar a seguir recupera os operadores que podem ser usados na cláusula WHERE:

SELECT * FROM sys_sqlinfo WHERE Name='SUPPORTED_OPERATORS'

Observe que tabelas individuais podem ter diferentes limitações ou requisitos na cláusula WHERE; consulte o Banco de Dados NoSQL para obter mais informações.

Colunas
Nome Tipo Descrição
NAME String Um componente da sintaxe SQL ou um recurso que pode ser processado no servidor.
VALUE String Detalhes sobre a sintaxe SQL ou SQL suportada.

Sys_identity

Retorna informações sobre tentativas de modificação.

A consultar a seguir recupera os IDs das linhas modificadas em uma operação em lote:

SELECT * FROM sys_identity
Colunas
Nome Tipo Descrição
Id String O ID gerado pelo banco de dados retornado de uma operação de modificação de dados.
Batch String Um identificador para o lote. 1 para uma única operação.
Operation String O resultado da operação no lote: INSERTED, UPDATED ou DELETED.
Message String SUCCESS ou uma mensagem de erro se a atualização no lote falhou.

Características Avançadas

Esta seção detalha uma seleção de recursos avançados do conector Cassandra.

Visualizações definidas pelo usuário

O conector permite definir tabelas virtuais, denominadas visões definidas pelo usuário, cujo conteúdo é decidido por uma consultar pré-configurada. Essas exibições são úteis quando você não pode controlar diretamente as consultas enviadas aos drivers. Consulte Visualizações definidas pelo usuário para obter uma visão geral da criação e configuração de exibições personalizadas.

Configuração SSL

Use Configuração SSL para ajustar como o conector lida com as negociações de certificado TLS/SSL. Você pode escolher entre vários formatos de certificado; Veja o SSLServerCert propriedade em "Opções de cadeia de conexão" para obter mais informações.

Firewall e Proxy

Configure o conector para conformidade com Firewall e Proxy, incluindo proxies do Windows. Você também pode configurar conexões de túnel.

Visualizações Definidas pelo Usuário

O Jitterbit Connector for Cassandra permite definir uma tabela virtual cujo conteúdo é decidido por uma consultar pré-configurada. Elas são chamadas de Visualizações Definidas pelo Usuário, que são úteis em situações onde você não pode controlar diretamente a consultar que está sendo emitida para o driver, por exemplo, ao usar o driver do Jitterbit. As Visualizações Definidas pelo Usuário podem ser usadas para definir predicados que são sempre aplicados. Se você especificar predicados adicionais na consultar para a visualização, eles serão combinados com a consultar já definida como parte da visualização.

Há duas maneiras de criar exibições definidas pelo usuário:

  • Crie um arquivo de configuração em formato JSON definindo as visualizações desejadas.
  • declarações DDL.

Definindo Visualizações Usando um Arquivo de Configuração

As visualizações definidas pelo usuário são definidas em um arquivo de configuração formatado em JSON chamado UserDefinedViews.json. O conector detecta automaticamente as visualizações especificadas neste arquivo.

Você também pode ter várias definições de exibição e controlá-las usando o UserDefinedViews propriedade de conexão. Quando você usa essa propriedade, apenas as exibições especificadas são vistas pelo conector.

Este arquivo de configuração de exibição definida pelo usuário é formatado da seguinte forma:

  • Cada elemento raiz define o nome de uma exibição.
  • Cada elemento raiz contém um elemento filho, chamado query, que contém a consultar SQL personalizada para a exibição.

Por exemplo:

{
    "MyView": {
        "query": "SELECT * FROM \"\".\"Sample\".Products WHERE MyColumn = 'value'"
    },
    "MyView2": {
        "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
    }
}

Use o UserDefinedViews propriedade de conexão para especificar a localização do seu arquivo de configuração JSON. Por exemplo:

"UserDefinedViews", "C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json"

Esquema para Exibições Definidas pelo Usuário

As visualizações definidas pelo usuário são expostas no UserViews esquema por padrão. Isso é feito para evitar que o nome da exibição entre em conflito com uma entidade real no modelo de dados. Você pode alterar o nome do esquema usado para UserViews definindo o UserViewsSchemaName propriedade.

Trabalhando com Exibições Definidas pelo Usuário

Por exemplo, uma instrução SQL com uma Visualização Definida pelo Usuário chamada UserViews.RCustomers lista apenas clientes em Raleigh:

SELECT * FROM Customers WHERE City = 'Raleigh';

Exemplo de consultar ao driver:

SELECT * FROM UserViews.RCustomers WHERE Status = 'Active';

Resultando na consultar efetiva à fonte:

SELECT * FROM Customers WHERE City = 'Raleigh' AND Status = 'Active';

Esse é um exemplo muito simples de uma consultar a uma exibição definida pelo usuário que é efetivamente uma combinação da consultar de exibição e da definição de exibição. É possível compor essas consultas em padrões muito mais complexos. Todas as operações SQL são permitidas em ambas as consultas e são combinadas quando apropriado.

Configuração SSL

Personalizando a Configuração SSL

Por padrão, o conector tenta negociar SSL/TLS verificando o certificado do servidor em relação ao armazenamento de certificados confiáveis do sistema.

Para especificar outro certificado, consulte o SSLServerCert propriedade para os formatos disponíveis para fazê-lo.

Certificados SSL do Cliente

O conector Cassandra também oferece suporte à configuração de certificados de cliente. Defina o seguinte para se conectar usando um certificado de cliente.

  • SSLClientCert: O nome do armazenamento de certificados para o certificado do cliente.
  • SSLClientCertType: O tipo de armazenamento de chaves que contém o certificado de cliente TLS/SSL.
  • SSLClientCertPassword: A senha para o certificado do cliente TLS/SSL.
  • SSLClientCertSubject: O assunto do certificado de cliente TLS/SSL.

Propriedades de Configurações Avançadas

As propriedades de configurações avançadas são as várias opções que podem ser usadas para estabelecer uma conexão. Esta seção fornece uma lista completa das opções que você pode configurar. Clique nos links para mais detalhes.

Autenticação

Propriedade Descrição
AuthScheme O esquema usado para autenticação. As entradas aceitas são Basic, DSE, Kerberos e LDAP.
Server O nome do hospedar ou endereço IP do servidor que hospeda o banco de dados Cassandra.
Port A porta para o banco de dados Cassandra.
LDAPServer O nome do hospedar ou endereço IP do servidor LDAP.
User A conta de usuário do Cassandra usada para autenticação.
Password A senha usada para autenticar o usuário.
LDAPPort A porta para o servidor LDAP.
Database O nome do keyspace Cassandra.
DefaultLDAPUser O usuário LDAP padrão usado para conectar e se comunicar com o servidor, deve ser definido se o servidor LDAP não permitir ligação anônima.
LDAPPassword A senha do usuário LDAP padrão. Deve ser definido se o servidor LDAP não permitir ligação anônima.
SearchBase A base de pesquisa para seu servidor LDAP, usada para pesquisar usuários.
SearchFilter O filtro de pesquisa para procurar nomes de usuário no LDAP. A configuração padrão é (uid=). Ao usar o Active Directory, defina o filtro como (sAMAccountName=).
UseSSL Este campo define se o SSL está ativado.

Kerberos

Propriedade Descrição
KerberosKDC O serviço Kerberos Key Distribution Center (KDC) usado para autenticar o usuário.
KerberosRealm O Kerberos Realm usado para autenticar o usuário.
KerberosSPN O nome principal do serviço (SPN) para o controlador de domínio Kerberos.
KerberosKeytabFile O arquivo Keytab contendo seus pares de principais Kerberos e chaves criptografadas.
KerberosServiceRealm A região Kerberos do serviço.
KerberosServiceKDC O Kerberos KDC do serviço.
KerberosTicketCache O caminho de arquivo completo para um arquivo de cache de credenciais do MIT Kerberos.

SSL

Propriedade Descrição
SSLClientCert O armazenamento de certificados de cliente TLS/SSL para autenticação de cliente SSL (SSL bidirecional).
SSLClientCertType O tipo de armazenamento de chaves que contém o certificado do cliente TLS/SSL.
SSLClientCertPassword A senha para o certificado de cliente TLS/SSL.
SSLClientCertSubject O assunto do certificado de cliente TLS/SSL.
SSLServerCert O certificado a ser aceito do servidor ao conectar usando TLS/SSL.

SSH

Propriedade Descrição
SSHAuthMode O método de autenticação a ser usado para fazer logon em um servidor SFTP.
SSHClientCert Um certificado a ser usado para autenticar o usuário.
SSHClientCertPassword A senha do certificado SSHClientCert, se houver.
SSHClientCertSubject O assunto do certificado do cliente SSH.
SSHClientCertType O tipo de certificado SSHClientCert.
SSHServer O servidor SSH.
SSHPort A porta SSH.
SSHUser O usuário SSH.
SSHPassword A senha SSH.
SSHServerFingerprint A impressão digital do servidor SSH.
UseSSH Se deve encapsular a conexão do Cassandra por SSH. Use SSH.

Esquema

Propriedade Descrição
Location Um caminho para o diretório que contém os arquivos de esquema que definem tabelas, exibições e procedimentos armazenados.
BrowsableSchemas Essa propriedade restringe os esquemas relatados a um subconjunto dos esquemas disponíveis. Por exemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC.
Tables Esta propriedade restringe as tabelas reportadas a um subconjunto das tabelas disponíveis. Por exemplo, Tables=TableA, TableB, TableC.
Views Restringe as exibições relatadas a um subconjunto das tabelas disponíveis. Por exemplo, Views=ViewA, ViewB, ViewC.

Diversos

Propriedade Descrição
AggregationsSupported Se deve ou não dar suporte a agregações no servidor Cassandra. Observe que nas consultas ao provedor, você deve usar aspas simples para definir strings.
AllowFiltering Quando verdadeiro, as consultas de desempenho lento são processadas no servidor.
CaseSensitivity Ative a diferenciação de maiúsculas e minúsculas para o envio do CQL ao servidor; se definido como True, os identificadores no CQL serão colocados entre aspas duplas.
ConsistencyLevel O nível de consistência determina quantas réplicas dos dados com os quais você está interagindo precisam responder para que a consultar seja considerada um sucesso.
FlattenArrays Por padrão, arrays aninhados são retornados como strings de JSON. A propriedade FlattenArrays pode ser usada para nivelar os elementos de matrizes aninhadas em colunas próprias. Defina FlattenArrays para o número de elementos que você deseja retornar de matrizes aninhadas.
FlattenObjects Defina FlattenObjects como true para nivelar as propriedades do objeto em colunas próprias. Caso contrário, os objetos aninhados em arrays são retornados como strings de JSON.
MaxRows Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.
NullToUnset Use unset em vez de NULL na consultar CQL ao executar operações INSERT.
Other Essas propriedades ocultas são usadas apenas em casos de uso específicos.
Pagesize O número máximo de resultados a serem retornados por página do Cassandra.
PseudoColumns Esta propriedade indica se deve ou não incluir pseudocolunas como colunas na tabela.
QueryPassthrough Esta opção passa a consultar para o servidor Cassandra como está.
RowScanDepth O número máximo de linhas a serem verificadas para procurar as colunas disponíveis em uma tabela.
Timeout O valor em segundos até que o erro de timeout seja lançado, cancelando a operação.
UseJsonFormat Se deve enviar e retornar a codificação JSON para tipos de dados CQL.
VarintToString Mapeie Cassandra VARINT para o valor String.

Autenticação

Esta seção fornece uma lista completa de propriedades de autenticação que você pode configurar.

Propriedade Descrição
AuthScheme O esquema usado para autenticação. As entradas aceitas são Basic, DSE, Kerberos e LDAP.
Server O nome do hospedar ou endereço IP do servidor que hospeda o banco de dados Cassandra.
Port A porta para o banco de dados Cassandra.
LDAPServer O nome do hospedar ou endereço IP do servidor LDAP.
User A conta de usuário do Cassandra usada para autenticação.
Password A senha usada para autenticar o usuário.
LDAPPort A porta para o servidor LDAP.
Database O nome do keyspace Cassandra.
DefaultLDAPUser O usuário LDAP padrão usado para conectar e se comunicar com o servidor, deve ser definido se o servidor LDAP não permitir ligação anônima.
LDAPPassword A senha do usuário LDAP padrão. Deve ser definido se o servidor LDAP não permitir ligação anônima.
SearchBase A base de pesquisa para seu servidor LDAP, usada para pesquisar usuários.
SearchFilter O filtro de pesquisa para procurar nomes de usuário no LDAP. A configuração padrão é (uid=). Ao usar o Active Directory, defina o filtro como (sAMAccountName=).
UseSSL Este campo define se o SSL está ativado.

AuthScheme

O esquema usado para autenticação. As entradas aceitas são Basic, DSE, Kerberos e LDAP.

Valores Possíveis

Basic, DSE, Kerberos, LDAP

Tipo de Dados

string

Valor Padrão

"Basic"

Observações

Defina esta propriedade para autenticar para instâncias Cassandra de software livre ou DataStax Enterprise (DSE).

Juntamente com Senha e Usuário, esse campo é usado para autenticar no servidor. Básico é a opção padrão. Use as seguintes opções para selecionar seu esquema de autenticação:

  • Básico: defina para autenticar com credenciais de login e autenticação integrada do Cassandra.
  • DSE: Defina para autenticar com credenciais de login e o DSE Unified Authenticator.
  • Kerberos: Defina para usar o Kerberos para autenticação.
  • LDAP: Defina para usar o LDAP para autenticação.

Consulte a seção Introdução para obter guias sobre o uso de cada método de autenticação.

Servidor

O nome do hospedar ou endereço IP do servidor que hospeda o banco de dados Cassandra.

Tipo de Dados

string

Valor Padrão

""

Observações

O nome do hospedar ou endereço IP do servidor que hospeda o banco de dados Cassandra. Para se conectar a um sistema distribuído, você pode definir Server a uma lista separada por vírgulas de servidores e portas, separados por dois pontos. Você também precisará definir ConsistencyLevel.

Observe que você deve especificar todos os servidores necessários para o nível de consistência selecionado.

Porta

A porta para o banco de dados Cassandra.

Tipo de Dados

string

Valor Padrão

"9042"

Observações

A porta para o banco de dados Cassandra.

Servidor LDAP

O nome do hospedar ou endereço IP do servidor LDAP.

Tipo de Dados

string

Valor Padrão

""

Observações

O nome do hospedar ou endereço IP do servidor LDAP.

Do Utilizador

A conta de usuário do Cassandra usada para autenticação.

Tipo de Dados

string

Valor Padrão

""

Observações

Juntamente com Senha, este campo é usado para autenticação no servidor Cassandra.

Senha

A senha usada para autenticar o usuário.

Tipo de Dados

string

Valor Padrão

""

Observações

O usuário e Password são usados juntos para autenticar com o servidor.

LDAPPort

A porta para o servidor LDAP.

Tipo de Dados

string

Valor Padrão

"389"

Observações

A porta para o servidor LDAP.

Base de Dados

O nome do keyspace Cassandra.

Tipo de Dados

string

Valor Padrão

""

Observações

O nome do keyspace do Cassandra que contém as tabelas.

DefaultLDAPUser

O usuário LDAP padrão usado para conectar e se comunicar com o servidor, deve ser definido se o servidor LDAP não permitir ligação anônima.

Tipo de Dados

string

Valor Padrão

""

Observações

Especifique o usuário LDAP padrão caso o servidor LDAP não permita login anônimo.

Senha LDAP

A senha do usuário LDAP padrão. Deve ser definido se o servidor LDAP não permitir ligação anônima.

Tipo de Dados

string

Valor Padrão

""

Observações

Especifique a senha do usuário LDAP padrão.

Base de Pesquisa

A base de pesquisa para seu servidor LDAP, usada para pesquisar usuários.

Tipo de Dados

string

Valor Padrão

""

Observações

A base de pesquisa para seu servidor LDAP, usada para pesquisar usuários.

Filtro de Pesquisa

O filtro de pesquisa para procurar nomes de usuário no LDAP. A configuração padrão é (uid=). Ao usar o Active Directory, defina o filtro como (sAMAccountName=).

Tipo de Dados

string

Valor Padrão

"uid="

Observações

O filtro de pesquisa para procurar nomes de usuário no LDAP. A configuração padrão é (uid=).

Usar SSL

Este campo define se o SSL está ativado.

Tipo de Dados

bool

Valor Padrão

false

Observações

Este campo define se o conector tentará negociar conexões TLS/SSL com o servidor. Por padrão, o conector verifica o certificado do servidor em relação ao armazenamento de certificados confiáveis do sistema. Para especificar outro certificado, defina SSLServerCert.

Kerberos

Esta seção fornece uma lista completa das propriedades do Kerberos que você pode configurar.

Propriedade Descrição
KerberosKDC O serviço Kerberos Key Distribution Center (KDC) usado para autenticar o usuário.
KerberosRealm O Kerberos Realm usado para autenticar o usuário.
KerberosSPN O nome principal do serviço (SPN) para o controlador de domínio Kerberos.
KerberosKeytabFile O arquivo Keytab contendo seus pares de principais Kerberos e chaves criptografadas.
KerberosServiceRealm A região Kerberos do serviço.
KerberosServiceKDC O Kerberos KDC do serviço.
KerberosTicketCache O caminho de arquivo completo para um arquivo de cache de credenciais do MIT Kerberos.

KerberosKDCName

O serviço Kerberos Key Distribution Center (KDC) usado para autenticar o usuário.

Tipo de Dados

string

Valor Padrão

""

Observações

As propriedades Kerberos são usadas ao usar SPNEGO ou Autenticação do Windows. O conector solicitará tíquetes de sessão e chaves de sessão temporárias do serviço Kerberos KDC. O serviço Kerberos KDC é colocado convencionalmente com o controlador de domínio.

Se o Kerberos KDC não for especificado, o conector tentará detectar essas propriedades automaticamente nos seguintes locais:

  • KRB5 Config File (krb5.ini/krb5.conf): Se a variável de ambiente KRB5_CONFIG estiver definida e o arquivo existir, o conector obterá o KDC do arquivo especificado. Caso contrário, ele tentará ler a partir do local padrão do MIT com base no sistema operacional: C:\ProgramData\MIT\Kerberos5\krb5.ini (Windows) ou /etc/krb5.conf (Linux)
  • Java System Properties: Usando as propriedades do sistema java.security.krb5.realm e java.security.krb5.kdc.
  • Domain Name and Host: O conector inferirá o Kerberos Realm e Kerberos KDC do nome de domínio configurado e do hospedar como último recurso.

Observação: A autenticação do Windows é suportada apenas no JRE 1.6 e superior.

KerberosRealmName

O Kerberos Realm usado para autenticar o usuário.

Tipo de Dados

string

Valor Padrão

""

Observações

As propriedades Kerberos são usadas ao usar SPNEGO ou Autenticação do Windows. O Kerberos Realm é usado para autenticar o usuário com o Kerberos Key Distribution Service (KDC). O Kerberos Realm pode ser configurado por um administrador para ser qualquer string, mas convencionalmente é baseado no nome de domínio.

Se Kerberos Realm não for especificado, o conector tentará detectar essas propriedades automaticamente nos seguintes locais:

  • KRB5 Config File (krb5.ini/krb5.conf): Se a variável de ambiente KRB5_CONFIG estiver definida e o arquivo existir, o conector obterá o domínio padrão do arquivo especificado. Caso contrário, ele tentará ler a partir do local padrão do MIT com base no sistema operacional: C:\ProgramData\MIT\Kerberos5\krb5.ini (Windows) ou /etc/krb5.conf (Linux)
  • Java System Properties: Usando as propriedades do sistema java.security.krb5.realm e java.security.krb5.kdc.
  • Domain Name and Host: O conector inferirá o Kerberos Realm e o Kerberos KDC do nome de domínio configurado pelo usuário e do hospedar como último recurso. Isso pode funcionar em alguns ambientes Windows.

Observação: A autenticação baseada em Kerberos é suportada apenas no JRE 1.6 e superior.

KerberosSPN

O nome principal do serviço (SPN) para o controlador de domínio Kerberos.

Tipo de Dados

string

Valor Padrão

""

Observações

Se o SPN no controlador de domínio Kerberos não for igual ao URL para o qual você está se autenticando, use esta propriedade para definir o SPN.

KerberosKeytabFile

O arquivo Keytab contendo seus pares de principais Kerberos e chaves criptografadas.

Tipo de Dados

string

Valor Padrão

""

Observações

O arquivo Keytab contendo seus pares de principais Kerberos e chaves criptografadas.

KerberosServiceRealmName

A região Kerberos do serviço.

Tipo de Dados

string

Valor Padrão

""

Observações

O KerberosServiceRealm é a especificação do domínio Kerberos do serviço ao usar a autenticação Kerberos entre domínios.

Na maioria dos casos, um único domínio e uma máquina KDC são usados para executar a autenticação Kerberos e essa propriedade não é necessária.

Essa propriedade está disponível para configurações complexas em que um domínio e uma máquina KDC diferentes são usados para obter um tíquete de autenticação (solicitação AS) e um tíquete de serviço (solicitação TGS).

KerberosServiceKDC

O Kerberos KDC do serviço.

Tipo de Dados

string

Valor Padrão

""

Observações

O KerberosServiceKDC é usado para especificar o serviço Kerberos KDC ao usar a autenticação Kerberos cross-realm.

Na maioria dos casos, um único domínio e uma máquina KDC são usados para executar a autenticação Kerberos e essa propriedade não é necessária.

Essa propriedade está disponível para configurações complexas em que um domínio e uma máquina KDC diferentes são usados para obter um tíquete de autenticação (solicitação AS) e um tíquete de serviço (solicitação TGS).

KerberosTicketCache

O caminho de arquivo completo para um arquivo de cache de credenciais do MIT Kerberos.

Tipo de Dados

string

Valor Padrão

""

Observações

Esta propriedade pode ser configurada se você deseja usar um arquivo de cache de credencial que foi criado usando o MIT Kerberos Ticket Manager ou o comando kinit.

SSL

Esta seção fornece uma lista completa de propriedades SSL que você pode configurar.

Propriedade Descrição
SSLClientCert O armazenamento de certificados de cliente TLS/SSL para autenticação de cliente SSL (SSL bidirecional).
SSLClientCertType O tipo de armazenamento de chaves que contém o certificado do cliente TLS/SSL.
SSLClientCertPassword A senha para o certificado de cliente TLS/SSL.
SSLClientCertSubject O assunto do certificado de cliente TLS/SSL.
SSLServerCert O certificado a ser aceito do servidor ao conectar usando TLS/SSL.

SSLClientCert

O armazenamento de certificados de cliente TLS/SSL para autenticação de cliente SSL (SSL bidirecional).

Tipo de Dados

string

Valor Padrão

""

Observações

O nome do armazenamento de certificados para o certificado do cliente.

O SSLClientCertType campo especifica o tipo de armazenamento de certificado especificado por SSLClientCert. Se o armazenamento estiver protegido por senha, especifique a senha em SSLClientCertPassword.

SSLClientCert é usado em conjunto com o SSLClientCertSubject para especificar os certificados do cliente. Se SSLClientCert tem um valor e SSLClientCertSubject for definido, uma pesquisa por um certificado será iniciada. Consulte SSLClientCertSubject Para maiores informações.

As designações de armazenamentos de certificados dependem da plataforma.

A seguir estão as designações dos armazenamentos de certificados de Usuário e Máquina mais comuns no Windows:

Propriedade Descrição
MY Um armazenamento de certificados que contém certificados pessoais com suas chaves privadas associadas.
CA Certificados de autoridade certificadora.
ROOT Certificados raiz.
SPC Certificados de editor de software.

Em Java, o armazenamento de certificados normalmente é um arquivo contendo certificados e chaves privadas opcionais.

Quando o tipo de armazenamento de certificado for PFXFile, essa propriedade deverá ser configurada para o nome do arquivo. Quando o tipo é PFXBlob, a propriedade deve ser configurada para o conteúdo binário de um arquivo PFX (por exemplo, armazenamento de certificados PKCS12).

SSLClientCertType

O tipo de armazenamento de chaves que contém o certificado do cliente TLS/SSL.

Valores Possíveis

USER, MACHINE, PFXFILE, PFXBLOB, JKSFILE, JKSBLOB, PEMKEY_FILE, PEMKEY_BLOB, PUBLIC_KEY_FILE, PUBLIC_KEY_BLOB, SSHPUBLIC_KEY_FILE, SSHPUBLIC_KEY_BLOB, P7BFILE, PPKFILE, XMLFILE, XMLBLOB

Tipo de Dados

string

Valor Padrão

"USER"

Observações

Esta propriedade pode assumir um dos seguintes valores:

Propriedade Descrição
USER - default Para Windows, isso especifica que o armazenamento de certificados é um armazenamento de certificados pertencente ao usuário atual. Observe que esse tipo de armazenamento não está disponível em Java.
MACHINE Para Windows, isso especifica que o armazenamento de certificados é um armazenamento de máquina. Observe que esse tipo de armazenamento não está disponível em Java.
PFXFILE O armazenamento de certificados é o nome de um arquivo PFX (PKCS12) que contém certificados.
PFXBLOB O armazenamento de certificados é uma string (codificada em base 64) que representa um armazenamento de certificados no formato PFX (PKCS12).
JKSFILE O armazenamento de certificados é o nome de um arquivo de armazenamento de chaves Java (JKS) que contém certificados. Observe que esse tipo de armazenamento está disponível apenas em Java.
JKSBLOB O armazenamento de certificados é uma string (codificada em base 64) que representa um armazenamento de certificados no formato JKS. Observe que esse tipo de armazenamento está disponível apenas em Java.
PEMKEY_FILE O armazenamento de certificados é o nome de um arquivo codificado por PEM que contém uma chave privada e um certificado opcional.
PEMKEY_BLOB O armazenamento de certificados é uma string (codificada em base64) que contém uma chave privada e um certificado opcional.
PUBLIC_KEY_FILE O armazenamento de certificados é o nome de um arquivo que contém um certificado de chave pública codificado por PEM ou DER.
PUBLIC_KEY_BLOB O armazenamento de certificados é uma string (codificada em base 64) que contém um certificado de chave pública codificado em PEM ou DER.
SSHPUBLIC_KEY_FILE O armazenamento de certificados é o nome de um arquivo que contém uma chave pública de estilo SSH.
SSHPUBLIC_KEY_BLOB O armazenamento de certificados é uma string (codificada em base 64) que contém uma chave pública de estilo SSH.
P7BFILE O armazenamento de certificados é o nome de um arquivo PKCS7 contendo certificados.
PPKFILE O armazenamento de certificados é o nome de um arquivo que contém uma chave privada PuTTY (PPK).
XMLFILE O armazenamento de certificados é o nome de um arquivo que contém um certificado no formato XML.
XMLBLOB O armazenamento de certificados é uma string que contém um certificado no formato XML.

SSLClientCertPassword

A senha para o certificado de cliente TLS/SSL.

Tipo de Dados

string

Valor Padrão

""

Observações

Se o armazenamento de certificados for de um tipo que requer uma senha, essa propriedade será usada para especificar essa senha para abrir o armazenamento de certificados.

SSLClientCertSubject

O assunto do certificado de cliente TLS/SSL.

Tipo de Dados

string

Valor Padrão

"\*"

Observações

Ao carregar um certificado, o assunto é usado para localizar o certificado na loja.

Se uma correspondência exata não for encontrada, a loja é pesquisada em busca de assuntos que contenham o valor da propriedade. Se uma correspondência ainda não for encontrada, a propriedade será definida como uma string vazia e nenhum certificado será selecionado.

O valor especial "*" seleciona o primeiro certificado no armazenamento de certificados.

O assunto do certificado é uma lista separada por vírgulas de campos e valores de nomes distintos. Por exemplo, "CN=www.server.com, OU=test, C=US, E=support@company.com". Os campos comuns e seus significados são mostrados abaixo.

Campo Significado
CN Nome comum. Geralmente, é um nome de hospedar como www.server.com.
O Organização
OU Unidade Organizacional
L Localidade
S Estado
C País
E Endereço E-mail

Se um valor de campo contiver uma vírgula, ela deverá ser colocada entre aspas.

SSLServerCert

O certificado a ser aceito do servidor ao conectar usando TLS/SSL.

Tipo de Dados

string

Valor Padrão

""

Observações

Se estiver usando uma conexão TLS/SSL, esta propriedade pode ser usada para especificar o certificado TLS/SSL a ser aceito do servidor. Qualquer outro certificado que não seja confiável para a máquina é rejeitado.

Esta propriedade pode assumir as seguintes formas:

Descrição Exemplo
Um certificado PEM completo (exemplo abreviado para concisão) -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----
Um caminho para um arquivo local contendo o certificado C:\cert.cer
A chave pública (exemplo abreviado para concisão) -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY-----
O Thumbprint MD5 (os valores hexadecimais também podem ser separados por espaço ou dois-pontos) ecadbdda5a1529c58a1e9e09828d70e4
A impressão digital SHA1 (os valores hexadecimais também podem ser separados por espaço ou dois-pontos) 34a929226ae0819f2ec14b4a3d904f801cbb150d

Se não for especificado, qualquer certificado confiável pela máquina será aceito.

Os certificados são validados como confiáveis pela máquina com base no armazenamento confiável do sistema. O armazenamento confiável usado é o valor 'javax.net.ssl.trustStore' especificado para o sistema. Se nenhum valor for especificado para esta propriedade, o armazenamento confiável padrão do Java será usado (por exemplo, JAVA_HOME\lib\security\cacerts).

Use '*' para indicar a aceitação de todos os certificados. Observe que isso não é recomendado devido a questões de segurança.

SSH

Esta seção fornece uma lista completa de propriedades SSH que você pode configurar.

Propriedade Descrição
SSHAuthMode O método de autenticação a ser usado para fazer logon em um servidor SFTP.
SSHClientCert Um certificado a ser usado para autenticar o usuário.
SSHClientCertPassword A senha do certificado SSHClientCert, se houver.
SSHClientCertSubject O assunto do certificado do cliente SSH.
SSHClientCertType O tipo de certificado SSHClientCert.
SSHServer O servidor SSH.
SSHPort A porta SSH.
SSHUser O usuário SSH.
SSHPassword A senha SSH.
SSHServerFingerprint A impressão digital do servidor SSH.
UseSSH Se deve encapsular a conexão do Cassandra por SSH. Use SSH.

SSHAuthMode

O método de autenticação a ser usado para fazer logon em um servidor SFTP.

Valores Possíveis

None, Password, Public_Key

Tipo de Dados

string

Valor Padrão

"Password"

Observações
  • Nenhum: Nenhuma autenticação será realizada. O atual Usuário é ignorado e a conexão será registrada como anônima.
  • Senha: O conector usará os valores de Usuário e senha para autenticar o usuário.
  • Public_Key: O conector usará os valores de User e SSHClientCert para autenticar o usuário. SSHClientCert deve ter uma chave privada disponível para que esse método de autenticação seja bem-sucedido.

SSHClientCert

Um certificado a ser usado para autenticar o usuário.

Tipo de Dados

string

Valor Padrão

""

Observações

Para usar a autenticação de chave pública, SSHClientCert deve conter um certificado com uma chave privada válida. O valor da chave pública do certificado é enviado ao servidor junto com uma assinatura produzida usando a chave privada. O servidor verificará primeiro se os valores da chave pública correspondem ao que é conhecido pelo usuário e, em seguida, tentará usar esses valores para verificar a assinatura.

O SSHClientCertType campo especifica o tipo de armazenamento de certificado especificado por SSHClientCert. Se a loja estiver protegida por senha, especifique a senha em SSHClientCertPassword.

SSHClientCert é usado em conjunto com o SSHClientCertSubject para especificar os certificados do cliente. Se SSHClientCert tem um valor e SSHClientCertSubject for definido, uma pesquisa por um certificado será iniciada. Consulte o SSHClientCertSubject para obter detalhes.

As designações de armazenamentos de certificados dependem da plataforma.

A seguir estão as designações dos armazenamentos de certificados de Usuário e Máquina mais comuns no Windows:

Propriedade Descrição
MY Um armazenamento de certificados que contém certificados pessoais com suas chaves privadas associadas.
CA Certificados de autoridade certificadora.
ROOT Certificados raiz.
SPC Certificados de editor de software.

Em Java, o armazenamento de certificados normalmente é um arquivo contendo certificados e chaves privadas opcionais.

Quando o tipo de armazenamento de certificado for PFXFile, essa propriedade deverá ser configurada para o nome do arquivo. Quando o tipo é PFXBlob, a propriedade deve ser configurada para o conteúdo binário de um arquivo PFX (ou seja, armazenamento de certificados PKCS12).

SSHClientCertPassword

A senha do certificado SSHClientCert, se houver.

Tipo de Dados

string

Valor Padrão

""

Observações

Esta propriedade é usada apenas ao autenticar em servidores SFTP com SSHAuthMode definido como PublicKey e SSHClientCert definido como uma chave privada.

SSHClientCertSubject

O assunto do certificado do cliente SSH.

Tipo de Dados

string

Valor Padrão

"\*"

Observações

Ao carregar um certificado, o assunto é usado para localizar o certificado na loja.

Se uma correspondência exata não for encontrada, a loja é pesquisada em busca de assuntos que contenham o valor da propriedade.

Se uma correspondência ainda não for encontrada, a propriedade será definida como uma string vazia e nenhum certificado será selecionado.

O valor especial "*" seleciona o primeiro certificado no armazenamento de certificados.

O assunto do certificado é uma lista separada por vírgulas de campos e valores de nomes distintos. Por exemplo, "CN=www.server.com, OU=test, C=US, E=support@jitterbit.com". Os campos comuns e seus significados são exibidos abaixo.

Campo Significado
CN Nome comum. Geralmente, é um nome de hospedar como www.server.com.
O Organização
OU Unidade Organizacional
L Localidade
S Estado
C País
E Endereço E-mail

Se um valor de campo contiver uma vírgula, ela deverá ser colocada entre aspas.

SSHClientCertType

O tipo de certificado SSHClientCert.

Valores Possíveis

USER, MACHINE, PFXFILE, PFXBLOB, JKSFILE, JKSBLOB, PEMKEY_FILE, PEMKEY_BLOB, PUBLIC_KEY_FILE, PUBLIC_KEY_BLOB, SSHPUBLIC_KEY_BLOB, P7BFILE, P7BBLOB, SSHPUBLIC_KEY_FILE, PPKFILE, PPKBLOB, XMLFILE, XMLBLOB

Tipo de Dados

string

Valor Padrão

"PUBLIC_KEY_FILE"

Observações

O tipo de SSHClientCert certificado. Esta propriedade pode assumir um dos seguintes valores:

Propriedade Descrição
USER Para Windows, isso especifica que o armazenamento de certificados é um armazenamento de certificados pertencente ao usuário atual. Nota: este tipo de loja não está disponível em Java.
MACHINE Para Windows, isso especifica que o armazenamento de certificados é um armazenamento de máquina. Nota: este tipo de loja não está disponível em Java.
PFXFILE O armazenamento de certificados é o nome de um arquivo PFX (PKCS12) que contém certificados.
PFXBLOB O armazenamento de certificados é uma string (binária ou codificada em base 64) que representa um armazenamento de certificados no formato PFX (PKCS12).
JKSFILE O armazenamento de certificados é o nome de um arquivo Java Key Store (JKS) que contém certificados. Nota: este tipo de loja só está disponível em Java.
JKSBLOB O armazenamento de certificados é uma sequência (binária ou codificada em base 64) que representa um armazenamento de certificados no formato Java Key Store (JKS). Nota: este tipo de loja só está disponível em Java.
PEMKEY_FILE O armazenamento de certificados é o nome de um arquivo codificado por PEM que contém uma chave privada e um certificado opcional.
PEMKEY_BLOB O armazenamento de certificados é uma string (binária ou codificada em base 64) que contém uma chave privada e um certificado opcional.
PUBLIC_KEY_FILE O armazenamento de certificados é o nome de um arquivo que contém um certificado de chave pública codificado por PEM ou DER.
PUBLIC_KEY_BLOB O armazenamento de certificados é uma string (binária ou codificada em base 64) que contém um certificado de chave pública codificado por PEM ou DER.
SSHPUBLIC_KEY_BLOB O armazenamento de certificados é uma string (binária ou codificada em base 64) que contém uma chave pública de estilo SSH.
P7BFILE O armazenamento de certificados é o nome de um arquivo PKCS7 contendo certificados.
P7BBLOB O armazenamento de certificados é uma string (binária) que representa um armazenamento de certificados no formato PKCS7.
SSHPUBLIC_KEY_FILE O armazenamento de certificados é o nome de um arquivo que contém uma chave pública de estilo SSH.
PPKFILE O armazenamento de certificados é o nome de um arquivo que contém um PPK (PuTTY Private Key).
PPKBLOB O armazenamento de certificados é uma string (binária) que contém um PPK (PuTTY Private Key).
XMLFILE O armazenamento de certificados é o nome de um arquivo que contém um certificado no formato XML.
XMLBLOB O armazenamento de certificados é uma string que contém um certificado no formato XML.

Servidor SSH

O servidor SSH.

Tipo de Dados

string

Valor Padrão

""

Observações

O servidor SSH.

SSHPort

A porta SSH.

Tipo de Dados

string

Valor Padrão

"22"

Observações

A porta SSH.

Usuário SSH

O usuário SSH.

Tipo de Dados

string

Valor Padrão

""

Observações

O usuário SSH.

Senha SSH

A senha SSH.

Tipo de Dados

string

Valor Padrão

""

Observações

A senha SSH.

Impressão Digital do Servidor SSH

A impressão digital do servidor SSH.

Tipo de Dados

string

Valor Padrão

""

Observações

A impressão digital do servidor SSH.

Usar SSH

Se deve encapsular a conexão do Cassandra por SSH. Use SSH.

Tipo de Dados

bool

Valor Padrão

false

Observações

Por padrão, o conector tentará se conectar diretamente ao Cassandra. Quando esta opção estiver habilitada, o conector estabelecerá uma conexão SSH com o SSHServer e encapsular a conexão para Cassandra por meio dele.

Esquema

Esta seção fornece uma lista completa de propriedades de esquema que você pode configurar.

Propriedade Descrição
Location Um caminho para o diretório que contém os arquivos de esquema que definem tabelas, exibições e procedimentos armazenados.
BrowsableSchemas Essa propriedade restringe os esquemas relatados a um subconjunto dos esquemas disponíveis. Por exemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC.
Tables Esta propriedade restringe as tabelas reportadas a um subconjunto das tabelas disponíveis. Por exemplo, Tables=TableA, TableB, TableC.
Views Restringe as exibições relatadas a um subconjunto das tabelas disponíveis. Por exemplo, Views=ViewA, ViewB, ViewC.

Localização

Um caminho para o diretório que contém os arquivos de esquema que definem tabelas, exibições e procedimentos armazenados.

Tipo de Dados

string

Valor Padrão

"%APPDATA%\\\Cassandra Data Provider\\Schema"

Observações

O caminho para um diretório que contém os arquivos de esquema para o conector (arquivos .rsd para tabelas e exibições, arquivos .rsb para procedimentos armazenados). A localização da pasta pode ser um caminho relativo a partir da localização do executável. O Location a propriedade só é necessária se você quiser personalizar definições (por exemplo, alterar um nome de coluna, ignorar uma coluna e assim por diante) ou estender o modelo de dados com novas tabelas, exibições ou procedimentos armazenados.

Se não for especificado, o local padrão é "%APPDATA%\\Cassandra Data Provider\Schema" com %APPDATA% sendo definido para o diretório de configuração do usuário:

Plataforma %APPDATA%
Windows O valor da variável de ambiente APPDATA
Mac ~/Biblioteca/Suporte de aplicativos
Linux ~/.config

Esquemas Navegáveis

Essa propriedade restringe os esquemas relatados a um subconjunto dos esquemas disponíveis. Por exemplo, BrowsableSchemas=SchemaA,SchemaB,SchemaC.

Tipo de Dados

string

Valor Padrão

""

Observações

Listar os esquemas de bancos de dados pode ser caro. Fornecer uma lista de esquemas na string de conexão melhora o desempenho.

Tabelas

Esta propriedade restringe as tabelas reportadas a um subconjunto das tabelas disponíveis. Por exemplo, Tabelas=TabelaA,TabelaB,TabelaC.

Tipo de Dados

string

Valor Padrão

""

Observações

Listar as tabelas de alguns bancos de dados pode ser caro. Fornecer uma lista de tabelas na string de conexão melhora o desempenho do conector.

Essa propriedade também pode ser usada como uma alternativa para listar automaticamente as exibições se você já souber com quais deseja trabalhar e, caso contrário, haveria muitos para trabalhar.

Especifique as tabelas que deseja em uma lista separada por vírgulas. Cada tabela deve ser um identificador SQL válido com quaisquer caracteres especiais escapados usando colchetes, aspas duplas ou acentos graves. Por exemplo, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.

Observe que, ao conectar-se a uma fonte de dados com vários esquemas ou catálogos, você precisará fornecer o nome totalmente qualificado da tabela nesta propriedade, como no último exemplo aqui, para evitar ambigüidade entre tabelas que existem em vários catálogos ou esquemas.

Visualizações

Restringe as visualizações relatadas a um subconjunto das tabelas disponíveis. Por exemplo, Views=ViewA,ViewB,ViewC.

Tipo de Dados

string

Valor Padrão

""

Observações

Listar as exibições de alguns bancos de dados pode ser caro. Fornecer uma lista de exibições na string de conexão melhora o desempenho do conector.

Essa propriedade também pode ser usada como uma alternativa para listar automaticamente as exibições se você já souber com quais deseja trabalhar e, caso contrário, haveria muitos para trabalhar.

Especifique as exibições desejadas em uma lista separada por vírgulas. Cada exibição deve ser um identificador SQL válido com quaisquer caracteres especiais escapados usando colchetes, aspas duplas ou acentos graves. Por exemplo, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.

Observe que, ao conectar-se a uma fonte de dados com vários esquemas ou catálogos, você precisará fornecer o nome totalmente qualificado da tabela nesta propriedade, como no último exemplo aqui, para evitar ambigüidade entre tabelas que existem em vários catálogos ou esquemas.

Diversos

Esta seção fornece uma lista completa de diversas propriedades que você pode configurar.

Propriedade Descrição
AggregationsSupported Se deve ou não dar suporte a agregações no servidor Cassandra. Observe que nas consultas ao provedor, você deve usar aspas simples para definir strings.
AllowFiltering Quando verdadeiro, as consultas de desempenho lento são processadas no servidor.
CaseSensitivity Ative a diferenciação de maiúsculas e minúsculas para o envio do CQL ao servidor; se definido como True, os identificadores no CQL serão colocados entre aspas duplas.
ConsistencyLevel O nível de consistência determina quantas réplicas dos dados com os quais você está interagindo precisam responder para que a consultar seja considerada um sucesso.
FlattenArrays Por padrão, arrays aninhados são retornados como strings de JSON. A propriedade FlattenArrays pode ser usada para nivelar os elementos de matrizes aninhadas em colunas próprias. Defina FlattenArrays para o número de elementos que você deseja retornar de matrizes aninhadas.
FlattenObjects Defina FlattenObjects como true para nivelar as propriedades do objeto em colunas próprias. Caso contrário, os objetos aninhados em arrays são retornados como strings de JSON.
MaxRows Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.
NullToUnset Use unset em vez de NULL na consultar CQL ao executar operações INSERT.
Other Essas propriedades ocultas são usadas apenas em casos de uso específicos.
Pagesize O número máximo de resultados a serem retornados por página do Cassandra.
PseudoColumns Esta propriedade indica se deve ou não incluir pseudocolunas como colunas na tabela.
QueryPassthrough Esta opção passa a consultar para o servidor Cassandra como está.
RowScanDepth O número máximo de linhas a serem verificadas para procurar as colunas disponíveis em uma tabela.
Timeout O valor em segundos até que o erro de timeout seja lançado, cancelando a operação.
UseJsonFormat Se deve enviar e retornar a codificação JSON para tipos de dados CQL.
VarintToString Mapeie Cassandra VARINT para o valor String.

Agregações com Suporte

Se deve ou não dar suporte a agregações no servidor Cassandra. Observe que nas consultas ao provedor, você deve usar aspas simples para definir strings.

Tipo de Dados

bool

Valor Padrão

true

Observações

PermitirFiltragem

Quando verdadeiro, as consultas de desempenho lento são processadas no servidor.

Tipo de Dados

bool

Valor Padrão

false

Observações

O Cassandra, por padrão, não permite a filtragem de consultas que ele prevê que terão problemas de desempenho. Essas consultas incluem filtragem em uma coluna que não é a chave primária. Quando SupportEnhancedSQL estiver ativado, o conector analisa as consultas na memória com o mecanismo SQL, em vez de descarregar o processamento da consultar no banco de dados.

Você pode substituir o comportamento padrão e confiar no servidor para processar essas consultas definindo AllowFiltering para verdadeiro.

Case Sensitivity

Ative a diferenciação de maiúsculas e minúsculas para o envio do CQL ao servidor; se definido como True, os identificadores no CQL serão colocados entre aspas duplas.

Tipo de Dados

bool

Valor Padrão

true

Observações

Por padrão, o SQL não diferencia maiúsculas de minúsculas. No entanto, o Cassandra oferece suporte a nomes de colunas e tabelas que diferenciam maiúsculas de minúsculas. Definir essa propriedade como True permitirá que você recupere tabelas e colunas com base em seus nomes com distinção entre maiúsculas e minúsculas.

Nível de Consistência

O nível de consistência determina quantas réplicas dos dados com os quais você está interagindo precisam responder para que a consultar seja considerada um sucesso.

Valores Possíveis

ONE, TWO, THREE, QUORUM, ALL, LOCAL_QUORUM, EACH_QUORUM, SERIAL, LOCAL_SERIAL, LOCAL_ONE, ANY

Tipo de Dados

string

Valor Padrão

"ONE"

Observações

O nível de consistência determina quantas réplicas dos dados com os quais você está interagindo precisam responder para que a consultar seja considerada um sucesso. Você precisa especificar as réplicas apropriadas no Servidor propriedade.

Abaixo estão os valores possíveis:

  • ANY: Pelo menos uma réplica deve retornar com sucesso em uma operação de gravação. Essa propriedade garante que uma gravação nunca falhe; esse nível de consistência oferece a consistência mais baixa e a disponibilidade mais alta.
  • ALL: Todas as réplicas devem responder. Essa propriedade fornece a maior consistência e a menor disponibilidade.
  • ONE: Pelo menos uma réplica deve responder. Esse é o padrão e adequado para a maioria dos usuários, que normalmente não exigem alta consistência.
  • DOIS: Pelo menos duas réplicas devem responder.
  • TRÊS: Pelo menos três réplicas devem responder.
  • QUORUM: Um quorum de nodos deve responder. As propriedades QUORUM fornecem alta consistência com alguma tolerância a falhas.
  • EACH_QUORUM: Um quorum de nós deve responder onde um quorum é calculado para cada centro de dados. Essa configuração mantém a consistência em cada centro de dados.
  • SERIAL: Um quorum de réplicas executa um algoritmo de consenso para permitir transações leves.
  • LOCAL_ONE: Pelo menos uma réplica no datacenter local deve responder.
  • LOCAL_SERIAL: O algoritmo de consenso é calculado para o centro de dados local.
  • LOCAL_QUORUM: Um quorum de nós deve responder onde o quorum é calculado para o datacenter local.

FlattenArrays

Por padrão, arrays aninhados são retornados como strings de JSON. A propriedade FlattenArrays pode ser usada para nivelar os elementos de matrizes aninhadas em colunas próprias. Defina FlattenArrays para o número de elementos que você deseja retornar de matrizes aninhadas.

Tipo de Dados

string

Valor Padrão

""

Observações

Por padrão, arrays aninhados são retornados como strings de JSON. O FlattenArrays propriedade pode ser usada para nivelar os elementos de arrays aninhados em colunas próprias. Isso é recomendado apenas para arrays que devem ser curtos.

Definir FlattenArrays para o número de elementos que você deseja retornar de arrays aninhados. Os elementos especificados são retornados como colunas. O índice baseado em zero é concatenado ao nome da coluna. Outros elementos são ignorados.

Por exemplo, você pode retornar um número arbitrário de elementos de um array de strings:

["FLOW-MATIC","LISP","COBOL"]

Quando FlattenArrays é definido como 1, a matriz anterior é simplificada na tabela a seguir:

Nome da coluna Valor da coluna
languages_0 FLOW-MATIC

Flatten Objects

Defina FlattenObjects como true para nivelar as propriedades do objeto em colunas próprias. Caso contrário, os objetos aninhados em arrays são retornados como strings de JSON.

Tipo de Dados

bool

Valor Padrão

false

Observações

Definir FlattenObjects para true para achatar as propriedades do objeto em colunas próprias. Caso contrário, os objetos aninhados em arrays são retornados como strings de JSON. O nome da propriedade é concatenado no nome do objeto com um sublinhado para gerar o nome da coluna.

Por exemplo, você pode nivelar os objetos aninhados abaixo no momento da conexão:

[
     { "grade": "A", "score": 2 },
     { "grade": "A", "score": 6 },
     { "grade": "A", "score": 10 },
     { "grade": "A", "score": 9 },
     { "grade": "B", "score": 14 }
]

Quando FlattenObjects é definido como verdadeiro e FlattenArrays é definido como 1, a matriz anterior é simplificada na tabela a seguir:

Nome da coluna Valor da coluna
grades_0_grade A
grades_0_score 2

MaxRows

Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.

Tipo de Dados

int

Valor Padrão

-1

Observações

Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.

NullToUnset

Use unset em vez de NULL na consultar CQL ao executar operações INSERT.

Tipo de Dados

bool

Valor Padrão

false

Observações

No Cassandra 2.2 e superior, ao executar uma consultar INSERT, um valor de parâmetro pode ser definido como não definido. O Cassandra não considera valores de campo não definidos, o que ajuda a evitar tombstones.

Quando valores NULL são inseridos, é possível atingir os limites do limite de desativação, o que faz com que uma exceção seja lançada ao consultar os dados. Definir essa propriedade como true e enviar valores não definidos evita que essas marcas de exclusão sejam criadas.

Observação: esta opção está disponível apenas em operações INSERT, pois o Cassandra não oferece suporte à alteração de valores existentes para não definidos.

Outro

Essas propriedades ocultas são usadas apenas em casos de uso específicos.

Tipo de Dados

string

Valor Padrão

""

Observações

As propriedades listadas abaixo estão disponíveis para casos de uso específicos. Os casos de uso e a funcionalidade normais do driver não devem exigir essas propriedades.

Especifique várias propriedades em uma lista separada por ponto e vírgula.

Integração e Formatação
Propriedade Descrição
DefaultColumnSize Define o comprimento padrão dos campos de string quando a fonte de dados não fornece o comprimento da coluna nos metadados. O valor padrão é 2000. Voltar para o início
ConvertDateTimeToGMT Determina se os valores de data e hora devem ser convertidos em GMT, em vez da hora local da máquina.
RecordToFile=filename Registra a transferência de dados do soquete subjacente para o arquivo especificado.

Tamanho da Página

O número máximo de resultados a serem retornados por página do Cassandra.

Tipo de Dados

int

Valor Padrão

5000

Observações

O Pagesize a propriedade afeta o número máximo de resultados a serem retornados por página do Cassandra. Definir um valor mais alto pode resultar em melhor desempenho ao custo de memória adicional alocada por página consumida.

Pseudocolunas

Esta propriedade indica se deve ou não incluir pseudocolunas como colunas na tabela.

Tipo de Dados

string

Valor Padrão

""

Observações

Essa configuração é particularmente útil no Entity Framework, que não permite definir um valor para uma pseudocoluna, a menos que seja uma coluna de tabela. O valor dessa configuração de conexão está no formato "Table1=Column1, Table1=Column2, Table2=Column3". Você pode usar o caractere "*" para incluir todas as tabelas e todas as colunas; por exemplo, "*=*".

QueryPassthrough

Esta opção passa a consultar para o servidor Cassandra como está.

Tipo de Dados

bool

Valor Padrão

false

Observações

Quando isso é definido, as consultas são passadas diretamente para o Cassandra.

RowScanDepth

O número máximo de linhas a serem verificadas para procurar as colunas disponíveis em uma tabela.

Tipo de Dados

int

Valor Padrão

100

Observações

As colunas em uma tabela devem ser determinadas pela varredura das linhas da tabela. Esse valor determina o número máximo de linhas que serão verificadas.

Definir um valor alto pode diminuir o desempenho. Definir um valor baixo pode impedir que o tipo de dados seja determinado corretamente, especialmente quando houver dados nulos.

Tempo Esgotado

O valor em segundos até que o erro de timeout seja lançado, cancelando a operação.

Tipo de Dados

int

Valor Padrão

60

Observações

Se Timeout = 0, as operações não expiram. As operações são executadas até serem concluídas com êxito ou até encontrarem uma condição de erro.

Se Timeout expira e a operação ainda não está concluída, o conector lança uma exceção.

UseJsonFormat

Se deve enviar e retornar a codificação JSON para tipos de dados CQL.

Tipo de Dados

bool

Valor Padrão

true

Observações

O Cassandra 2.2 introduziu uma extensão CQL que permite codificar tipos de dados CQL em JSON. Por padrão, você usa a sintaxe JSON para manipular dados e as instruções SELECT retornam JSON por meio do conector. Defina essa propriedade como false para usar literais CQL para interagir com os dados do Cassandra.

A sintaxe dos literais CQL tem várias diferenças em relação ao JSON. Por exemplo:

  • As strings CQL são definidas entre aspas simples, enquanto as strings JSON são definidas entre aspas duplas.
  • Conjuntos, tuplas e listas CQL são codificados em JSON como arrays.
  • Tipos definidos pelo usuário e CQL uuid os tipos são codificados em JSON como objetos.

Consulte a documentação CQL para obter mais informações sobre como codificar tipos de dados JSON em sua versão do Cassandra. Abaixo está um exemplo de instrução SQL usando JSON e CQL.

Formato Sintaxe
CQL
INSERT INTO users (user_id, e-mails) VALUES(@user_id, @ e-mails)
Parâmetros
usuário_id frodo
e-mails {'f@baggins.com', 'baggins@gmail.com'}
JSON
INSERT INTO users (user_id, e-mails) VALUES (@user_id, @ e-mails)
Parâmetros
usuário_id frodo
e-mails ["f@baggins.com", "baggins@gmail.com"])

Observe que em consultas ao conector, você deve usar aspas simples para definir strings.

VarintToString

Mapeie Cassandra VARINT para o valor String.

Tipo de Dados

bool

Valor Padrão

true

Observações

Mapeie Cassandra VARINT para o valor String.