Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il driver JDBC di Databricks supporta operazioni avanzate sui metadati che consentono agli strumenti e alle applicazioni di Business Intelligence (BI) di individuare le visualizzazioni delle metriche e identificare le colonne delle misure all'interno di essi usando metodi di metadati JDBC standard.
Gli strumenti di business intelligence possono filtrare e visualizzare le visualizzazioni delle metriche separatamente nei browser dell'origine dati, generare SQL appropriato distinguendo le misure dalle dimensioni e creare ricche capacità del livello semantico. Gli strumenti di esplorazione dei dati consentono agli utenti di individuare e comprendere le metriche aziendali disponibili nel catalogo.
Abilitare i metadati potenziati
I metadati avanzati per le visualizzazioni delle metriche sono disabilitati per impostazione predefinita per mantenere la compatibilità con le versioni precedenti. Abilitarlo usando una proprietà di connessione JDBC o l'impostazione di configurazione di Spark SQL.
Impostare la EnableMetricViewMetadata proprietà di connessione su 1 quando si stabilisce una connessione JDBC.
Uso delle proprietà di connessione
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);
Uso dei parametri URL JDBC
String url = "jdbc:databricks://<workspace-host>:443/default;" +
"httpPath=<http-path>;" +
"EnableMetricViewMetadata=1";
Connection connection = DriverManager.getConnection(url, properties);
In alternativa, impostare spark.databricks.metadata.metricview.enabled su 1 nella sessione 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
Identificare le visualizzazioni delle metriche
Usare il DatabaseMetaData.getTables() metodo per individuare le visualizzazioni delle metriche. Con i metadati avanzati abilitati, questo metodo restituisce METRIC_VIEW come per le TABLE_TYPE visualizzazioni delle metriche, in modo da distinguerle dalle normali viste e tabelle.
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);
}
Identificare le colonne delle misure
Usare il DatabaseMetaData.getColumns() metodo per identificare le colonne delle misure all'interno di una visualizzazione metrica. Con i metadati avanzati abilitati, la TYPE_NAME colonna restituisce <data_type> measure per le colonne di misura ( ad esempio 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 + ")");
}
}
Filtrare in base al tipo di tabella
Usare il DatabaseMetaData.getTableTypes() metodo per individuare i tipi di tabella disponibili nel catalogo. Con i metadati avanzati abilitati, questo metodo include METRIC_VIEW nell'elenco dei tipi di tabella disponibili.
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, ...
}
Compatibilità con le versioni precedenti
Per impostazione predefinita, EnableMetricViewMetadata è impostato su 0 per mantenere la compatibilità retroattiva con le applicazioni esistenti. Azure Databricks restituisce visualizzazioni delle metriche come tipo normale VIEW e le colonne di misura mostrano il tipo di dati di base senza il measure suffisso.