AWS 上のパンダ
Athena、Glue、Redshift、Timestream、OpenSearch、Neptune、QuickSight、Chime、CloudWatchLogs、DynamoDB、EMR、SecretManager、PostgreSQL、MySQL、SQLServer、S3 (Parquet、CSV、JSON、EXCEL) と簡単に統合できます。
AWS プロフェッショナルサービスのオープンソースイニシアチブ | [email protected]
ソース | ダウンロード | インストールコマンド |
---|---|---|
ピピ | pip install awswrangler | |
コンダ | conda install -c conda-forge awswrangler |
️ バージョン 3.0 以降では、オプションのモジュールを明示的にインストールする必要があります。
➡️pip install 'awswrangler[redshift]'
クイックスタート
大規模に
ドキュメントを読む
助けを求める
ロギング
インストールコマンド: pip install awswrangler
️ バージョン 3.0 以降では、オプションのモジュールを明示的にインストールする必要があります。
➡️pip install 'awswrangler[redshift]'
import awswrangler as wrimport pandas as pdfrom datetime import datetimedf = pd.DataFrame({"id": [1, 2], "value": ["foo", "boo"]})# Data Lakewr.s3 にデータを保存します。 to_parquet(df=df,path="s3://bucket/dataset/",dataset=True,database="my_db",table="my_table")# Amazon から直接データを取得する S3df = wr.s3.read_parquet("s3://bucket/dataset/", dataset=True)# Amazon からデータを取得する Athenadf = wr.athena.read_sql_query("SELECT * FROM my_table", Database="my_db")# Glue Catalog から Redshift 接続を取得し、Redshift Spectrumcon からデータを取得します = wr.redshift.connect("my-glue-connection")df = wr.redshift.read_sql_query("SELECT * FROM external_schema.my_table", con=con)con.close()# Amazon Timestream Writedf = pd.DataFrame({ "time": [datetime.now(), datetime.now()]、"my_dimension": ["foo", "ブー"]、"測定": [1.0、1.1]、 })rejected_records = wr.timestream.write(df,database="sampleDB",table="sampleTable",time_col="time",measure_col="measure",dimensions_cols=["my_dimension"], )# Amazon Timestream Querywr.timestream.query("""SELECT time,measure_value::double,my_dimensionFROM "sampleDB"."sampleTable" ORDER BY time DESC LIMIT 3""")
AWS SDK for pandas では、Modin と Ray を活用してワークフローを大規模に実行することもできます。どちらのプロジェクトも、ワーカーのクラスターに処理を分散することでデータ ワークロードを高速化することを目的としています。
詳細については、ドキュメントを読むか、最新のチュートリアルにアクセスしてください。
️ Ray は現在、Python 3.12 では使用できません。 AWS SDK for pandas は Python 3.12 をサポートしていますが、大規模には使用できません。
パンダ用の AWS SDK とは何ですか?
インストール
ピピ(ピピ)
コンダ
AWSラムダレイヤー
AWS Glue Python シェル ジョブ
AWS Glue PySpark ジョブ
Amazon SageMaker ノートブック
Amazon SageMaker ノートブックのライフサイクル
EMR
ソースから
大規模に
はじめる
サポートされている API
リソース
チュートリアル
001 - はじめに
002 - セッション
003 - アマゾンS3
004 - 寄木細工のデータセット
005 - 接着剤カタログ
006 - アマゾン・アテナ
007 - データベース (Redshift、MySQL、PostgreSQL、SQL Server、Oracle)
008 - Redshift - .ipynb のコピーとアンロード
009 - Redshift - 追加、上書き、アップサート
010 - 寄木細工のクローラー
011 - CSV データセット
012 - CSV クローラー
013 - S3 でのデータセットの結合
014 - スキーマの進化
015 - EMR
016 - EMR と Docker
017 - パーティションの投影
018 - クイックサイト
019 - アテナキャッシュ
020 - Spark テーブルの相互運用性
021 - グローバル構成
022 - パーティションの同時書き込み
023 - フレキシブル パーティション フィルター
024 - Athena クエリメタデータ
025 - Redshift - Spectrum を使用した Parquet ファイルのロード
026 - アマゾンタイムストリーム
027 - アマゾンタイムストリーム2
028 - Amazon DynamoDB
029 - S3セレクト
030 - データAPI
031 - オープンサーチ
033 - アマゾン・ネプチューン
034 - Ray を使用した通話の分散
035 - Ray リモート クラスターでの通話の分散
037 - グルーのデータ品質
038 - OpenSearch サーバーレス
039 - アテナ・アイスバーグ
040 - EMR サーバーレス
041 - Amazon Athena の Apache Spark
APIリファレンス
アマゾンS3
AWS Glue カタログ
アマゾンアテナ
アマゾン赤方偏移
PostgreSQL
MySQL
SQLサーバー
オラクル
データ API 赤方偏移
データAPI RDS
オープンサーチ
AWS Glueのデータ品質
アマゾン ネプチューン
DynamoDB
アマゾンタイムストリーム
アマゾンEMR
Amazon CloudWatch ログ
アマゾンチャイム
アマゾンクイックサイト
AWS STS
AWS シークレットマネージャー
グローバル構成
分散型 - レイ
ライセンス
貢献する
私たちのチームと対話する最良の方法は、GitHub を使用することです。問題を開いて、バグ レポートや機能リクエスト用のテンプレートから 1 つを選択できます。また、次のコミュニティ リソースでヘルプを見つけることもできます。
#aws-sdk-pandas Slack チャネル
Stack Overflow で質問し、 awswrangler
でタグ付けします
Ray を使用したパンダ用 AWS SDK の Runbook
内部ログの有効化の例:
importlogginglogging.basicConfig(level=logging.INFO, format="[%(name)s][%(funcName)s] %(message)s")logging.getLogger("awswrangler").setLevel(logging.DEBUG) logging.getLogger("botocore.credentials").setLevel(logging.CRITICAL)
AWS ラムダへ:
importlogginglogging.getLogger("awswrangler").setLevel(logging.DEBUG)