ログファイルのディレクトリ名をPysparkデータフレームにプルする

kikee1222

ちょっと変わったものがあります。トロールする必要のあるログがたくさんあります。私はSparkでそれを成功させました、そして私はそれに満足しています。

ただし、データセンターであるデータフレームにもう1つのフィールドを追加する必要があります。

データセンター名を取得できる唯一の場所は、ディレクトリパスからです。

例えば:

/feedname/date/datacenter/another/logfile.txt

ログファイルのパスを抽出してデータフレームに挿入する方法は何ですか?そこから、いくつかの文字列分割を実行して、必要なビットを抽出できます。

私の現在のコード:

mpe_data = my_spark.read\
    .option("header","false")\
    .option("delimiter", "\t")\
    .withColumn("Datacenter", input_file_name())\
    .csv('hdfs://nameservice/data/feed/mpe/dt=20191013/*/*/*', final_structure)
mpe_data.printSchema()
mpe_data.createOrReplaceTempView("mpe")
Joby

Spark2.0以降の_input_file_name_を使用してファイルパスを取得できます

from pyspark.sql.functions import input_file_name 
df.withColumn("Datacenter", input_file_name())

例としてコードを追加します。ファイルを読み取ったら、withcolumnを使用してfile_nameを取得します。

mpe_data = my_spark.read\
    .option("header","false")\
    .option("delimiter", "\t")\
    .csv('hdfs://nameservice/data/feed/mpe/dt=20191013/*/*/*', final_structure)

mpe_data.withColumn("Datacenter", input_file_name())

mpe_data.printSchema()

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

プログラムでWindowsのファイル/ディレクトリ名に引用符を追加する方法w

分類Dev

ディレクトリ内のすべての新しいファイルに新しいファイル名を作成するようにプログラムをコーディングするにはどうすればよいですか?

分類Dev

特定のプログラムのオーディオ出力をプログラムでファイルにリダイレクトする

分類Dev

結果のデータフレームに含まれるファイル名を含むSpark読み取りフォルダーディレクトリ

分類Dev

logbackでポータブルな方法でユーザーのホームディレクトリにログファイルを配置する方法は?

分類Dev

テンプレートのタグとフィルターのディレクトリ名を変更する

分類Dev

PYTHONディレクトリにある複数のファイルXMLを解析し、CSVファイルにデータをアップロードします

分類Dev

ディレクトリ内のファイルを動的にループする

分類Dev

ホームディレクトリのhs_err_pidログファイルをクリアする方法

分類Dev

Pyspark:文字列とプレフィックスの欠如に基づいてデータフレームをフィルタリングする方法は?

分類Dev

Webルートディレクトリの外にファイルをアップロードする

分類Dev

ファイル/ディレクトリ名にタイムスタンプを追加する

分類Dev

最初に特定のパターンでディレクトリ内のファイル名を変更する

分類Dev

タイプリストの列の値でデータフレームをフィルタリングする

分類Dev

リソースディレクトリのファイル名を取得する

分類Dev

プログラムでファイルを別のディレクトリにコピーするにはどうすればよいですか?

分類Dev

プログラムでファイルを別のディレクトリにコピーするにはどうすればよいですか?

分類Dev

ディレクトリとサブディレクトリからpysparkデータフレームにファイルを読み込む

分類Dev

ディレクトリをループし、ファイル名をtxtファイルに出力します

分類Dev

bashでファイルをループし、ディレクトリ名の先頭にのフィルタリング

分類Dev

Python Pandas:ディレクトリ内のファイルを同様のファイル名でグループ化し、データフレームを特定の順序で連結します

分類Dev

インデックス名でデータフレーム行をフィルタリングする

分類Dev

pysparkの辞書リストの値でデータフレームをフィルタリングする

分類Dev

vim /ファイルエクスプローラー:ブラウジングディレクトリを現在のディレクトリにします

分類Dev

Python2.7-ディレクトリ内のファイル名に特定の文字列を含むファイルをフィルタリングする

分類Dev

プログレスバーでディレクトリファイルをコピーする

分類Dev

ファイル名をpysparkデータフレームの異なる列に分割します

分類Dev

ユーザーのホームディレクトリにあるlog4jログファイル

分類Dev

構造を保持するディレクトリおよびサブディレクトリに特定のタイプのファイルをコピーする

Related 関連記事

  1. 1

    プログラムでWindowsのファイル/ディレクトリ名に引用符を追加する方法w

  2. 2

    ディレクトリ内のすべての新しいファイルに新しいファイル名を作成するようにプログラムをコーディングするにはどうすればよいですか?

  3. 3

    特定のプログラムのオーディオ出力をプログラムでファイルにリダイレクトする

  4. 4

    結果のデータフレームに含まれるファイル名を含むSpark読み取りフォルダーディレクトリ

  5. 5

    logbackでポータブルな方法でユーザーのホームディレクトリにログファイルを配置する方法は?

  6. 6

    テンプレートのタグとフィルターのディレクトリ名を変更する

  7. 7

    PYTHONディレクトリにある複数のファイルXMLを解析し、CSVファイルにデータをアップロードします

  8. 8

    ディレクトリ内のファイルを動的にループする

  9. 9

    ホームディレクトリのhs_err_pidログファイルをクリアする方法

  10. 10

    Pyspark:文字列とプレフィックスの欠如に基づいてデータフレームをフィルタリングする方法は?

  11. 11

    Webルートディレクトリの外にファイルをアップロードする

  12. 12

    ファイル/ディレクトリ名にタイムスタンプを追加する

  13. 13

    最初に特定のパターンでディレクトリ内のファイル名を変更する

  14. 14

    タイプリストの列の値でデータフレームをフィルタリングする

  15. 15

    リソースディレクトリのファイル名を取得する

  16. 16

    プログラムでファイルを別のディレクトリにコピーするにはどうすればよいですか?

  17. 17

    プログラムでファイルを別のディレクトリにコピーするにはどうすればよいですか?

  18. 18

    ディレクトリとサブディレクトリからpysparkデータフレームにファイルを読み込む

  19. 19

    ディレクトリをループし、ファイル名をtxtファイルに出力します

  20. 20

    bashでファイルをループし、ディレクトリ名の先頭にのフィルタリング

  21. 21

    Python Pandas:ディレクトリ内のファイルを同様のファイル名でグループ化し、データフレームを特定の順序で連結します

  22. 22

    インデックス名でデータフレーム行をフィルタリングする

  23. 23

    pysparkの辞書リストの値でデータフレームをフィルタリングする

  24. 24

    vim /ファイルエクスプローラー:ブラウジングディレクトリを現在のディレクトリにします

  25. 25

    Python2.7-ディレクトリ内のファイル名に特定の文字列を含むファイルをフィルタリングする

  26. 26

    プログレスバーでディレクトリファイルをコピーする

  27. 27

    ファイル名をpysparkデータフレームの異なる列に分割します

  28. 28

    ユーザーのホームディレクトリにあるlog4jログファイル

  29. 29

    構造を保持するディレクトリおよびサブディレクトリに特定のタイプのファイルをコピーする

ホットタグ

アーカイブ