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.

Liste der Namen von Analyse-Views - Vorgehensweise

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
 
success

Prozedur "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

In diesem Beispiel können Sie die Analyse-View erstellen:
Analytics.create_auto('COSTS', False) // Output success

Analyse-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.

Syntax
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.

Syntax
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

In diesem Beispiel können Sie Fehlerklassen des Namens der Faktentabelle der Analyse-View abrufen:
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')
    )
  )