Поговорим про ✨Apache Spark✨ - это движок/фреймворк для распределенной обработки больших данных. Что значит распределенной? Представь, что ты археолог и тебе нужно раскопать огромную территорию. Ты решил позвать n друзей, вы начали работать параллельно, и теперь вы закончите в n раз быстрее. Так и в спарке: каждая операция делится на маленькие таски, которые одновременно обрабатываются несколькими компьютерами, что ускоряет весь процесс. Со спарком обычно работают на Python (через либу PySpark) и Scala. Сначала нужно создать SparkSession: from pyspark.sql import SparkSession spark = (SparkSession.builder .appName("SparkExample") .master("yarn") .config("spark.some.config.option", "config-value") .enableHiveSupport() .getOrCreate() ) import org.apache.spark.sql.SparkSession val spark = SparkSession.builder() .appName("SparkExample") .master("yarn") .config("spark.some.config.option", "config-value") .enableHiveSupport() .getOrCreate() Пару слов про code style в питоне. Есть два варианта: 1) обратный слэш spark = SparkSession.builder \ .appName("SparkExample") \ ... 2) скобки spark = (SparkSession.builder .appName("SparkExample") ... ) Я лично предпочитаю второй подход, потому что в первом нельзя закомментить строчки (только удалить, иначе синтаксическая ошибка) и нужно проставлять бэкслэши на каждой строке. Во втором - только один раз обрамить скобками, и все👌 #spark
Была на Ганзе во времена раннего палеолита такая тема, как"Швейцарские спарки". "Спарка" это комплект из двух ножей, которые дополняют друг друга.
Как мы знаем, швейцарские производители принципиально не делают "идеальных" наборов инструментов, это противоречит их маркетинговой политике (вы ж хитрые, купите один нож и успокоитесь). Довольствуйся минимумом, или покупай Чамп где есть все и сразу (но он большой, тяжелый и относительно дорогой), либо остаётся вариант "спарок". Моя любимая спарка это GAK+Classic Signature...