注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

R ファイルシステム API

R TransformInput オブジェクト

Foundry データセットに対する低レベル操作のインターフェースです。

spark.df()

data.frame()

fileSystem()

  • FoundryFS に直接アクセスするための FileSystem オブジェクトを返します。

R TransformOutput オブジェクト

Foundry データセットに対する低レベルの書き込み操作のインターフェースです。

write.spark.df(df, partition_cols=NULL, bucket_cols=NULL, bucket_count=NULL, sort_by=NULL)

  • 指定された DataFrame ↗ を出力データセットに書き込みます。

    パラメーター
    • df (pyspark.sql.DataFrame) – 書き込む PySpark データフレームです。
    • partition_cols (List[str], 任意) - データを書き込むときに使用する列によるパーティション分割です。
    • bucket_cols (List[str], 任意) - データをバケット分割する基準となる列です。bucket_count が指定されている場合は、必ず指定してください。
    • bucket_count (int, 任意) – バケット数です。bucket_cols が指定されている場合は、必ず指定してください。
    • sort_by (List[str], 任意) - バケット分割されたデータを並べ替える基準となる列です。

write.data.frame(rdf)

  • 指定された R data.frame ↗ を出力データセットに書き込みます。

fileSystem()

  • FoundryFS に直接アクセスするための FileSystem オブジェクトを返します。

R FileSystem オブジェクト

ls(glob=NULL, regex='.*', show_hidden=FALSE)

  • データセットのルートディレクトリを基準として、指定されたパターン(glob または regex)に一致するすべてのファイルを一覧表示します。

    パラメーター
    • glob (str, 任意) – Unix のファイル照合パターンです。globstar もサポートしています。
    • regex (str, 任意) – ファイル名の照合に使用する正規表現パターンです。
    • show_hidden (bool, 任意) – 「.」または「_」で始まる隠しファイルを含めます。
    戻り値FileStatus 名前付きタプル (path, size, modified) の R 配列 - 論理パス、ファイルサイズ(バイト)、変更時のタイムスタンプ(1970年1月1日 UTC からの経過ミリ秒)

open(path, open='r', disk_optimal=FALSE, encoding=default)

  • 指定されたモードで FoundryFS ファイルを開きます。

    パラメーター
    • path (str) – データセット内のファイルの論理パスです。(リモートパス)
    • open (str) - 接続を開くときのモードの説明です。
    • disk_optimal (bool, 任意) – FoundryFileSystem によるファイルの入出力処理を制御します。
    • encoding (str, 任意) - デフォルトは R 言語のデフォルト (UTF-8) です。
    戻り値R 接続オブジェクト

get_path(path, open='r', disk_optimal=FALSE, encoding=default)

  • 指定された FoundryFS(リモート)パスに対して、ローカルの一時パスを返します。

    パラメーター
    • path (str) – データセット内のファイルの論理パスです。(リモートパス)
    • open (str) - 接続を開くときのモードの説明です。
    • disk_optimal (bool, 任意) – FoundryFileSystem によるファイルの入出力処理を制御します。
    • encoding (str, 任意) - デフォルトは R 言語のデフォルト (UTF-8) です。
    戻り値str

upload(local_path, remote_path)

  • ローカルパスからリモートパスにファイルをアップロードします。書き込み専用です。

    パラメーター
    • local_path (str) – アップロードするファイルのローカルパスです。
    • remote_path (str) - データセット内のファイルの論理パスです。
    戻り値None

高度なトピック:disk_optimal 設定

FileSystem の open() メソッドと get_path() メソッドでは、disk_optimal 引数でファイルの入出力 (i/o) の処理方法を制御します。

デフォルトでは、open() と get_path() のどちらでも disk_optimal は FALSE に設定されています。このモードでは、ファイルは必ずアクセス前にダウンロードされます。

disk_optimal を TRUE に設定すると、コードの実行と並行してファイルがダウンロードされます。正しく読み取るには、ローカルの一時パスを fifo() 経由で開く必要があります。また、すべてのライブラリがこの種類のファイルの読み取りをサポートしているわけではありません。

読み取るファイルが非常に大きい場合は、disk_optimal を TRUE に設定することもできます。

たとえば、非常に大きい txt ファイルがあり、最初の10行だけを読み取りたいとします。以下のコードを使用すると、ファイル全体を読み取らずに最初の10行だけを表示できます。

Copied!
1 2 3 4 5 6 7 8 9 10 11 disk_optimal_example<- function(large_txt_file) { fs <- large_txt_file$fileSystem() ## Open a connection with fifo() ## The text file is titled large_txt_file.txt conn <- fs$open("large_txt_file.txt", "r", disk_optimal = TRUE) A <- readLines(conn, n = 10) print(A) return(NULL) }

R TransformOutput を使用してファイルを書き込んだ後に読み取る場合は、disk_optimal を false に設定する必要があります。