如何在Zeppelin Notebook上使用Cassandra解释器中的Scala定义函数?

时间:2016-08-23 18:52:27

标签: scala cassandra apache-zeppelin

我在Zeppelin笔记本上定义了下一个功能:

import java.util.Date

def timeFormat(d: Long) : String = {
    val l = (d * 1000).toLong
    val time = new Date(l)
    time.toString()
}

将它用于单个项目:

timeFormat(1471887281116L)
res2: String = Thu Apr 02 10:05:16 UTC 48612

现在我想用cassandra格式化一些时间戳:

%cassandra
select timeFormat(timestamp) as time from keyspace.table;

如果没有该函数,查询会返回一些结果,但输出结果为:

com.datastax.driver.core.exceptions.InvalidQueryException:
    Unknown function 'timeformat'

Zeppelin tutorial中,它显示如何使用函数get and format数据,具体注册函数:

sqlc.udf.register("functionName", functionName _)

允许我们从%sql解释器访问它,但我想知道如何在%cassandra解释器上执行它。

0 个答案:

没有答案