Verwenden Sie R (Rserve)-Skripte in Ihrem Schema

Haftungsausschluss: Dieses Thema enthält Informationen über ein Drittanbieterprodukt. Bitte beachten Sie, dass wir zwar große Anstrengungen unternehmen, die Verweise auf Inhalte Dritter korrekt zu halten, sich die von uns hier zur Verfügung gestellten Informationen jedoch ohne Vorankündigung ändern können, wenn sich R und Rserve ändern. Die aktuellsten Informationen finden Sie in der Dokumentation und im Support von R und Rserve.

R ist eine Open-Source-Software-Programmiersprache und eine Softwareumgebung für statistische Berechnungen und Grafiken. Um die Funktionalität von Tableau Prep BuilderR zu erweitern, können Sie Skripte in R erstellen, die in Ihrem Schema verwendet werden, und die über einen Rserve-Server laufen, um Ausgaben zu erzeugen, mit denen Sie in Ihrem Schema weiterarbeiten können.

Beispielsweise können Sie statistische Modellierungsdaten oder Prognosedaten zu den Daten hinzufügen, die Sie bereits in Ihrem Schema haben, indem Sie ein Skript in R verwenden und dann die Leistung von Tableau Prep Builder nutzen, um den resultierenden Datensatz zur Analyse zu bereinigen.

Um R-Skripte in Ihr Schema aufzunehmen, müssen Sie eine Verbindung zwischen Tableau Prep Builder und einem Rserve-Server konfigurieren. Sie können dann R-Skripte verwenden, um unterstützte Funktionen auf Daten aus Ihrem Schema mit R-Ausdrücken anzuwenden. Nachdem Sie die Konfigurationsdetails eingegeben haben und mit Tableau Prep Builder auf die Datei und die Funktion zeigen, die Sie verwenden möchten, werden die Daten sicher an den Rserve-Server übergeben, die Ausdrücke werden angewendet und die Ergebnisse werden als Tabelle (R data.frame) zurückgegeben, die Sie nach Bedarf bereinigen oder ausgeben können.

Sie können Schemata ausführen, die Skriptschritte in Tableau Server enthalten, solange Sie eine Verbindung zu Ihrem Rserve-Server konfiguriert haben. Die Ausführung von Schemata mit Skriptschritten in Tableau Online wird derzeit nicht unterstützt. Informationen zum Konfigurieren von Tableau Server finden Sie unter Rserve Server für Tableau Server konfigurieren.

Voraussetzungen

Um R-Skriptschritte in Ihr Schema aufzunehmen, installieren Sie R und konfigurieren Sie eine Verbindung zu einem Rserve-Server.

Ressourcen

Rserve Server für Tableau Server konfigurieren

Verwenden Sie die folgenden Anweisungen, um eine Verbindung zwischen Ihrem Rserve-Server und Tableau Server zu konfigurieren.

  • Version 2019.3 und höher: Sie können veröffentlichte Schemata ausführen, die Skriptschritte in Tableau Server enthalten.
  • Version 2020.4.1 und höher: Sie können Schemata erstellen, bearbeiten und ausführen, die Skriptschritte in Tableau Server enthalten.
  • Tableau Online: Das Erstellen oder Ausführen von Schemata mit Skriptschritten wird derzeit nicht unterstützt.
  1. Öffnen Sie die TSM-Befehlszeile.
  2. Geben Sie die folgenden Befehle ein, um die Hostadresse und die Portwerte festzulegen:

    tsm security maestro-rserve-ssl enable --connection-type {maestro-rserve-secure/maestro-rserve} --rserve-host <Rserve IP address or host name> --rserve-port <Rserve port> --rserve-username <Rserve username> --rserve-password <Rserve password> --rserve-connect-timeout-ms <RServe connect timeout>

    • Wählen Sie {maestro-rserve-secure} um eine sichere Verbindung, oder {maestro-rserve} um eine ungesicherte Verbindung zu aktivieren.
    • Wenn Sie {maestro-rserve-secure} auswählen, geben Sie in der Befehlszeile die Zertifikatsdatei -cf<certificate file path> an.
    • Geben Sie --rserve-connect-timeout-ms <RServe connect timeout> in Millisekunden ein. Zum Beispiel --rserve-connect-timeout-ms 900000.
  3. Um die Rserve-Verbindung zu deaktivieren, geben Sie folgenden Befehl ein

    tsm security maestro-rserve-ssl disable

Zusätzliche Rserve-Konfiguration (Option)

Sie können eine Datei mit dem Namen Rserv.cfg erstellen, um Standardkonfigurationswerte festzulegen und Rserve anzupassen und an den Installationsort /etc/Rserve.conf zu verschieben. Um die Stabilität mit dem Rserve-Server und Tableau Prep Builder zu verbessern, können Sie Ihrer Rserve-Konfiguration zusätzliche Werte hinzufügen. Wenn Sie Rserve starten, können Sie sich auf diese Datei beziehen, um Ihre Konfigurationsoptionen anzuwenden. Beispiel:

  • Windows: Rserve(args="--RS-conf C:\\folder\\Rserv.cfg")
  • MacOS und Linux: Rserve(args=" --no-save --RS-conf ~/Documents/Rserv.cfg")

Das folgende Beispiel zeigt mehrere zusätzliche Optionen, die Sie in Ihre Konfigurationsdatei Rserve.conf aufnehmen können:

# If your data includes characters other than ASCII, make it explicit that data should be UTF8 encoded.
encoding utf8 
# Disable interactive behavior for Rserve or Tableau Prep Builder will stall when trying to run the script as it waits for an input response.
interactive no

