Насколько я понимаю, с Hive 3 таблица HIVE ORC ACID, использующая MERGE, также требует как минимум TEZ в качестве основного механизма выполнения, если не используется Map Reduce или механизм Spark для Hive. На самом деле я не уверен, что HIVE MERGE, update, delete работают с Spark Engine.
Но из документации и различных обновлений я не могу подтвердить это, отсюда и эта публикация. Кажется, сложно написать связную прозу на эту тему, и я нахожусь далеко от группы.
И выделенное курсивом и жирным шрифтом заявление из https://docs.microsoft.com/en-us/azure/hdinsight/hdinsight-version-release с указанием полной транзакционной функциональности, я не могу следить, так как не знал, что SPARK может обновлять, удалять на HIVE ORC КИСЛОТА (пока):
Apache Spark
Apache Spark получает обновляемые таблицы и транзакции ACID с помощью Hive Warehouse Connector. Коннектор Hive Warehouse Connector позволяет регистрировать транзакционные таблицы Hive в качестве внешних таблиц в Spark для доступа ко всем функциональным возможностям транзакций. Предыдущие версии поддерживали только манипуляции с разделами таблицы. Коннектор Hive Warehouse также поддерживает Streaming DataFrames для потокового чтения и записи в транзакционные и потоковые таблицы Hive из Spark.
Исполнители Spark могут напрямую подключаться к демонам Hive LLAP для извлечения и обновления данных транзакционным способом, что позволяет Hive сохранять контроль над данными.
Apache Spark в HDInsight 4.0 поддерживает следующие сценарии:
Запустите обучение модели машинного обучения на той же транзакционной таблице, которая используется для отчетов. Используйте транзакции ACID для безопасного добавления столбцов из Spark ML в таблицу Hive. Запустите задание потоковой передачи Spark для канала изменений из таблицы потоковой передачи Hive. Создавайте файлы ORC непосредственно из задания структурированной потоковой передачи Spark. Вам больше не нужно беспокоиться о случайной попытке доступа к транзакционным таблицам Hive непосредственно из Spark, что приведет к несогласованным результатам, дублированию данных или повреждению данных. В HDInsight 4.0 таблицы Spark и таблицы Hive хранятся в отдельных хранилищах метаданных. Используйте Hive Data Warehouse Connector, чтобы явно зарегистрировать транзакционные таблицы Hive как внешние таблицы Spark.