You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Igor Guzenko (JIRA)" <ji...@apache.org> on 2019/05/27 08:26:00 UTC
[jira] [Commented] (DRILL-7280) Support Hive UDFs for arrays
[ https://issues.apache.org/jira/browse/DRILL-7280?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16848718#comment-16848718 ]
Igor Guzenko commented on DRILL-7280:
-------------------------------------
Sample tests to add into TestInbuiltHiveUDFs:
{code:java}
@Test
public void arraySize() throws Exception {
testBuilder()
.sqlQuery("SELECT size(arr_n_0) from hive.int_array order by rid")
.ordered()
.baselineColumns("EXPR$0")
.baselineValuesForSingleColumn(3)
.baselineValuesForSingleColumn(0)
.baselineValuesForSingleColumn(1)
.go();
}
@Test
public void arrayContains() throws Exception {
testBuilder()
.sqlQuery("SELECT array_contains(arr_n_0, 0) FROM hive.int_array order by rid")
.ordered()
.baselineColumns("EXPR$0")
.baselineValuesForSingleColumn(true)
.baselineValuesForSingleColumn(false)
.baselineValuesForSingleColumn(false)
.go();
}
@Test
public void sortArray() throws Exception {
testBuilder()
.sqlQuery("SELECT sort_array(arr_n_0) FROM hive.int_array order by rid")
.ordered()
.baselineColumns("EXPR$0")
.baselineValues(asList(-1,0,1))
.baselineValues(asList())
.baselineValues(asList(100500))
.go();
}
@Test
public void concatWs() throws Exception {
testBuilder()
.sqlQuery("SELECT concat_ws(',',arr_n_0) FROM hive.string_array order by rid")
.ordered()
.baselineColumns("EXPR$0")
.baselineValues("First Value Of Array,komlnp,The Last Value")
.baselineValues("")
.baselineValues("ABCaBcA-1-2-3")
.go();
}
{code}
> Support Hive UDFs for arrays
> ----------------------------
>
> Key: DRILL-7280
> URL: https://issues.apache.org/jira/browse/DRILL-7280
> Project: Apache Drill
> Issue Type: Sub-task
> Reporter: Igor Guzenko
> Assignee: Igor Guzenko
> Priority: Minor
>
> Add support for Hive UDFs accepting or returning arrays: [https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF] . Some examples of such UDFs are:
>
> ||Hive UDF||Drill alternative||
> |size(array)|repeated_count(array)|
> |array_contains(array, value)|repeated_contains(array, value)|
> |sort_array(arr_n_0)|NA|
> |concat_ws(string SEP, array<string>)|NA|
> etc.
>
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)