Pandas auf AWS
Einfache Integration mit Athena, Glue, Redshift, Timestream, OpenSearch, Neptune, QuickSight, Chime, CloudWatchLogs, DynamoDB, EMR, SecretManager, PostgreSQL, MySQL, SQLServer und S3 (Parquet, CSV, JSON und EXCEL).
Eine Open-Source-Initiative von AWS Professional Service | [email protected]
Quelle | Downloads | Installationsbefehl |
---|---|---|
PyPi | pip install awswrangler | |
Conda | conda install -c conda-forge awswrangler |
️ Ab Version 3.0 müssen optionale Module explizit installiert werden:
➡️pip install 'awswrangler[redshift]'
Schnellstart
Im Maßstab
Lesen Sie die Dokumentation
Hilfe bekommen
Protokollierung
Installationsbefehl: pip install awswrangler
️ Ab Version 3.0 müssen optionale Module explizit installiert werden:
➡️pip install 'awswrangler[redshift]'
import awswrangler as wrimport pandas as pdfrom datetime import datetimedf = pd.DataFrame({"id": [1, 2], "value": ["foo", "boo"]})# Speichern von Daten auf Data Lakewr.s3. to_parquet(df=df,path="s3://bucket/dataset/",dataset=True,database="my_db",table="my_table")# Abrufen der Daten direkt von Amazon S3df = wr.s3.read_parquet("s3://bucket/dataset/", dataset=True)# Abrufen der Daten von Amazon Athenadf = wr.athena.read_sql_query("SELECT * FROM my_table", Datenbank="my_db")# Erhalten Sie eine Redshift-Verbindung aus dem Glue-Katalog und rufen Sie Daten aus Redshift ab 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“, „boo“], „measure“: [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""")
Mit dem AWS SDK für Pandas können Sie Ihre Workflows auch in großem Maßstab ausführen, indem Sie Modin und Ray nutzen. Beide Projekte zielen darauf ab, die Datenarbeitslast zu beschleunigen, indem die Verarbeitung auf eine Gruppe von Mitarbeitern verteilt wird.
Lesen Sie unsere Dokumente oder schauen Sie sich unsere neuesten Tutorials an, um mehr zu erfahren.
️ Ray ist derzeit nicht für Python 3.12 verfügbar. Obwohl das AWS SDK für Pandas Python 3.12 unterstützt, kann es nicht im großen Maßstab verwendet werden.
Was ist AWS SDK für Pandas?
Installieren
PyPi (Pip)
Conda
AWS Lambda-Schicht
AWS Glue Python Shell-Jobs
AWS Glue PySpark-Jobs
Amazon SageMaker-Notizbuch
Amazon SageMaker Notebook-Lebenszyklus
EMR
Aus der Quelle
Im Maßstab
Erste Schritte
Unterstützte APIs
Ressourcen
Tutorials
001 - Einführung
002 – Sitzungen
003 – Amazon S3
004 – Parkett-Datensätze
005 – Leimkatalog
006 - Amazone Athene
007 – Datenbanken (Redshift, MySQL, PostgreSQL, SQL Server und Oracle)
008 – Redshift – Kopieren und Entladen.ipynb
009 – Redshift – Anhängen, Überschreiben und Upsert
010 – Parkettraupe
011 – CSV-Datensätze
012 – CSV-Crawler
013 – Datensätze auf S3 zusammenführen
014 – Schemaentwicklung
015 - EMR
016 – EMR und Docker
017 – Partitionsprojektion
018 – QuickSight
019 – Athena-Cache
020 – Interoperabilität von Spark-Tabellen
021 – Globale Konfigurationen
022 – Partitionen gleichzeitig schreiben
023 – Flexibler Partitionsfilter
024 – Athena-Abfragemetadaten
025 – Redshift – Laden von Parquet-Dateien mit Spectrum
026 – Amazon Timestream
027 – Amazon Timestream 2
028 – Amazon DynamoDB
029 - S3 Auswählen
030 – Daten-API
031 – OpenSearch
033 - Amazonas Neptun
034 - Anrufe mit Ray verteilen
035 – Verteilen von Anrufen auf Ray Remote Cluster
037 – Qualität der Klebedaten
038 – OpenSearch Serverless
039 – Athene Eisberg
040 – EMR Serverlos
041 – Apache Spark auf Amazon Athena
API-Referenz
Amazon S3
AWS Glue-Katalog
Amazonas Athene
Amazon Redshift
PostgreSQL
MySQL
SQL-Server
Orakel
Daten-API Redshift
Daten-API RDS
OpenSearch
AWS Glue-Datenqualität
Amazon Neptun
DynamoDB
Amazon Timestream
Amazon EMR
Amazon CloudWatch-Protokolle
Amazon Chime
Amazon QuickSight
AWS STS
AWS Secrets Manager
Globale Konfigurationen
Verteilt - Ray
Lizenz
Mitwirken
Der beste Weg, mit unserem Team zu interagieren, ist über GitHub. Sie können ein Problem öffnen und aus einer unserer Vorlagen für Fehlerberichte, Funktionsanfragen usw. auswählen. Möglicherweise finden Sie auch Hilfe in diesen Community-Ressourcen:
Der Slack-Kanal #aws-sdk-pandas
Stellen Sie eine Frage auf Stack Overflow und markieren Sie sie mit awswrangler
Runbook für AWS SDK für Pandas mit Ray
Beispiele für die Aktivierung der internen Protokollierung:
import logginglogging.basicConfig(level=logging.INFO, format="[%(name)s][%(funcName)s] %(message)s")logging.getLogger("awswrangler").setLevel(logging.DEBUG) logging.getLogger("botocore.credentials").setLevel(logging.CRITICAL)
In AWS Lambda:
import logginglogging.getLogger("awswrangler").setLevel(logging.DEBUG)