"Static vs Dynamic Partitioning В Hive есть два вида партицирования: статическое и динамическое Сначала я столкнулась с ошибкой: ```Exception in thread ""main"" org.apache.spark.SparkException: Dynamic partition strict mode requires at least one static partition column. To turn this off set hive.exec.dynamic.partition.mode=nonstrict``` Давайте разберем на примерах У нас есть таблица, которая партицирована по двум полям: ```CREATE TABLE sales_data (...) PARTITIONED BY (date STRING, country STRING);``` Теперь пойдем вставлять данные 🤩Статическое ```INSERT INTO sales_data PARTITION (date=’2024–03–23', country=’USA’) VALUES (...);``` Здесь мы заранее говорим, в какую партицию будем вставлять кусок данных 🤩 Динамическое ```INSERT INTO sales_data PARTITION (date, country) VALUES (..., ‘2024–03–23’, ‘USA’);``` Здесь Hive сам определяет по данным, которые мы вставляем Но чтобы такое сработало, нужны 2 конфига: ```.config(""hive.exec.dynamic.partition"", ""true"") .config(""hive.exec.dynamic.partition.mode"", ""nonstrict"")``` По дефолту стоят false и strict. strict означает, что должна существовать хотя бы одна статическая партиция (о чем и была ошибка)"