Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O Driver JDBC do Databricks dá suporte a operações de metadados aprimoradas que permitem que ferramentas e aplicativos de BI (business intelligence) descubram exibições de métrica e identifiquem colunas de medida dentro delas usando métodos de metadados JDBC padrão.
As ferramentas de BI podem filtrar e exibir exibições de métrica separadamente em navegadores de fonte de dados, gerar SQL apropriado distinguindo medidas de dimensões e criar recursos de camada semântica avançada. As ferramentas de exploração de dados podem ajudar os usuários a descobrir e entender as métricas de negócios disponíveis em seu catálogo.
Habilitar metadados aprimorados
Metadados aprimorados para exibições de métrica são desabilitados por padrão para manter a compatibilidade com versões anteriores. Habilite usando uma propriedade de conexão JDBC ou a configuração do Spark SQL.
Defina a propriedade de conexão EnableMetricViewMetadata para 1 ao estabelecer uma conexão JDBC.
Usando propriedades de conexão
Properties properties = new Properties();
properties.setProperty("UID", "<username>");
properties.setProperty("PWD", "<password>");
properties.setProperty("EnableMetricViewMetadata", "1");
String url = "jdbc:databricks://<workspace-host>:443/default;httpPath=<http-path>";
Connection connection = DriverManager.getConnection(url, properties);
Usando parâmetros de URL JDBC
String url = "jdbc:databricks://<workspace-host>:443/default;" +
"httpPath=<http-path>;" +
"EnableMetricViewMetadata=1";
Connection connection = DriverManager.getConnection(url, properties);
Como alternativa, defina spark.databricks.metadata.metricview.enabled como 1 em sua sessão SQL:
Connection connection = DriverManager.getConnection(url, properties);
Statement statement = connection.createStatement();
statement.execute("SET spark.databricks.metadata.metricview.enabled=1");
// Metadata operations now return enhanced metric view information
Identificar exibições de métrica
Use o método DatabaseMetaData.getTables() para descobrir exibições de métrica. Com metadados aprimorados habilitados, esse método retorna METRIC_VIEW como TABLE_TYPE para exibições de métrica, permitindo que você os distinga de exibições e tabelas regulares.
Connection connection = DriverManager.getConnection(url, properties);
DatabaseMetaData metadata = connection.getMetaData();
ResultSet tables = metadata.getTables(catalog, schema, "<metric_view>", null);
while (tables.next()) {
String tableName = tables.getString("TABLE_NAME");
String tableType = tables.getString("TABLE_TYPE"); // Returns "METRIC_VIEW"
System.out.println("Metric View: " + tableName);
}
Identificar colunas de medida
Use o método DatabaseMetaData.getColumns() para identificar colunas de medida dentro de uma vista de métricas. Com metadados aprimorados habilitados, a TYPE_NAME coluna retorna <data_type> measure para colunas de medida (por exemplo, int measure, ). double measure
Connection connection = DriverManager.getConnection(url, properties);
DatabaseMetaData metadata = connection.getMetaData();
ResultSet columns = metadata.getColumns(catalog, schema, metricViewName, "%");
while (columns.next()) {
String columnName = columns.getString("COLUMN_NAME");
String typeName = columns.getString("TYPE_NAME");
if (typeName.endsWith(" measure")) {
System.out.println("Measure column: " + columnName + " (" + typeName + ")");
} else {
System.out.println("Dimension column: " + columnName + " (" + typeName + ")");
}
}
Filtrar por tipo de tabela
Use o DatabaseMetaData.getTableTypes() método para descobrir os tipos de tabela disponíveis em seu catálogo. Com metadados aprimorados habilitados, esse método inclui METRIC_VIEW na lista de tipos de tabela disponíveis.
Connection connection = DriverManager.getConnection(url, properties);
DatabaseMetaData metadata = connection.getMetaData();
ResultSet tableTypes = metadata.getTableTypes();
while (tableTypes.next()) {
String tableType = tableTypes.getString("TABLE_TYPE");
System.out.println("Available table type: " + tableType);
// Output includes: TABLE, VIEW, METRIC_VIEW, ...
}
Compatibilidade com versões anteriores
Por padrão, EnableMetricViewMetadata é configurado como 0 para manter compatibilidade retroativa com aplicativos existentes. O Azure Databricks retorna exibições de métricas como tipo regular VIEW, e as colunas de medida mostram seu tipo de dados base sem o sufixo measure.