Найти в Дзене
pyspark

pyspark

Обработка данных со Spark на Python
подборка · 4 материала
Динамическая загрузка модулей в Python и как она спасает при работе с pyspark
"Приобретение знаний - это как путешествие в неизведанные земли: чем больше вы исследуете, тем больше открытий вы делаете". Библиотека importlib в Python предоставляет инструменты для динамической загрузки модулей. То есть она будет происходить не на этапе анализа кода интерпретатором, а во время выполнения программы. Это полезно, когда некоторые модули не известны до старта программы, например, как при работе с pyspark до инициализации переменных окружения с нужными путями. Импорт модуля Самый простой способ динамически загрузить модуль - использовать функцию import_module...
Как настраивать виртуальное окружение для работы со Spark
Интерактивная работа со Spark имеет свои особенности, главная из которых - всегда учитывать, что исполнение кода происходит на нескольких узлах. Одним из следствий этого является необходимость создания одинаковой виртуальной среды на нодах, так как иначе вы не можете гарантировать корректную работу. Это касается не только импортированных модулей, но и версии интерпретатора. Готовим venv Сначала найдем базовую версию Python, на основе которой сделаем venv. Если в вашем распоряжении Jupyter, выберите kernel с нужной версией Python и наберите команду: import sys;sys...
2 года назад
Преобразование к типу даты и времени в Spark SQL
Время есть величайшая иллюзия. Оно есть только внутренняя призма, через которую мы разлагаем бытие и жизнь (А.Ф. Амиель). Рассмотрим способы преобразования колонок с датой и временем в Spark SQL. Для начала сформируем демонстрационный датафрейм и зарегистрируем его в качестве временной таблицы: str2date Функция to_date принимает в качестве параметров имя колонки и формат и преобразует в тип pyspark.sql.types.DateType: Функция to_timestamp работает аналогично, только возвращает дату и время (pyspark...
2 года назад
Чтение табличных файлов со Spark
Когда вы читаете, не пытайтесь угадывать, что думает автор. Думайте сами. Рассмотрим, какие в pyspark имеются основные опции для чтения csv файлов: sep, quote, header, multiline Возможности данных опций можно продемонстрировать на примере чтения следующего файла: Как видим, намеренно в файле присутствует новый разделитель строки ($), имеется запись с переносом на следующую строку (text\n2), в качестве разделителя полей указана не запятая (";"): inferschema Если не указывать схему (подробнее читай...