0 / 0
Zurück zur englischen Version der Dokumentation
Projektbibliothek für R
Letzte Aktualisierung: 21. Nov. 2024
Projektbibliothek für R

Wenn Sie mit Ihren watsonx.ai Studio-Projekten und Projekt-Assets von einem Notebook aus interagieren müssen, können Sie die ' project-lib -Bibliothek für R verwenden. Die Bibliothek ist wie eine programmgesteuerte Schnittstelle zu einem Projekt.

Wenn Sie die project-lib -Bibliothek für R verwenden, können Sie auf Projektmetadaten und Assets zugreifen, einschließlich Dateien und Verbindungen. Die Bibliothek enthält außerdem Funktionen, von denen das Abrufen von Dateien vereinfacht wird, die dem Projekt zugeordnet sind.

Hinweis:


-Die project-lib -Funktionen verschlüsseln oder decodieren keine Daten, wenn Daten in einer Datei gespeichert oder aus einer Datei abgerufen werden.
-Die project-lib -Funktionen können nicht für den Zugriff auf verbundene Ordnerassets (Dateien in einem Pfad in Cloud Object Storage) verwendet werden.

Bibliothek verwenden

Die Bibliothek project-lib für R ist vorinstalliert und kann direkt in ein Notebook im Notebook-Editor importiert werden. Zur Verwendung der Bibliothek project-lib in Ihrem Notebook benötigen Sie die ID des Projekts und das Projekttoken.

Gehen Sie wie folgt vor, um das Projekttoken in Ihr Notebook einzufügen:

  1. Klicken Sie auf das Symbol Mehr in der Symbolleiste Ihres Notebooks und anschließend auf Projekttoken einfügen.

    Wenn ein Projekttoken vorhanden ist, wird Ihrem Notebook eine Zelle mit den folgenden Informationen hinzugefügt:

    library(projectLib)
    project <- projectLib::Project$new(sc, "<ProjectId>", "<ProjectToken>")
    

    sc gibt den Spark-Kontext an, sofern Spark verwendet wird. <ProjectId> ist die ID Ihres Projekts und <ProjectToken> ist der Wert des Projekttokens.

    Wenn eine Nachricht darauf hinweist, dass kein Projekttoken vorhanden ist, klicken Sie auf den Link in der Nachricht, um die Seite Zugriffssteuerung für das Projekt aufzurufen, auf der Sie ein Projekttoken erstellen können. Sie müssen die Berechtigung zum Erstellen eines Projekttokens haben. Details hierzu finden Sie in Projekttoken manuell hinzufügen.

    Gehen Sie wie folgt vor, um ein Projekttoken zu erstellen:

    1. Wählen Sie auf der Registerkarte Verwalten die Seite Zugriffssteuerung aus und klicken Sie unter Zugriffstokens auf Neues Zugriffstoken.
    2. Geben Sie einen Namen ein, wählen Sie die Rolle Editor für das Projekt aus und erstellen Sie ein Token.
    3. Rufen Sie wieder Ihr Notebook auf, klicken Sie auf das Symbol Mehr in der Symbolleiste des Notebooks und klicken Sie anschließend auf Projekttoken einfügen.

Die project-lib-Funktionen

Das instanziierte Projektobjekt, das nach dem Importieren der Bibliothek project-lib erstellt wird, macht eine Gruppe von Funktionen zugänglich, die wie folgt gruppiert sind:

Projektinformationen abrufen

