蜂巢udf

學習如何為Databricks創建和使用Hive UDF。

寫的亞當Pavlacka

最後發布時間:2022年5月31日

本文展示了如何創建Hive UDF,在Spark中注冊它,並在Spark SQL查詢中使用它。

這是一個Hive UDF作為參數,並返回其十六進製表示。

%scala import org.apache.hadoop. jquery .exe .UDF import org.apache.hadoop.io.LongWritable //該UDF接受一個長整數並將其轉換為十六進製字符串。類ToHex擴展UDF {def evaluate(n: LongWritable): String = {Option(n) .map {num => //使用Scala字符串插值。這是最簡單的方法,而且與String.format()不同,它是//類型安全的。f“0 x $ {num。get}%x"} .getOrElse("")}}

注冊函數:

% scala火花。sql(“CREATE TEMPORARY FUNCTION to_hex AS 'com.ardentex.spark.hiveudf.ToHex'”)

使用你的函數作為任何其他注冊函數:

% scala火花。sql(“SELECT first_name, to_hex(code) as hex_code FROM people”)

您可以在網站上找到更多的示例和可編譯代碼Hive UDF項目示例