Sdílet prostřednictvím


Práce s metadaty zobrazení metrik pomocí ovladače Databricks JDBC

Ovladač Databricks JDBC podporuje rozšířené operace metadat, které umožňují nástrojům a aplikacím business intelligence zjišťovat zobrazení metrik a identifikovat sloupce měr v nich pomocí standardních metod metadat JDBC.

Nástroje BI můžou filtrovat a zobrazovat zobrazení metrik samostatně v prohlížečích zdrojů dat, generovat příslušné SQL pomocí rozlišení měr od dimenzí a vytvářet bohaté možnosti sémantické vrstvy. Nástroje pro zkoumání dat můžou uživatelům pomoct zjišťovat a pochopit dostupné obchodní metriky v katalogu.

Povolení rozšířených metadat

Rozšířená metadata pro zobrazení metrik jsou ve výchozím nastavení zakázaná, aby se zachovala zpětná kompatibilita. Povolte ji pomocí vlastnosti připojení JDBC nebo nastavení konfigurace Spark SQL.

Nastavte vlastnost připojení na EnableMetricViewMetadata, když navazujete připojení JDBC 1.

Použití vlastností připojení

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);

Použití parametrů adresy URL JDBC

String url = "jdbc:databricks://<workspace-host>:443/default;" +
             "httpPath=<http-path>;" +
             "EnableMetricViewMetadata=1";
Connection connection = DriverManager.getConnection(url, properties);

Alternativně nastavte spark.databricks.metadata.metricview.enabled na 1 ve své relaci 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

Identifikace zobrazení metrik

Použijte metodu DatabaseMetaData.getTables() k objevení zobrazení metrik. Tato metoda, s povolenými rozšířenými metadaty, vrací METRIC_VIEW jako TABLE_TYPE pro zobrazení metrik, takže je můžete odlišit od běžných zobrazení a tabulek.

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);
}

Identifikace sloupců měr

DatabaseMetaData.getColumns() Tato metoda slouží k identifikaci sloupců měr v zobrazení metriky. Když jsou povolená rozšířená metadata, TYPE_NAME sloupec vrací <data_type> measure pro měrné sloupce (například 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 + ")");
    }
}

Filtrovat podle typu tabulky

DatabaseMetaData.getTableTypes() Tato metoda slouží ke zjišťování dostupných typů tabulek v katalogu. S vylepšenými metadaty tato metoda zahrnuje METRIC_VIEW do seznamu dostupných typů tabulek.

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, ...
}

Zpětná kompatibilita

Ve výchozím nastavení je EnableMetricViewMetadata nastavený na 0 pro zachování zpětné kompatibility s existujícími aplikacemi. Azure Databricks vrátí zobrazení metrik jako běžný VIEW typ a sloupce měr zobrazují jejich základní datový typ bez přípony measure .

Další kroky