Бесплатные курсы и туториалы:
🎓 Python for Beginners: Free Course to Learn Python Basics
🔨 Python Projects: 30 Cool, Easy & Fun Python Projects with Source Code [2023]
🚸 DSA with Python: Intro to Data Structures & Algorithms
🌐 Learn Flask: Create fully-featured, interactive web applications with Flask
🔧 Flask Projects: 10+ Unique Flask Projects with Source Code – 2023
🔄 Learn REST API with Flask: Python REST APIs With Flask, Connexion, and SQLAlchemy
🧩 Learn Multithreading & Asyncio: Python Multithreading and Multiprocessing Tutorial
🚦 Gunicorn & Nginx with Flask: How To Serve Flask Applications with Gunicorn and Nginx on Ubuntu 18.04
✅ TDD with Python & Flask: Modern Test-Driven Development in Python
📚 Basic RDBMS: Relational Database Management System
🐘 PostgreSQL with Python
🎁 Flask App with PostgreSQL: Build your first REST API with Flask and PostgreSQL
💻 Basics of Bash: Basics of BASH for Beginners
🐳 Basics of Docker: A Step by Step Guide on Docker for Beginners
🚢 Deploy Flask App with Docker: How To Build and Deploy a Flask Application Using Docker on Ubuntu 20.04
🌟 Learn Git & GitHub
🎓 Python for Beginners: Free Course to Learn Python Basics
🔨 Python Projects: 30 Cool, Easy & Fun Python Projects with Source Code [2023]
🚸 DSA with Python: Intro to Data Structures & Algorithms
🌐 Learn Flask: Create fully-featured, interactive web applications with Flask
🔧 Flask Projects: 10+ Unique Flask Projects with Source Code – 2023
🔄 Learn REST API with Flask: Python REST APIs With Flask, Connexion, and SQLAlchemy
🧩 Learn Multithreading & Asyncio: Python Multithreading and Multiprocessing Tutorial
🚦 Gunicorn & Nginx with Flask: How To Serve Flask Applications with Gunicorn and Nginx on Ubuntu 18.04
✅ TDD with Python & Flask: Modern Test-Driven Development in Python
📚 Basic RDBMS: Relational Database Management System
🐘 PostgreSQL with Python
🎁 Flask App with PostgreSQL: Build your first REST API with Flask and PostgreSQL
💻 Basics of Bash: Basics of BASH for Beginners
🐳 Basics of Docker: A Step by Step Guide on Docker for Beginners
🚢 Deploy Flask App with Docker: How To Build and Deploy a Flask Application Using Docker on Ubuntu 20.04
🌟 Learn Git & GitHub
👍5
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Dan Okhlopkov - канал
Эволюция моей оркестрации:
🥉 jupyter ноутбук
Запускаешь парсинг, пока на созвоне, смотришь кинчик или спишь.
Улучшения для покемона:
▪️Сохранять сразу в базу, а не локально
▪️Хостить жупутер на сервере, чтобы хоть с телефона можно было триггернуть задачку
🥈 Airflow
Крон на максималках, но нормально его задеплоить без полпинты нельзя. Проект древний, документации много и плохо. Если в вашей конторе он уже есть - кайф. Если вам нужно все это запустить с нуля — добро пожаловать в девопс.
🥇 Prefect
Тоже хрен разберешься, как нормально его задеплоить, ведь качество документации и тут тоже заряжено на генерацию лидов в enterprise вершн. Особенно это нетривиально через Dokku, которую я использую, чтобы особо не девопсить.
Но если завелось - ты будешь награжден. Просто пишешь в питоне функции, вешаешь декораторы и typing — и у тебя есть веб интерфейс к каждой функции. В отличие от Airflow, Prefect одобряет запуск неопределенного числа тасок (см скрин), что бывает часто, если тыпарсишь .
🥉 jupyter ноутбук
Запускаешь парсинг, пока на созвоне, смотришь кинчик или спишь.
Улучшения для покемона:
▪️Сохранять сразу в базу, а не локально
▪️Хостить жупутер на сервере, чтобы хоть с телефона можно было триггернуть задачку
🥈 Airflow
Крон на максималках, но нормально его задеплоить без полпинты нельзя. Проект древний, документации много и плохо. Если в вашей конторе он уже есть - кайф. Если вам нужно все это запустить с нуля — добро пожаловать в девопс.
🥇 Prefect
Тоже хрен разберешься, как нормально его задеплоить, ведь качество документации и тут тоже заряжено на генерацию лидов в enterprise вершн. Особенно это нетривиально через Dokku, которую я использую, чтобы особо не девопсить.
Но если завелось - ты будешь награжден. Просто пишешь в питоне функции, вешаешь декораторы и typing — и у тебя есть веб интерфейс к каждой функции. В отличие от Airflow, Prefect одобряет запуск неопределенного числа тасок (см скрин), что бывает часто, если ты
Forwarded from Инжиниринг Данных (Dmitry)
DATALEARN | DE - 101 | МОДУЛЬ 7-5 SPARK SQL и SPARK функции
Мы уже познакомились с Spark и писали запросы с помощью PySpark, так сказать Python flavor. А теперь мы посмотрим на Spark SQL
В этом видео вы узнаете про:
📌 Методы SparkSession для работы с SQL
📌 Как создавать таблицы и вьюхи
📌 Виды таблиц - Managed vs Unmanaged
📌 Примеры SQL запросов в PySpark
📌 Кеш в Spark
📌 Результат SQL запроса в DataFrame и наоборот
📌 Пример работы с различными файлами в Spark - Parquet, CSV, JSON, AVRO, ORC
📌 Пример использования Spark для бинарных файлов и изображений
📌 Функции и операции Spark
📌 UNION, JOIN для DataFrame
📌 Window Functions
📌 UDF
📌 Партиционирование данных и оптимизация с командами coalesce, repartition.
В качестве лабораторной работы вам нужно будет выполнить все запросы из примеров в CLI и Databricks.
Мы уже познакомились с Spark и писали запросы с помощью PySpark, так сказать Python flavor. А теперь мы посмотрим на Spark SQL
В этом видео вы узнаете про:
📌 Методы SparkSession для работы с SQL
📌 Как создавать таблицы и вьюхи
📌 Виды таблиц - Managed vs Unmanaged
📌 Примеры SQL запросов в PySpark
📌 Кеш в Spark
📌 Результат SQL запроса в DataFrame и наоборот
📌 Пример работы с различными файлами в Spark - Parquet, CSV, JSON, AVRO, ORC
📌 Пример использования Spark для бинарных файлов и изображений
📌 Функции и операции Spark
📌 UNION, JOIN для DataFrame
📌 Window Functions
📌 UDF
📌 Партиционирование данных и оптимизация с командами coalesce, repartition.
В качестве лабораторной работы вам нужно будет выполнить все запросы из примеров в CLI и Databricks.
YouTube
DATALEARN | DE - 101 | МОДУЛЬ 7-5 SPARK SQL и SPARK функции
Мы уже познакомились с Spark и писали запросы с помощью PySpark, так сказать Python flavor. А теперь мы посмотрим на Spark SQL
В этом видео вы узнаете про:
📌 Методы SparkSession для работы с SQL
📌 Как создавать таблицы и вьюхи
📌 Виды таблиц - Managed…
В этом видео вы узнаете про:
📌 Методы SparkSession для работы с SQL
📌 Как создавать таблицы и вьюхи
📌 Виды таблиц - Managed…
Spark SQL Query Engine Deep Dive (19) – Adaptive Query Execution (Part 1)
https://dataninjago.com/2022/02/14/spark-sql-query-engine-deep-dive-19-adaptive-query-execution-part-1/
https://dataninjago.com/2022/02/14/spark-sql-query-engine-deep-dive-19-adaptive-query-execution-part-1/
Data Ninjago (Finsight-Tech Blogs)
Spark SQL Query Engine Deep Dive (19) – Adaptive Query Execution (Part 1)
Cost-based optimisation (CBO) is not a new thing. It has been widely used in the RDBMS world for many years. However, the use of CBO in a distributed, storage/computing separated system, such as Sp…
Forwarded from DataEng
Наконец в сети стали доступны доклады с прошедшей конфы PyCon US 2023. Я отобрал для вас наиболее интересные топики с т.з. data engineering и анализа данных:
— Simon Willison: Data analysis with SQLite and Python
— Matt Harrison: Getting Started with Polars
— Bert Wagner: Cross-Server Data Joins on Slow Networks with Python
— Brandt Bucher: Inside CPython 3.11's new specializing, adaptive interpreter
— A. Jesse Jiryu Davis: Consistency and isolation for Python programmers
— Eric Snow: A Per-Interpreter GIL: Concurrency and Parallelism with Subinterpreters
— Mark Shannon: How we are making CPython faster. Past, present and future
— Paolo Melchiorre: A pythonic full-text search
— Samuel Colvin: How Pydantic V2 leverages Rust's Superpowers
Полный список докладов тут.
— Simon Willison: Data analysis with SQLite and Python
— Matt Harrison: Getting Started with Polars
— Bert Wagner: Cross-Server Data Joins on Slow Networks with Python
— Brandt Bucher: Inside CPython 3.11's new specializing, adaptive interpreter
— A. Jesse Jiryu Davis: Consistency and isolation for Python programmers
— Eric Snow: A Per-Interpreter GIL: Concurrency and Parallelism with Subinterpreters
— Mark Shannon: How we are making CPython faster. Past, present and future
— Paolo Melchiorre: A pythonic full-text search
— Samuel Colvin: How Pydantic V2 leverages Rust's Superpowers
Полный список докладов тут.
YouTube
Tutorials - Simon Willison: Data analysis with SQLite and Python
SQLite is the world's most widely used database and has been a part of the Python standard library since 2006. It continues to evolve and offer more capabilities every year.
This tutorial will transform you into a SQLite power-user. You'll learn to use SQLite…
This tutorial will transform you into a SQLite power-user. You'll learn to use SQLite…
Релиз нового стандарт SQL
https://stackdiary.com/sql-2023-is-released/
https://stackdiary.com/sql-2023-is-released/
Stack Diary
Microsoft is uploading your secret data to its cloud through Outlook - Stack Diary
Heise (translated from German) magazine has recently conducted an in-depth investigation into Microsoft's latest Outlook application, revealing significant privacy concerns. This new version of Outlook, poised to replace the current Mail app in Windows and…
Spark DataFrame против Pandas Dataframe: преимущества и недостатки
Spark DataFrame и Pandas DataFrame - это структуры данных, разработанные для упрощения работы с табличными данными в Python, однако они имеют некоторые различия в своей функциональности и способе обработки данных.
🙂 Spark DataFrame является основным компонентом Apache Spark, распределенной платформы для обработки больших объемов данных. Это распределенный набор данных, организованный в именованные столбцы.
🙃 Pandas DataFrame - это структура данных, предоставляемая библиотекой Pandas, в которой предлагаются мощные инструменты для разбора и работы с табличными данными. Pandas DataFrame представляет собой двумерный массив с метками для строк и столбцов, похожий на таблицу базы данных или электронную таблицу.
Преимущества Spark Dataframe:
1️⃣ Распределенная обработка данных: Spark Dataframe предназначен для обработки больших объемов данных и может работать с данными, которые не умещаются в памяти одного узла. Данные и вычисления распределяются по кластеру, что позволяет достигать высокой производительности.
2️⃣ Поддержка разных языков программирования: Spark Dataframe поддерживает несколько языков программирования, включая Python, Scala, Java и R. Это позволяет разработчикам использовать предпочитаемый язык при работе с данными.
3️⃣ Поддержка разных источников данных: Spark Dataframe может работать с разными источниками данных, такими как распределенная файловая система Hadoop (HDFS), Apache Hive, Apache HBase, Apache Cassandra и многими другими. Он предоставляет удобные API для работы с разными форматами данных. Недостатки Spark Dataframe:
4️⃣ Сложность настройки и управления кластером: Spark требует настройки и управления кластером для распределенной обработки данных. Это может быть сложно для новичков или проектов с ограниченными ресурсами.
5️⃣ Медленный запуск: Запуск кластера Spark может занять время, особенно если необходимо настроить сетевые параметры и другие настройки. Для небольших наборов данных это может быть неэффективно и занять больше времени, чем обработка данных самим Spark.
Преимущества Pandas Dataframe:
1️⃣ Простота использования: Pandas Dataframe предоставляет простой и интуитивно понятный API для работы с данными. Он предлагает множество функций для фильтрации, сортировки, группировки и агрегации данных, что делает его удобным для анализа данных.
2️⃣ Большое сообщество пользователей: Pandas является очень популярным инструментом в сообществе аналитиков данных и машинного обучения. Это означает, что есть много ресурсов, документации и сообществ, где можно получить помощь и поддержку.
3️⃣ Высокая производительность на небольших наборах данных: Pandas оптимизирован для работы с относительно небольшими наборами данных, которые могут быть размещены в памяти одного узла. В таких случаях Pandas может быть быстрее, чем Spark. Недостатки Pandas Dataframe:
4️⃣ Ограничения памяти: Pandas Dataframe хранит все данные в памяти, поэтому работа с большими наборами данных может быть ограничена доступной памятью на вашем компьютере. Это может вызвать проблемы с производительностью или даже привести к сбою программы.
5️⃣ Ограниченная масштабируемость: Pandas разработан для работы на одном узле и не может эффективно масштабироваться для распределенной обработки. Если у вас большое количество данных, которые не умещаются в памяти одного узла, Pandas может стать неэффективным.
📌 Таким образом, выбор между Spark Dataframe и Pandas Dataframe зависит от конкретных потребностей. Если требуется обработка большого объема данных и распределенная обработка, то предпочтительнее использовать Spark Dataframe. Если вы работаете с небольшими наборами данных и ищете простой и быстрый способ анализа данных, то лучший выбор - Pandas Dataframe.
Spark DataFrame и Pandas DataFrame - это структуры данных, разработанные для упрощения работы с табличными данными в Python, однако они имеют некоторые различия в своей функциональности и способе обработки данных.
Преимущества Spark Dataframe:
Преимущества Pandas Dataframe:
Please open Telegram to view this post
VIEW IN TELEGRAM
🆒3👍2👏1😁1
Forwarded from Хитрый Питон
Завтра в прямом эфире Moscow Python вместе с Никитой Соболевым (wemake.services) и Сергеем Петровым (Selectel) подробно обсудим типизацию Python и все связанное с ней.
➡️ Когда: 16 июня в 14:00 по Москве.
➡️ Где: онлайн и в записи по ссылке.
На трансляции ответим на вопросы и комментарии в прямом эфире.
На трансляции ответим на вопросы и комментарии в прямом эфире.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Типизация в Python
00:00 - интро
1:30 - типы это худшее или лучшее, что произошло с Python?
4:52 - что продвигает Никита
6:30 - нужно ли топить за типы
10:00 - PEP 692, TypedDict
13:24 - PEP 698, Override Decorator for static type
14:50 - PEP 695, Type Parameter Syntax
22:00…
1:30 - типы это худшее или лучшее, что произошло с Python?
4:52 - что продвигает Никита
6:30 - нужно ли топить за типы
10:00 - PEP 692, TypedDict
13:24 - PEP 698, Override Decorator for static type
14:50 - PEP 695, Type Parameter Syntax
22:00…
👍3