Nota
L'accés a aquesta pàgina requereix autorització. Pots provar d'iniciar sessió o canviar de directori.
L'accés a aquesta pàgina requereix autorització. Pots provar de canviar directoris.
El controlador JDBC de Databricks admite operaciones de metadatos mejoradas que permiten herramientas y aplicaciones de inteligencia empresarial (BI) detectar vistas de métricas e identificar columnas de medida dentro de ellas mediante métodos de metadatos JDBC estándar.
Las herramientas de BI pueden filtrar y mostrar vistas de métricas por separado en exploradores de orígenes de datos, generar SQL adecuado al distinguir medidas de dimensiones y crear funcionalidades enriquecidas de capas semánticas. Las herramientas de exploración de datos pueden ayudar a los usuarios a detectar y comprender las métricas empresariales disponibles en todo el catálogo.
Habilitación de metadatos mejorados
Los metadatos mejorados para las vistas de métricas están deshabilitados de forma predeterminada para mantener la compatibilidad con versiones anteriores. Active usando una propiedad de conexión JDBC o una opción de configuración de Spark SQL.
Establezca la propiedad de conexión EnableMetricViewMetadata a 1 al establecer una conexión JDBC.
Uso de propiedades de conexión
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 de parámetros de dirección URL de JDBC
String url = "jdbc:databricks://<workspace-host>:443/default;" +
"httpPath=<http-path>;" +
"EnableMetricViewMetadata=1";
Connection connection = DriverManager.getConnection(url, properties);
Como alternativa, establezca spark.databricks.metadata.metricview.enabled en 1 en la sesión de 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 vistas de métricas
Usa el método DatabaseMetaData.getTables() para descubrir vistas de métricas. Con los metadatos mejorados habilitados, este método devuelve METRIC_VIEW como TABLE_TYPE para las vistas de métricas, de modo que puede distinguirlas de las vistas y tablas normales.
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);
}
Identificación de columnas de medida
Use el DatabaseMetaData.getColumns() método para identificar columnas de medida dentro de una vista de métrica. Con los metadatos mejorados habilitados, la TYPE_NAME columna devuelve <data_type> measure para las columnas de medida (por ejemplo, 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 tabla
Utilice el método DatabaseMetaData.getTableTypes() para descubrir los tipos de tabla disponibles en tu catálogo. Con los metadatos mejorados habilitados, este método incluye METRIC_VIEW en la lista de tipos de tabla disponibles.
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, ...
}
Retrocompatibilidad
De forma predeterminada, EnableMetricViewMetadata se establece en 0 para mantener la compatibilidad con aplicaciones existentes. Azure Databricks devuelve vistas de métricas como tipo normal VIEW y las columnas de medida muestran su tipo de datos base sin el measure sufijo.