Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Databricks JDBC Driver suporta operações de metadados melhoradas que permitem que ferramentas e aplicações de inteligência empresarial (BI) descubram vistas métricas e identifiquem colunas de medida dentro delas, utilizando métodos padrão de metadados JDBC.
As ferramentas de BI podem filtrar e exibir vistas métricas separadamente nos navegadores de fontes de dados, gerar SQL apropriado ao distinguir medidas de dimensões e construir capacidades semânticas ricas. As ferramentas de exploração de dados podem ajudar os utilizadores a descobrir e compreender métricas de negócio disponíveis em todo o seu catálogo.
Ativar metadados melhorados
Os metadados melhorados para vistas métricas estão desativados por defeito para manter a compatibilidade retroativa. Ative-o usando uma propriedade de ligação JDBC ou a configuração SQL do Spark.
Defina a EnableMetricViewMetadata propriedade de ligação para 1 ao estabelecer uma ligação JDBC.
Utilização das propriedades de ligaçã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);
Utilização dos parâmetros do URL JDBC
String url = "jdbc:databricks://<workspace-host>:443/default;" +
"httpPath=<http-path>;" +
"EnableMetricViewMetadata=1";
Connection connection = DriverManager.getConnection(url, properties);
Alternativamente, defina spark.databricks.metadata.metricview.enabled para 1 na 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 visões métricas
Use o DatabaseMetaData.getTables() método para descobrir vistas métricas. Com os metadados melhorados ativados, este método devolve METRIC_VIEW como TABLE_TYPE para visualizações de métricas, permitindo que possa distingui-las das vistas e tabelas normais.
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 DatabaseMetaData.getColumns() método para identificar colunas de medida dentro de uma vista métrica. Com metadados melhorados ativados, a TYPE_NAME coluna devolve <data_type> measure as 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 encontrar os tipos de tabelas disponíveis no seu catálogo. Com metadados melhorados ativados, este método inclui METRIC_VIEW na lista de tipos de tabelas 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 defeito, EnableMetricViewMetadata está configurado como 0 para manter a compatibilidade com versões anteriores de aplicações existentes. O Azure Databricks devolve visualizações de métricas como tipo regular VIEW, e as colunas de medida mostram o seu tipo base de dados sem o sufixo measure.