Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates.
© 2022, Amazon Web Services, Inc. or its affiliates.
5分ではじめる
Spark on AWS
Noritaka Sekiyama
Principal Big Data Architect, AWS Glue
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates.
関山 宜孝
Principal Big Data Architect, AWS Glue
• 5年間 AWS サポートにて技術支援を担当
• 2019年からGlue開発チームにジョイン
@moomindani
moomindani
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates.
こんなことありませんか?
3
CSVファイルを
JSONに変換したい
ファイルから文字列を
検索・集計したい
データベースからデータを
抽出してファイルに書き出したい
CSV ファイルを
特定のカラムでソートしたい
Amazon S3 上のデータを
Amazon DynamoDB に移動したい
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates.
CSVファイルをJSONに変換したい
4
import pandas as pd
df = pd.read_csv("s3://amazon-reviews-pds/tsv/sample_us.tsv", sep='t')
df.to_json("sample_us.json")
import json
import csv
import s3fs
json_list = []
json_data = {}
fs = s3fs.S3FileSystem(anon=True)
with fs.open('amazon-reviews-pds/tsv/sample_us.tsv', 'r') as f:
for line in csv.DictReader(f, delimiter='t’):
json_list.append(line)
json_data["data"] = json_list
with open('sample_us.json', 'w') as f:
json.dump(json_data, f)
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates.
CSVファイルをJSONに変換したい
5
データサイズ 圧縮形式 処理時間
15 KB 非圧縮 2 秒
442 MB gzip 719 秒
2.7 GB gzip 5336 秒
• Macbook Pro 2019, Python 3.7.2
• Pandas による CSV->JSON 変換
• us-east-1 上の S3 バケット (Public Dataset) を使用
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates.
データが大きいと・・・?
6
100GBのCSVファイルを
JSONに変換したい
1TBのファイルから文字列を
検索・集計したい
データベースから1TBのデータを
抽出してファイルに書き出したい
100GBのCSV ファイルを
特定のカラムでソートしたい
Amazon S3 上の1TBのデータを
Amazon DynamoDB に移動したい
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates.
AWS で分散処理!
7
AWS Glue
Amazon Athena
Amazon EMR Amazon Redshift
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates.
AWS で分散処理!
8
Amazon Athena
Amazon EMR Amazon Redshift
AWS Glue
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates. 9
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates. 10
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates. 11
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates. 12
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates. 13
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates. 14
JAWS DAYS 2022
© 2022, Amazon Web Services, Inc. or its affiliates.
Thank you!
© 2022, Amazon Web Services, Inc. or its affiliates.
Noritaka Sekiyama
@moomindani
moomindani

More Related Content

5分ではじめるApache Spark on AWS

  • 1. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. © 2022, Amazon Web Services, Inc. or its affiliates. 5分ではじめる Spark on AWS Noritaka Sekiyama Principal Big Data Architect, AWS Glue
  • 2. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. 関山 宜孝 Principal Big Data Architect, AWS Glue • 5年間 AWS サポートにて技術支援を担当 • 2019年からGlue開発チームにジョイン @moomindani moomindani
  • 3. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. こんなことありませんか? 3 CSVファイルを JSONに変換したい ファイルから文字列を 検索・集計したい データベースからデータを 抽出してファイルに書き出したい CSV ファイルを 特定のカラムでソートしたい Amazon S3 上のデータを Amazon DynamoDB に移動したい
  • 4. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. CSVファイルをJSONに変換したい 4 import pandas as pd df = pd.read_csv("s3://amazon-reviews-pds/tsv/sample_us.tsv", sep='t') df.to_json("sample_us.json") import json import csv import s3fs json_list = [] json_data = {} fs = s3fs.S3FileSystem(anon=True) with fs.open('amazon-reviews-pds/tsv/sample_us.tsv', 'r') as f: for line in csv.DictReader(f, delimiter='t’): json_list.append(line) json_data["data"] = json_list with open('sample_us.json', 'w') as f: json.dump(json_data, f)
  • 5. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. CSVファイルをJSONに変換したい 5 データサイズ 圧縮形式 処理時間 15 KB 非圧縮 2 秒 442 MB gzip 719 秒 2.7 GB gzip 5336 秒 • Macbook Pro 2019, Python 3.7.2 • Pandas による CSV->JSON 変換 • us-east-1 上の S3 バケット (Public Dataset) を使用
  • 6. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. データが大きいと・・・? 6 100GBのCSVファイルを JSONに変換したい 1TBのファイルから文字列を 検索・集計したい データベースから1TBのデータを 抽出してファイルに書き出したい 100GBのCSV ファイルを 特定のカラムでソートしたい Amazon S3 上の1TBのデータを Amazon DynamoDB に移動したい
  • 7. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. AWS で分散処理! 7 AWS Glue Amazon Athena Amazon EMR Amazon Redshift
  • 8. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. AWS で分散処理! 8 Amazon Athena Amazon EMR Amazon Redshift AWS Glue
  • 9. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. 9
  • 10. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. 10
  • 11. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. 11
  • 12. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. 12
  • 13. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. 13
  • 14. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. 14
  • 15. JAWS DAYS 2022 © 2022, Amazon Web Services, Inc. or its affiliates. Thank you! © 2022, Amazon Web Services, Inc. or its affiliates. Noritaka Sekiyama @moomindani moomindani

Editor's Notes

  1. AWS Glue, Lake Formation チームの関山と申します。 ビッグデータアーキテクトとしてプロダクトチームで働いており、データレイクに関するサービスサイドの開発や、グローバルのお客様の技術支援を担当しています。 また、先日は「AWSではじめるデータレイクという本」を出版したり、GitHub awslabs にてライブラリやツールなども提供したりもしておりますので、よろしければご覧ください。