Sie können die folgenden Funktionen verwenden, um projektbezogene Informationen programmgesteuert abzurufen.

  • get_name()

    Bei Verwendung dieser Funktion wird der Name des Projekts zurückgegeben.

  • get_description()

    Bei Verwendung dieser Funktion wird die Beschreibung des Projekts zurückgegeben.

  • get_metadata()

    Bei Verwendung dieser Funktion werden die Projektmetadaten zurückgegeben.

  • get_storage_metadata()

    Diese Funktion gibt die Metadaten des Objektspeichers zurück, der dem Projekt zugeordnet ist.

  • get_project_bucket_name()

    Diese Funktion gibt den Namen des Projektbuckets im zugeordneten Objektspeicher zurück. Alle Projektdateien werden in diesem Bucket gespeichert.

  • get_files()

    Bei Verwendung dieser Funktion wird eine Liste der Dateien im Projekt zurückgegeben. Jedes Element in der zurückgegebenen Liste enthält die ID und den Namen der Datei. Die Liste der zurückgegebenen Dateien wird nicht nach einem Kriterium sortiert und kann sich ändern, wenn Sie die Funktion erneut aufrufen.

  • get_assets()

    Bei Verwendung dieser Funktion wird eine Liste aller Projektassets zurückgegeben. Sie können den optionalen Parameter assetType an die Funktion get_assets übergeben, um die Assets nach Typ zu filtern. Zulässige Werte für diesen Parameter sind data_asset, connection und asset. Der Wert asset gibt alle Assets in Ihrem Projekt zurück. Verwenden Sie beispielsweise die Funktion get_assets("data_asset"), um nur die Datenassets abzurufen.

  • get_connections()

    Bei Verwendung dieser Funktion wird eine Liste der Verbindungen im Projekt zurückgegeben. Jedes Element in der zurückgegebenen Liste enthält die ID und den Namen der Verbindung.

Dateien abrufen

Mit der folgenden Funktion können Sie Dateien abzurufen, die in dem Objektspeicher gespeichert sind, der Ihrem Projekt zugeordnet ist.

Zum Abrufen von Dateien gibt es zwei Methoden:

  • get_file_url(filename) - Dabei ist filename der Name der Datei, die Sie abrufen möchten.

    Diese Funktion gibt die URL zurück, über die eine Datei unter Verwendung von Spark aus dem Objektspeicher abgerufen wird. Die URL wird auf der Basis des Typs des Objektspeichers erstellt, der dem Projekt zugeordnet ist. Hadoop-Konfigurationen werden automatisch eingerichtet, wenn Sie mit dem Objektspeicher Ihres Projekts interagieren.

    Im folgenden Beispiel wird veranschaulicht, wie Sie mit dieser Funktion unter Verwendung von Spark Daten aus dem Objektspeicher abrufen:

    # Import the lib
    library(projectLib)
    project <- projectLib::Project$new(sc, "<ProjectId>", "<ProjectToken>")
    
    # Get the url
    url <- project$get_file_url("myFile.csv")
    
    # Fetch the CSV file from the object storage using Spark
    invisible(sparkR.session(appName = "SparkSession R"))
    
    df.data <- read.df(
        url,
        source = "org.apache.spark.sql.execution.datasources.csv.CSVFileFormat",
        header = "true")
    head(df.data)
    
  • get_file(filename) - Dabei ist filename der Name der Datei, die Sie abrufen möchten.

    Bei Verwendung dieser Funktion wird eine Datei in dem Hauptspeicher des aktiven Kernels abgerufen. Von der Funktion wird ein Bytepuffer zurückgegeben, mit dem Bindungen für kernelspezifische Datenstrukturen erstellt werden können, zum Beispiel ein R-Datenrahmen. Diese Methode zum Abrufen von Dateien wird nicht für umfangreiche Dateien empfohlen.

    Im folgenden Beispiel wird veranschaulicht, wie eine Datei abgerufen und die Daten in einem R-Datenrahmen gelesen werden:

    # Import project lib
    library(projectLib)
    project <- projectLib::Project$new(sc , "<ProjectId>", "<ProjectToken>")
    
    # Fetch data
    my.file <- project$get_file("my_file.csv")
    
    # Read the CSV data file into a data frame
    df.data <-  read.csv(text = rawToChar(my.file))
    head(df.data)
    

Daten speichern

Mit der folgenden Funktion können Sie Daten in dem Objektspeicher speichern, der dem Projekt zugeordnet ist. Die Daten werden dem zugeordneten Cloudobjektspeicher als Projektbucket hinzugefügt. Von dieser Funktion werden mehrere Aktionen ausgeführt. Zunächst werden die Daten in den Objektspeicher gestellt und anschließend werden sie als Datenasset zum Projekt hinzugefügt, sodass die Daten, die Sie als Datei gespeichert haben, in der Datenassetliste im Projekt angezeigt werden.

