我正在尝试在Vs Code中使用python(使用Databricks-connect)中的JAR文件。
我已经检查了jar文件的路径。
我以以下代码为例:
import datetime
import time
from pyspark.sql import SparkSession
from pyDataHub import LoadProcessorBase, ProcessItem
from pyspark.sql.functions import col, lit, sha1, concat, udf, array
from pyspark.sql import functions
from pyspark.sql.types import TimestampType, IntegerType, DoubleType, StringType
from pyspark import SparkContext
from pyspark.sql.functions import sha1, upper
from pyspark.sql.column import Column, _to_java_column, _to_seq
spark = SparkSession \
.builder \
.config("spark.jars", "/users/Phill/source/jar/DataHub_Core_Functions.jar") \
.getOrCreate()
sc = spark.sparkContext
def PhillHash(col):
f = sc._jvm.com.narato.datahub.core.HashContentGenerator.getGenerateHashUdf()
return upper(sha1(Column(f.apply(_to_seq(sc, [col], _to_java_column)))))
sc._jsc.addJar("/users/Phill/source/jar/DataHub_Core_Functions.jar")
spark.range(100).withColumn("test", PhillHash("id")).show()
任何帮助将不胜感激,因为我在这里没有选择...
我得到的错误如下:
发生异常:TypeError'JavaPackage'对象不可调用
答案 0 :(得分:0)
将jar添加到dbfs位置,并相应地更新路径。工作人员无法连接到本地文件系统。
还要确保您正在运行5.4版本的databricks运行时(或更高版本)。