Работа Python для Azure Databricks

У меня есть требование проанализировать множество небольших неструктурированных файлов почти в реальном времени внутри Azure и загрузить проанализированные данные в базу данных SQL. Я выбрал Python (потому что я не думаю, что какой-либо кластер Spark или большие данные подойдут, учитывая объем исходных файлов и их размер), и логика синтаксического анализа уже написана. Я с нетерпением жду возможности запланировать этот скрипт python разными способами с помощью Azure PaaS.

  1. Фабрика данных Azure
  2. Azure Databricks
  3. Оба 1 + 2

Могу я спросить, каковы последствия выполнения действия записной книжки Python из фабрики данных Azure, указывающего на Azure Databricks? Смогу ли я полностью использовать потенциал кластера (Водители и рабочие)?

Кроме того, посоветуйте мне, если вы считаете, что сценарий должен быть преобразован в PySpark, чтобы удовлетворить требованиям моего варианта использования для запуска в Azure Databricks? Единственное сомнение здесь в том, что файлы в КБ и неструктурированы.


person AngiSen    schedule 26.12.2019    source источник


Ответы (1)


Если сценарий является чистым Python, он будет работать только на узле драйвера кластера Databricks, что делает его очень дорогим (и медленным из-за времени запуска кластера).

Вы можете переписать его как pyspark, но если объемы данных настолько малы, как вы говорите, это все равно дорого и медленно. Самый маленький кластер потребляет две виртуальные машины - каждая с 4 ядрами.

Вместо этого я бы посмотрел на использование функций Azure. Теперь можно использовать Python: https://docs.microsoft.com/en-us/azure/python/tutorial-vs-code-serverless-python-01

Функции Azure также отлично интегрируются с фабрикой данных Azure, поэтому ваш рабочий процесс по-прежнему будет работать.

person simon_dmorias    schedule 29.12.2019