日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

SparkSQL UDF基礎(chǔ)操作

Spark SQL提供了很多內(nèi)建函數(shù)來滿足您的計(jì)算需求,您也可以通過創(chuàng)建自定義函數(shù)(UDF)來滿足不同的計(jì)算需求。UDF在使用上與普通的內(nèi)建函數(shù)類似。本文為您介紹Spark SQL中使用Hive自定義函數(shù)的流程。

前提條件

已在Hive中創(chuàng)建了UDF,詳情請(qǐng)參見開發(fā)UDF

使用Hive UDF

  1. 使用文件傳輸工具,上傳生成的JAR包至集群任意目錄(本文以test目錄為例)。

  2. 上傳JAR包至HDFS或OSS(本文以HDFS為例)。

    1. 通過SSH方式登錄集群,詳情請(qǐng)參見登錄集群

    2. 執(zhí)行以下命令,上傳JAR包到HDFS。

      hadoop fs -put /test/hiveudf-1.0-SNAPSHOT.jar /user/hive/warehouse/

      您可以通過hadoop fs -ls /user/hive/warehouse/命令,查看是否上傳成功。待返回信息如下所示表示上傳成功。

      Found 1 items
      -rw-r--r--   1 xx xx 2668 2021-06-09 14:13 /user/hive/warehouse/hiveudf-1.0-SNAPSHOT.jar
  3. 創(chuàng)建UDF函數(shù)。

    1. 執(zhí)行以下命令,進(jìn)入Spark SQL命令行。

      spark-sql
    2. 執(zhí)行以下命令,應(yīng)用生成的JAR包創(chuàng)建函數(shù)。

      create function myfunc as "org.example.MyUDF" 
      using jar "hdfs:///user/hive/warehouse/hiveudf-1.0-SNAPSHOT.jar";
      說明

      代碼中的myfunc是UDF函數(shù)的名稱,org.example.MyUDF是開發(fā)UDF中創(chuàng)建的類,hdfs:///user/hive/warehouse/hiveudf-1.0-SNAPSHOT.jar為上傳JAR包到HDFS的路徑。

  4. 執(zhí)行以下命令,使用UDF函數(shù)。

    該函數(shù)與內(nèi)置函數(shù)使用方式一樣,直接使用函數(shù)名稱即可訪問。

    select myfunc("abc");

    返回如下信息。

    OK
    abc:HelloWorld