Aracılığıyla paylaş


Databricks JDBC Sürücüsünü kullanarak ölçüm görünümü meta verileriyle çalışma

Databricks JDBC Sürücüsü, iş zekası (BI) araçlarının ve uygulamalarının standart JDBC meta veri yöntemlerini kullanarak ölçüm görünümlerini keşfetmesine ve içindeki ölçü sütunlarını tanımlamasına olanak sağlayan gelişmiş meta veri işlemlerini destekler.

BI araçları ölçüm görünümlerini veri kaynağı tarayıcılarında ayrı ayrı filtreleyebilir ve görüntüleyebilir, ölçüleri boyutlardan ayırarak uygun SQL oluşturabilir ve zengin anlam katmanı özellikleri oluşturabilir. Veri araştırma araçları, kullanıcıların kataloğunuzdaki kullanılabilir iş ölçümlerini bulmasına ve anlamasına yardımcı olabilir.

Gelişmiş meta verileri etkinleştirme

Ölçüm görünümleri için gelişmiş meta veriler, geriye dönük uyumluluğu korumak için varsayılan olarak devre dışı bırakılır. JDBC bağlantı özelliğini veya Spark SQL yapılandırma ayarını kullanarak etkinleştirin.

EnableMetricViewMetadata JDBC bağlantısı kurarken bağlantı özelliğini 1 olarak ayarlayın.

Bağlantı özelliklerini kullanma

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

JDBC URL parametrelerini kullanma

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

Alternatif olarak, SQL oturumunuzda spark.databricks.metadata.metricview.enabled'i 1 olarak ayarlayın.

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

Ölçüm görünümlerini tanımlama

Ölçüm görünümlerini keşfetmek için DatabaseMetaData.getTables() yöntemini kullanın. Gelişmiş meta veriler etkinleştirildiğinde, bu yöntem METRIC_VIEW döndürürken TABLE_TYPE ölçüm görünümleri olarak, bu sayede bunları normal görünümlerden ve tablolardan ayırt edebilirsiniz.

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

Ölçü sütunlarını tanımlama

Ölçüm görünümündeki DatabaseMetaData.getColumns() ölçü sütunlarını tanımlamak için yöntemini kullanın. Gelişmiş meta veriler etkinleştirildiğinde, TYPE_NAME sütunu ölçü sütunları için <data_type> measure döndürür (örneğin, 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 + ")");
    }
}

Tablo türüne göre filtrele

DatabaseMetaData.getTableTypes() Kataloğunuzdaki kullanılabilir tablo türlerini bulmak için yöntemini kullanın. Gelişmiş meta veriler etkinleştirildiğinde, bu yöntem kullanılabilir tablo türleri listesinde yer alır METRIC_VIEW .

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

Geriye dönük uyumluluk

Varsayılan olarak, EnableMetricViewMetadata mevcut uygulamalarla geriye dönük uyumluluğu korumak için olarak ayarlanır 0 . Azure Databricks ölçüm görünümlerini normal VIEW tür olarak geri döndürür ve ölçü kolonları temel veri türlerini sonek olmadan measure gösterir.

Sonraki Adımlar