Aba SQL inicial
Se a caixa de seleção Definir ID da sessão estiver ativada na aba Avançada (padrão), você pode definir configurações da sessão usando
SET my_setting=value;Aba avançada
Em 99% dos casos, você não precisa da aba avançada; no 1% restante, pode usar as seguintes configurações:
-
Parâmetros de conexão personalizados. Por padrão,
socket_timeoutjá vem especificado; talvez seja necessário alterar esse parâmetro se algumas extrações demorarem muito para ser atualizadas. O valor desse parâmetro é especificado em milissegundos. Os demais parâmetros podem ser encontrados aqui; adicione-os neste campo, separados por vírgulas -
JDBC Driver custom_http_params. Este campo permite inserir alguns parâmetros na string de conexão do ClickHouse passando valores para o
custom_http_paramsparameter of the driver. Por exemplo, é assim quesession_idé especificado quando a caixa de seleção definir id da sessão está ativada -
JDBC Driver
typeMappings. Este campo permite passar uma lista de mapeamentos de tipos de dados do ClickHouse para tipos de dados Java usados pelo driver JDBC. O conector exibe automaticamente inteiros grandes como strings graças a esse parâmetro; você pode alterar isso passando seu conjunto de mapeamentos (não sei por quê) usandoUInt256=java.lang.Double,Int256=java.lang.DoubleLeia mais sobre mapeamento na seção correspondente
-
JDBC Driver URL Parameters. Você pode passar os demais parâmetros do driver, por exemplo
jdbcCompliance, neste campo. Atenção: os valores dos parâmetros devem ser passados em formato URL-encoded e, caso você passecustom_http_paramsoutypeMappingsneste campo e também nos campos anteriores da aba avançada, os valores dos dois campos anteriores da aba avançada terão prioridade -
Caixa de seleção definir id da sessão. Ela é necessária para definir configurações no nível da sessão na aba sql inicial; gera um
session_idcom um timestamp e um número pseudoaleatório no formato"tableau-jdbc-connector-*{timestamp}*-*{number}*"
Suporte limitado aos tipos de dados UInt64, Int128 e (U)Int256
Por padrão, o driver exibe campos dos tipos UInt64, Int128, (U)Int256 como strings, mas apenas exibe, não converte. Isso significa que, ao tentar criar o próximo campo calculado, você receberá um erro
LEFT([myUInt256], 2) // Erro!Para trabalhar com campos Integer grandes da mesma forma que com strings, é necessário envolver explicitamente o campo na função STR()
LEFT(STR([myUInt256]), 2) // Funciona bem!No entanto, como esses campos são usados com mais frequência para identificar o número de valores únicos (IDs como Watch ID e Visit ID no Yandex.Metrica) ou como uma Dimensão para definir o nível de detalhamento da visualização, eles funcionam bem.
COUNTD([myUInt256]) // Funciona bem também!Ao usar a visualização de dados (Ver dados) de uma tabela com campos UInt64, não aparece mais nenhum erro.