Для определенной потребности я хочу реализовать свой собственный способ написания в Delta Tables, управляя транзакциями Delta из Pyspark. Для этого я хочу получить доступ к транзакционному двигателю Delta Lake через JVM, встроенный в сеанс Spark, в частности, используя класс: < /p>
Код: Выделить всё
org.apache.spark.sql.delta.DeltaLog
Когда я пытаюсь использовать классы из пакета org.apache.spark.sql.delta непосредственно из pyspark (через Spark._jvm), классы не найдены, если у меня нет Delta Core, установленного PACKENTITY PACKERTITLE на кластер. Чтобы получить доступ, я сталкиваюсь с следующей ошибкой импорта Python: < /p>
ModuleNotFoundError: No module named 'delta.exceptions.captured'; 'delta.exceptions' is not a package
< /code>
Без установленного пакета Delta Core, доступ к Deltalog просто возвращает общий объект Javapackage, который является непригодным для использования. поведение.
Работайте в среде выполнения Databricks 16.4 без конфликтов или отсутствующих зависимостей.
Вопросы
Как я могу правильно получить и использовать org.apache.spark.sql.delta.deltalog. 16.4? На Databricks?
Подробнее здесь: https://stackoverflow.com/questions/796 ... vm-pyspark