Панды на AWS
Простая интеграция с Athena, Glue, Redshift, Timestream, OpenSearch, Neptune, QuickSight, Chime, CloudWatchLogs, DynamoDB, EMR, SecretManager, PostgreSQL, MySQL, SQLServer и S3 (Parquet, CSV, JSON и EXCEL).
Инициатива с открытым исходным кодом AWS Professional Service | [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"]})# Сохранение данных в данных 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", data="my_db")# Получение соединения Redshift из каталога Glue и получение данных из 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", "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""")
AWS SDK для pandas также позволяет масштабировать ваши рабочие процессы, используя Modin и Ray. Оба проекта направлены на ускорение обработки данных за счет распределения обработки по кластеру работников.
Прочтите нашу документацию или ознакомьтесь с нашими последними руководствами, чтобы узнать больше.
️ Ray в настоящее время недоступен для Python 3.12. Хотя AWS SDK для pandas поддерживает Python 3.12, его нельзя использовать в большом масштабе.
Что такое AWS SDK для панд?
Установить
ПиПи (пип)
Конда
Лямбда-слой AWS
Задания оболочки AWS Glue Python
Задания AWS Glue PySpark
Блокнот Amazon SageMaker
Жизненный цикл ноутбуков Amazon SageMaker
ЭМИ
Из источника
В масштабе
Начиная
Поддерживаемые 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 - ЭМИ
016 – ЭМИ и Докер
017 - Проекция перегородки
018 - Быстрый прицел
019 - Тайник Афины
020 - Совместимость таблиц Spark
021 – Глобальные конфигурации
022 — Одновременная запись разделов
023 - Гибкий фильтр разделов
024 – Метаданные запроса Athena
025 - Redshift - Загрузка файлов Parquet с помощью Spectrum
026 – временной поток Amazon
027 - Временной поток Amazon 2
028 — Амазонка DynamoDB
029 - Выбор S3
030 – API данных
031 – Открытый поиск
033 - Амазонка Нептун
034 - Распределение вызовов с помощью Ray
035 – Распределение вызовов в удаленном кластере Ray
037 - Качество данных клея
038 – OpenSearch без сервера
039 - Афина Айсберг
040 – бессерверная ЭМИ
041 — Apache Spark на Amazon Athena
Справочник по API
Амазонка S3
Каталог клеев AWS
Амазонка Афина
Амазонка Редшифт
PostgreSQL
MySQL
SQL-сервер
Оракул
API данных Redshift
API данных РДС
Открытый поиск
Качество данных AWS Glue
Амазонка Нептун
ДинамоДБ
Временной поток Amazon
Амазон ЭМР
Журналы Amazon CloudWatch
Амазонский колокольчик
Amazon QuickSight
АВС СТС
Менеджер секретов AWS
Глобальные конфигурации
Распределенный — Рэй
Лицензия
Содействие
Лучший способ взаимодействия с нашей командой — через GitHub. Вы можете открыть проблему и выбрать один из наших шаблонов для отчетов об ошибках, запросов на добавление функций... Вы также можете найти помощь на следующих ресурсах сообщества:
Канал Slack #aws-sdk-pandas
Задайте вопрос о переполнении стека и отметьте его awswrangler
Runbook для AWS SDK для панд с Ray
Примеры включения внутреннего журналирования:
import logging.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:
import logging.getLogger("awswrangler").setLevel(logging.DEBUG)