Informationen zum Einrichten einer Rserve.conf-Datei finden Sie im Abschnitt Erweiterte Rserve-Konfiguration in den Hinweisen zur Implementierung von R(Link wird in neuem Fenster geöffnet) (Community-Beitrag).

R-Skript erstellen

Wenn Sie Ihr Skript erstellen, binden Sie eine Funktion ein, die einen Datenrahmen als Argument der Funktion angibt. Dadurch werden Ihre Daten von Tableau Prep Builder abgerufen. Sie müssen die Ergebnisse auch in einem Datenrahmen mit unterstützten Datentypen zurückgeben.

Beispiel:

Die folgenden Datentypen werden unterstützt:

Datentyp im Tableau Prep Builder Datentyp in R
Zeichenfolge Standardmäßige UTF-8 Zeichenkette
Dezimal Doppelt
Ganz Ganzzahl
Bool Logisch
Datum Zeichenkette im ISO_DATE-Format „JJJJ-MM-TT“ mit optionalem Zeitzonenversatz. Beispielsweise ist „2011-12-03+01:00“ ein gültiges Datum.
DatumUhrzeit Zeichenkette im ISO_DATE_TIME-Format „JJJJ-MM-TTU:SS:mm:ss" mit optionalem Zeitzonenversatz. Beispielsweise ist "2011-12-03T10:15:30:30+01:00" ein gültiges Datum.

Hinweis: Datum und DatumUhrzeit müssen immer als gültige Zeichenkette zurückgegeben werden. Native Daten (DatumUhrzeit) in R werden nicht als Rückgabewerte unterstützt, können aber im Skript verwendet werden.

Wenn Sie andere Felder als die von Ihnen eingegebenen zurückerhalten möchten, muss eine Funktion getOutputSchema in das Skript aufgenommen werden, die die Ausgabe und den Datentyp definiert. Andernfalls verwendet die Ausgabe die Felder aus den Eingabedaten, die aus dem Schritt genommen werden, der vor dem Skriptschritt im Schema liegt.

Verwenden Sie die folgende Syntax, wenn Sie die Datentypen für die Felder im getOutputSchema angeben:

Funktion in R Resultierender Datentyp
prep_string () Zeichenfolge
prep_decimal () Dezimal
prep_int () Ganzzahl
prep_bool () Boolsche Zahl
prep_date () Datum
prep_datetime () DatumUhrzeit

Das folgende Beispiel zeigt die Funktion getOutputSchema für das Skript postal_cluster:

getOutputSchema <- function() {      
  return (data.frame (
    Latitude = prep_decimal (),
    Longitude = prep_decimal (),
    Cluster = prep_int ()));
}

Herstellen einer Verbindung mit Ihrem Rserve-Server

Wichtig: Ab Tableau Prep Builder-Version 2020.3.3 können Sie die Serververbindung einmal über das obere Hilfe-Menü konfigurieren, statt sie pro Schema im Skriptschritt einzurichten, indem Sie auf Mit Rserve-Server verbinden klicken und Ihre Verbindungsdetails eingeben. Sie müssen Ihre Verbindung mithilfe dieses neuen Menüs für alle in einer älteren Version von Tableau Prep Builder erstellten Schemata neu konfigurieren, die Sie in Version 2020.3.3 öffnen.

  1. Wählen Sie Hilfe > Einstellungen und Leistung > Verwalten der Verbindung mit Analytics-Erweiterungen.
  2. Wählen Sie in der Dropdown-Liste Analytics-Erweiterung auswählen die Option Rserve aus.

  3. Geben Sie Ihre Anmeldeinformationen ein:
    • Port 6311 ist der Standardport für Volltext-Rserve-Server.
    • Port 4912 ist der Standardport für SSL-verschlüsselte Rserve-Server.
    • Wenn der Server Anmeldeinformationen benötigt, geben Sie entsprechend einen Benutzernamen und ein Kennwort ein.
    • Wenn der Server SSL-Verschlüsselung verwendet, aktivieren Sie das Kontrollkästchen SSL erforderlich, und klicken Sie dann auf den Link Benutzerdefinierte Konfigurationsdatei, um ein Zertifikat für die Verbindung anzugeben.

      Hinweis: Tableau Prep Builder bietet keine Möglichkeit, die Verbindung zu testen. Wenn es ein Problem mit der Verbindung gibt, wird eine Fehlermeldung bei dem Versuch angezeigt, das Schema auszuführen.

Ein Skript zum Schema hinzufügen

Starten Sie Ihren Rserve-Server und führen Sie dann die folgenden Schritte aus:

  1. Öffnen Sie Tableau Prep Builder und klicken Sie auf die Schaltfläche Verbindung hinzufügen ().

    Klicken Sie bei der Webdokumenterstellung auf der Startseite auf Erstellen > Schema oder auf der Seite Erkunden auf Neu > Schema. Klicken Sie anschließend auf Verbindung zu Daten herstellen.

  2. Wählen Sie in der Connector-Liste den Dateityp oder Server aus, auf dem Ihre Daten gehostet werden. Geben Sie bei entsprechender Aufforderung die zum Anmelden und Zugreifen auf Ihre Daten benötigten Informationen ein.

  3. Klicken Sie auf das Pluszeichen und wählen Sie im Kontextmenü die Option Skript hinzufügen aus.

  4. Wählen Sie im Bereich Skript unter VerbindungstypRserve.

  5. Klicken Sie im Abschnitt Dateiname auf Durchsuchen, um Ihre Skriptdatei auszuwählen.
  6. Geben Sie den Funktionsnamen ein und drücken Sie die Eingabetaste, um Ihr Skript auszuführen.

Vielen Dank für Ihr Feedback!