save_data(filename, data, setProjectAsset=TRUE, overwrite=FALSE)

Von der Funktion werden die folgenden Parameter verwendet:

  • filename: Der Name der erstellten Datei.
  • data: Die Daten, die hochgeladen werden sollen. Gültige Typen für diesen Parameter sind unformatierte R-Objekte oder Zeichenfolgepuffer.
  • setProjectAsset[optional]: Fügt die Datei als Datenasset zum Projekt hinzu, nachdem die Daten erfolgreich in den Objektspeicher hochgeladen wurden. Hierbei wird ein boolescher Wert festgelegt, standardmäßig ist der Wert 'true'.
  • overwrite[optional]: Überschreibt die Datei, wenn sie im Objektspeicher oder im Projekt bereits vorhanden ist. Standardwert ist 'false'.

Im folgenden Beispiel wird veranschaulicht, wie Sie Daten in einer Datei im Objektspeicher speichern können:

library("projectLib")
project <- access_project()

# Capture CSV data from console output
csv_lines <- capture.output(write.csv(df.data, row.names=FALSE), type="output")
csv_raw <- charToRaw(paste0(csv_lines, collapse='\n'))

project$save_data("file.csv", csv_raw)

Daten von Verbindung lesen

Mit der folgenden Funktion können Sie Metadaten (Berechtigungsnachweise) einer bestimmten Verbindung abrufen.

get_connection: Die Funktion akzeptiert als Eingabe die ID der Verbindung oder den Namen der Verbindung. Diese Werte können Sie mit der Funktion get_assets() abrufen, die id, name und type für alle im Projekt aufgelisteten Assets zurückgibt.

Die Funktion get_connection gibt Berechtigungsnachweise der Verbindungen zurück, die Sie zum Abrufen von Daten aus der Datenquelle der Verbindung verwenden können.

Das folgende Beispiel zeigt, wie Sie die Berechtigungsnachweise einer Verbindung mit der Funktion get_connection abrufen können:

# Import project lib
library(projectLib)
project <- projectLib::Project$new(sc , "<ProjectId>", "<ProjectToken>")

# Fetch connection
conn.cred <- project$get_connection(name="<ConnectionName>")

Wenn die Verbindung zum Beispiel eine Verbindung zu dashDB ist, können Sie die Daten durch Ausführen des folgenden Codes abrufen:

library(ibmdbR)

props <- paste("DASHDB;DATABASE=BLUDB;HOSTNAME=", conn.cred$host, ";PORT=50000;PROTOCOL=TCPIP;", sep="")
conn <- idaConnect(props, uid = conn.cred$username, pwd = conn.cred$password, conType = "odbc")
idaInit(conn)

idf.1 <- ida.data.frame('<TableName>')
head(idf.1)

Verbundene Daten abrufen

Mit der folgenden Funktion können Sie die Berechtigungsnachweise der verbundenen Daten abrufen. Die Funktion gibt ein Wörterverzeichnis zurück, das die Verbindungsberechtigungsnachweise enthält und ein Attribut datapath, das auf bestimmte Daten in dieser Verbindung verweist (z. B. eine Tabelle in einer dashDB-Instanz oder eine Datenbank in einer Cloudant-Instanz).

get_connected_data: Diese Funktion akzeptiert als Eingabe die ID oder den Namen der verbundenen Daten. Diese Werte können Sie mit der Funktion get_assets() abrufen, die id, name und type für alle im Projekt aufgelisteten Assets zurückgibt.

Das folgende Beispiel zeigt, wie Sie die Berechtigungsnachweise für die verbundenen Daten in einer dashDB-Instanz mit der Funktion get_connected_data abrufen können:

# Import project lib
library(projectLib)
project <- projectLib::Project$new(sc , "<ProjectId>", "<ProjectToken>")

# Fetch credentials of the connected data
conn.data <- project$get_connected_data(id="<ConnectedDataId>")

Übergeordnetes Thema: Daten in ein Notebook laden und darauf zugreifen

Generative KI-Suche und -Antwort
Diese Antworten werden von einem großen Sprachmodell in watsonx.ai basierend auf dem Inhalt der Produktdokumentation generiert. Weitere Informationen