在spark中通過UDF轉字串ip

2021-09-12 12:47:43 字數 421 閱讀 2219

今天在spark中需要將字元型(string)的ip轉化為長整型(long)的ip,參考了兩篇文章和通過這兩篇文章的抽取出思路。於是封裝成udf函式,如下:

sqlcontext.udf.register("ip2long",(ip:string)=>(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$""")=>

ip_long

}case _=>0

}})

這樣,我就可以在sql中使用我自定義的函式了。

var df = spark.sql("select ip, ip2long(ip), region from mytable").todf("ipstr", "ipint", "region")
在此作為小標記,以示記憶。

《轉》奇蹟在堅持中

本文 自netprawn 這是發生在我大學期間的一件事,至今猶記在心。公共課 社會學 的老教授給我們出了這樣一道題目 如果一件事的成功率是1 那麼反覆嘗試100次,至少成功1次的概率大約是多少?備選答案有4個 10 23 38 63 經過十幾分鐘的熱烈討論,大部分人都選了10 少數人選了23 極個別...

在Spark中盡量少使用GroupByKey函式

為什麼建議盡量在spark 中少用groupbykey,讓我們看一下使用兩種不同的方式去計算單詞的個數,第一種方式使用reducebykey 另外一種方式使用groupbykey,如下 01 user 過往記憶 02 date 2015 05 18 03 time 下午22 26 06 過往記憶部落...

解析RDD在Spark中的地位

1.spark的核心概念是rdd resilient distributed dataset 指的是乙個 唯讀的,可分割槽的分布式資料集,這個資料集的全部或部分可以快取在記憶體中,在多次計算間重用。2.rdd在抽象上來說是一種元素集合,包含了資料。它是被分割槽的,分為多個分割槽,每個分割槽分布在集群...