Analytische View - Funktionen
Die Klasse Adp.Analytics enthält die Syntax und Beschreibungen der Klassen, Methoden, Attribute und Parameter der Anwendungsprogrammierschnittstelle für das Tool "Analytic Views" der Data Studio Suite von Tools. Wenn die angeforderte Analyse-View nicht vorhanden ist (außer create), geben alle Funktionen die Meldung Analytic view does not exist zurück.
Gibt eine Liste mit Analytic View-Namen zurück.
Analytics.get_list(owner)Parameter:
- Eigentümer: In diesem Feld wird der Eigentümer des Datenbanklinks angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
Beispiel
In diesem Beispiel können Sie die Liste der analytischen Views anzeigen:
Analytics.get_list()
{
"nodes": [
{
"label": "ANALYTIC_VIEW1",
"type": "ANALYTIC_VIEW",
"id": "\"ADMIN\".\"DB\".\"ANALYTIC_VIEW1\"",
"data": {
"name": "ANALYTIC_VIEW1",
"namespace": "DB",
"path": "\"DB\".\"ANALYTIC_VIEW1\"",
"schema": "ADMIN",
"classifications": {
"CAPTION": "Analytic View1",
"DESCRIPTION": "Analytic View1"
},
"application": "DATABASE",
"created": "2021-06-09T14:19:06Z",
"updated": "2021-06-15T10:23:07Z"
}
},...
]
}Prozedur "Analyse-View erstellen"Erstellen Sie die Analyse-View basierend auf der Liste der Dimensionstabellen und der Kennzahlenliste.
Syntax
Analytics.create(fact_table, dimensions, measures, av_name,
owner)Parameter:
- fact_table: Der Name der Faktentabelle.
- Dimensionen ist die Liste der Namen von Dimensionstabellen. Wenn die Dimensionstabelle keine Joins mit Schlüsseln in der Faktentabelle enthält, wird der Fehler ausgelöst.
- Kennzahlen: Dieses Feld gibt die Liste der Faktentabellenspalten an, die für die Aggregation verwendet werden.
- av_name: Dieses Feld ist ein Name der Analyse-View. Wenn dieser Parameter fehlt, verwenden Sie den Standardnamen der Analyse-View basierend auf dem Namen der Faktentabelle: "<fact_table>_AV".
- Eigentümer: In diesem Feld wird der Eigentümer der Analyse-View angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
Beispiel
In diesem Beispiel können Sie die Analyse-View basierend auf vier Dimensionen und zwei Kennzahlen erstellen:
tables = ["CHANNELS","PRODUCTS","PROMOTIONS","TIMES"]
measures = [ 'UNIT_COST', 'UNIT_PRICE']
adp.Analytics.create('COSTS', tables, measures)
// Output
successProzedur "Analyse-View automatisch erstellen"
Erstellen Sie die Analyse-View auf Basis der Faktentabelle. Kennzahlen werden automatisch basierend auf den Spalten der Faktentabelle ausgewählt. Dimensionen werden aus geeigneten Dimensionstabellen ausgewählt.
Die Funktion verwendet den Standardnamen der analytischen View basierend auf dem Namen der Faktentabelle: "<fact_table>_AV".
Syntax
Analytics.create_auto(fact_table, skip_dimensions,
owner)Parameter:
- fact_table: Der Name der Faktentabelle.
- skip_dimensions: Wenn der Feldwert "True" lautet, werden Spalten der Faktentabelle als Dimensionen ausgewählt. Der Standardwert ist False.
- Eigentümer: In diesem Feld wird der Eigentümer der Analyse-View angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
Beispiel
Analytics.create_auto('COSTS', False) // Output successAnalyse-View löschen - Vorgehensweise
Analytische View mit dem angegebenen Namen löschen
Syntax
Analytics.drop(model_name, delete_objects)Parameter:
- model_name: Der Name der Analyse-View.
- delete_objects: Wenn der Feldwert "True" lautet, werden alle zugehörigen Objekte (Dimensionen und Kennzahlen) gelöscht. Der Standardwert ist False.
Beispiel
In diesem Beispiel können Sie die Analyse-View löschen:
adp.Analytics.drop('COSTS_AV', True)Analyse-View kompilieren - Vorgehensweise
Kompilieren Sie die Analyse-View. Sie optimiert die Abfrage, um Daten effizient aus den Faktentabellen abzurufen.
Analytics.compile(av_name, owner)Parameter:
- av_name: Der Name der Analyse-View.
- Eigentümer: In diesem Feld wird der Eigentümer der Analyse-View angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
Beispiel
In diesem Beispiel können Sie die Analyse-View kompilieren:
adp.Analytics.compile('COSTS_AV')Kennzahlenliste abrufen - Vorgehensweise
Rufen Sie die Liste der Kennzahlen aus der angegebenen Analytic View ab.
Syntax
Analytics.get_measures_list(av_name, owner)Parameter:
- av_name: Der Name der Analyse-View.
- Eigentümer: In diesem Feld wird der Eigentümer der Analyse-View angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
Beispiel
In diesem Beispiel können Sie die Kennzahlenliste der Analyse-View abrufen:
adp.Analytics.get_measures_list('COSTS_AV')
// Output
{
"nodes": [
{
"label": "UNIT_COST",
"type": "MEASURE",
"id": "\"ADMIN\".\"DB\".\"COSTS_AV\".\"MEASURE\".\"UNIT_COST\"",
"data": {
"name": "UNIT_COST",
"namespace": "MEASURE",
"path": "\"DB\".\"COSTS_AV\".\"MEASURE\".\"UNIT_COST\"",
"schema": "ADMIN",
"application": "DATABASE",
"created": "2022-08-16T17:04:08Z",
"updated": "2022-08-16T17:04:08Z"
}
},...
]
}Vorschauverfahren abrufen
Geben Sie die Metadaten der Analyse-View (Hierarchien (Name und Titel) und Kennzahlen), der aggregierten Daten und der SQL-Abfrage zum Auswählen von Daten aus der Analyse-View zurück.
Syntax
Analytics.get_data_preview(entity_name, owner)Parameter:
- entity_name: Der Name der Analyse-View.
- Eigentümer: In diesem Feld wird der Eigentümer der Analyse-View angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
Beispiel
In diesem Beispiel können Sie Vorschaudaten der Analyse-View abrufen:
adp.Analytics.get_data_preview('COSTS_AV')
// Output
{
"av": "COSTS_AV",
"caption": null,
"description": null,
"metadata": {
"hierarchies": [
{
"name": "CHANNEL_ID",
"caption": "CHANNEL_ID"
},
{
"name": "PROD_ID",
"caption": "PROD_ID"
}
],
"measures": [
{
"name": "UNIT_COST",
"caption": "UNIT_COST"
},
{
"name": "UNIT_PRICE",
"caption": "UNIT_PRICE"
}
]
},
"data": [...],
"SQL": "..."
}Metadatenprozedur abrufen
Geben Sie detaillierte Metadaten der Analyse-View zurück.
Syntax
Analytics.get_metadata(av_name, owner)Parameter:
- av_name: Der Name der Analyse-View.
- Eigentümer: In diesem Feld wird der Eigentümer der Analyse-View angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
Geben Sie detaillierte Metadaten der Analyse-View im Schema des Eigentümers zurück (wenn "Keine" fehlt oder auf "Keine" gesetzt ist, verwenden Sie das aktuelle Schema).
Beispiel
In diesem Beispiel können Sie Metadaten der Analyse-View abrufen:
adp.Analytics.get_metadata('COSTS_AV')Prozeduren für Dimensionsnamen
Gibt das Array der Dimensionsnamen der Analyse-View zurück
Syntax
Analytics.get_dimension_names(av_name)Parameter:
- av_name: Der Name der Analyse-View.
Beispiel
In diesem Beispiel können Sie Dimensionsnamen der Analyse-View abrufen:
adp.Analytics.get_dimension_names('COSTS_AV')Faktentabellenname - Prozedur
Gibt den Namen der Faktentabelle der Analyse-View zurück.
Analytics.get_fact_table_name(av_name)Parameter:
- av_name: Der Name der Analyse-View.
Beispiel
In diesem Beispiel können Sie den Namen der Faktentabelle der Analyse-View abrufen:
adp.Analytics.get_fact_table_name('COSTS_AV')Fehlerklassen aus Dimensionen abrufen - Vorgehensweise
Geben Sie die Informationen zu Fehlern in der angegebenen Dimension während der Analyse der Analyse-View zurück. Mit dieser Methode wird geprüft, ob die Dimension der Analyse-View keine Fehler enthält. Im Fehlerfall ist ERROR_COUNT nicht 0, und errorData ist nicht leer und enthält ERROR_MESSAGE (Textdarstellung des Fehlers), ERROR_NUMBER (Oracle-Fehlercode).
Syntax
Analytics.get_error_classes_from_dim(av_name,
dimension)Parameter:
- av_name: Der Name der Analyse-View.
- Dimension: Dimensionsname.
Beispiel
In diesem Beispiel können Sie den Namen der Fehlerklassen der Dimensionen der Analyse-View abrufen:
adp.Analytics.get_error_classes_from_dim('COSTS_AV', 'CHANNELS')Fehlerklassen aus Faktentabelle abrufen - Vorgehensweise
Geben Sie die Informationen zu Fehlern in der angegebenen Faktentabelle während der Analyse der Analyse-View zurück. Mit dieser Methode wird geprüft, ob die Faktentabelle der Analyse-View keine Fehler enthält. Bei einem Fehler ist ERROR_COUNT nicht 0, und errorData ist nicht leer und enthält ERROR_MESSAGE (Textendarstellung des Fehlers) und ERROR_NUMBER (Oracle-Fehlercode).
Syntax
Analytics.get_error_classes_from_fact_tab(av_name,
fact_tab)Parameter:
- av_name: Der Name der Analyse-View.
- fact_table: Der Name der Faktentabelle.
Beispiel
adp.Analytics.get_error_classes_from_fact_tab('COSTS_AV', 'COSTS')Geben Sie die Informationen zu Fehlern in der angegebenen Faktentabelle während der Analyse der Analyse-View zurück. Mit dieser Methode wird geprüft, ob die Faktentabelle der Analyse-View keine Fehler enthält. Bei einem Fehler ist ERROR_COUNT nicht 0, und errorData ist nicht leer und enthält ERROR_MESSAGE (Textdarstellung des Fehlers) und ERROR_NUMBER (Oracle-Fehlercode).
Qualitätsbericht - Vorgehensweise
Gibt die Informationen zu Fehlern in der von av_name angegebenen Analyse-View zurück. Diese Methode prüft Faktentabelle und Dimensionen der Analyse-View. Im Falle einer Fehlertextdarstellung werden die Fehler in den Bericht aufgenommen.
Syntax
Analytics.quality_report(av_name)Parameter:
- av_name: Der Name der Analyse-View.
Beispiel
In diesem Beispiel können Sie einen Qualitätsbericht für die Analyse-View abrufen:
adp.Analytics.quality_report('COSTS_AV')
// Output
[
"Fact table COSTS has no errors",
"Dimension COSTS_AV_CHANNELS_AD has no errors",
"Dimension COSTS_AV_PRODUCTS_AD has no errors",
"Dimension COSTS_AV_PROMOTIONS_AD has no errors",
"Dimension COSTS_AV_TIMES_AD has no errors"
]Datenprozedur abrufen
Gibt die aggregierten Daten aus der Analyse-View zurück. Der Rückgabewert ist die Liste der Abfrageergebnisse.
Syntax
Analytics.get_data(levels, column_names, entity_name, hierarchies,
measures, where_condition, owner)Parameter:
- Ebenen: Die Ebene der Analyse-View.
- column_names: Das Array der Spalten.
- entity_name: Der Name der Analyse-View.
- Hierarchien: Das Array der ausgewählten Hierarchien.
- Measures: Das Array der Measures.
- where_condition: ist das Bedingungsarray, jede Bedingung hat 4 Felder: Hierarchie, Spalte, Operator und Wert.
- Eigentümer: In diesem Feld wird der Eigentümer der Analyse-View angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
Beispiel
In diesem Beispiel können Sie einen Qualitätsbericht für die Analyse-View abrufen:
adp.Analytics.get_data(True,
["COSTS_AV_PROD_HIER_PROD_ID_ATTR",
"UNIT_COST",
"COSTS_AV_PROD_HIER_DEPTH"], 'COSTS_AV',
["COSTS_AV_PROD_ID_HIER"],
["UNIT_COST", "UNIT_PRICE"],
[{"hierarchy": "COSTS_AV_PROD_ID_HIER", "column": "LEVEL_NAME", "operator": "=", "value": "ALL:PROD_ID"}])
//Output
[{"UNIT_COST":808685.68},{"UNIT_COST":213170.06},{"UNIT_COST":16778.02},...},SQL-Abfrage - Prozedur
Geben Sie eine SQL-Abfrage zurück, die in get_data verwendet wird.
Syntax
Analytics.get_sql(levels, column_names, entity_name, hierarchies,
measures, where_condition, owner)Parameter:
- Ebenen: Die Ebene der Analyse-View.
- column_names: Das Array der Spalten.
- entity_name: Der Name der Analyse-View.
- Hierarchien: Das Array der ausgewählten Hierarchien.
- Measures: Das Array der Measures.
- where_condition: ist das Bedingungsarray, jede Bedingung hat 4 Felder: Hierarchie, Spalte, Operator und Wert.
- Eigentümer: In diesem Feld wird der Eigentümer der Analyse-View angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
Beispiel
In diesem Beispiel können Sie SQL für aggregierte Daten der Analyse-View abrufen:
adp.Analytics.get_sql(True,
["COSTS_AV_PROD_HIER_PROD_ID_ATTR",
"UNIT_COST",
"COSTS_AV_PROD_HIER_DEPTH"], 'COSTS_AV',
["COSTS_AV_PROD_ID_HIER"],
["UNIT_COST", "UNIT_PRICE"],
[{"hierarchy": "COSTS_AV_PROD_ID_HIER", "column": "LEVEL_NAME", "operator": "=", "value": "ALL:PROD_ID"})
//Output
SELECT
"MEASURES"."UNIT_COST" AS "UNIT_COST"
FROM "ADMIN"."COSTS_AV" HIERARCHIES(
"PROD_ID"."PROD_ID")
WHERE
(
(
"PROD_ID"."PROD_ID"."LEVEL_NAME" IN ('ALL', 'PROD_ID')
)
)
Übergeordnetes Thema: Mit Python Data Studio-API für Autonomous Database arbeiten