PySparkでデータ読み込み


PySparkのデータ処理一覧

今回はdatabricksでtableとcsvと parquetと圧縮ファイルの gzファイルを読み込むコードの例を紹介します。

1. tableからデータ読み込む

spark.table と spark.sqlでデータを読み込みます。

 

Pyspark

df = spark.table(“list”)

df.show()

+—+—-+—+
| id|name|age|
+—+—-+—+
|  1|Andy| 20|
|  2|Jack| 31|
|  3| Tom| 41|
+—+—-+—+

Pyspark

df = spark.sql(“select * from list”)

df.show()

+—+—-+—+
| id|name|age|
+—+—-+—+
|  1|Andy| 20|
|  2|Jack| 31|
|  3| Tom| 41|
+—+—-+—+

 

2. csvファイルを読み込む

spark.readでcsvファイルを読み込みます。

 

Pyspark 例1

df = (spark.read

     .option(“inferSchema”, “True”)

     .option(“header”, “True”)

     .csv(‘FileStore/tables/list.csv’))

df.show()

 

Pyspark 例2

sp_path = ‘FileStore/tables/list.csv’

df = spark.read.csv(sp_path, header=True, sep=’,’, inferSchema=True)

df.show()

 

3. parquetファイルを読み込む

spark.read.parquet やsqlContext.read.parquetでファイルを読み込みます。

 

Pyspark 例1

df = spark.read.parquet(“tmp/parquest_test”)

df.show()

 

Pyspark 例2

data = sqlContext.read.parquet(“tmp/parquest_test”)

df.show()

 

4. Gzipのファイルを読み込む

先ずlist.csv.gzをアップロードして、テーブルに変更します。

そして、spark.readでファイルを読み込みます。

pyspark_read1
pyspark_read2

Pyspark

sp_path = ‘FileStore/tables//list_csv-68497.gz’

df = spark.read.csv(sp_path, header=True, sep=’,’, inferSchema=True)

df.show()

+—+—-+—+
| id|name|age|
+—+—-+—+
|  1|Andy| 20|
|  2|Jack| 31|
|  3| Tom| 41|
+—+—-+—+