[
https://issues.apache.org/jira/browse/TAJO-1686?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15132055#comment-15132055
]
ASF GitHub Bot commented on TAJO-1686:
--------------------------------------
Github user jihoonson commented on a diff in the pull request:
https://github.com/apache/tajo/pull/929#discussion_r51850040
--- Diff:
tajo-core/src/main/java/org/apache/tajo/engine/function/hiveudf/HiveFunctionLoader.java
---
@@ -0,0 +1,154 @@
+/***
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.tajo.engine.function.hiveudf;
+
+import org.apache.hadoop.fs.FileStatus;
+import org.apache.hadoop.fs.FileSystem;
+import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.hive.ql.exec.Description;
+import org.apache.hadoop.hive.ql.exec.UDF;
+import org.apache.hadoop.hive.ql.udf.UDFType;
+import org.apache.tajo.catalog.FunctionDesc;
+import org.apache.tajo.catalog.FunctionDescBuilder;
+import org.apache.tajo.catalog.proto.CatalogProtos;
+import org.apache.tajo.common.TajoDataTypes;
+import org.apache.tajo.conf.TajoConf;
+import org.apache.tajo.exception.TajoInternalError;
+import org.apache.tajo.function.UDFInvocationDesc;
+import org.apache.tajo.util.WritableTypeConverter;
+import org.reflections.Reflections;
+import org.reflections.util.ConfigurationBuilder;
+
+import java.io.IOException;
+import java.lang.reflect.Method;
+import java.net.URL;
+import java.net.URLClassLoader;
+import java.util.*;
+
+public class HiveFunctionLoader {
+ public static Collection<FunctionDesc> loadHiveUDFs(TajoConf conf) {
+ ArrayList<FunctionDesc> funcList = new ArrayList<>();
+ String udfdir = conf.getVar(TajoConf.ConfVars.HIVE_UDF_DIR);
+
+ try {
+ FileSystem localFS = FileSystem.getLocal(conf);
--- End diff --
Hive basically assumes that the Jar files are stored on HDFS. We also need
to support it.
> Allow Tajo to use Hive UDF
> --------------------------
>
> Key: TAJO-1686
> URL: https://issues.apache.org/jira/browse/TAJO-1686
> Project: Tajo
> Issue Type: New Feature
> Components: Function/UDF
> Reporter: Jaehwa Jung
> Assignee: Jongyoung Park
>
> Hive has been widely used in this area. Many users have maintained lots of
> big tables through Hive metastore using HiveQL and UDFs. Currently, Tajo
> provides own UDF and Hive users can implement their UDFs in Tajo. But if we
> can wrap Hive UDF in Tajo, it seems that they would be able to use Tajo
> easily for their analysis infrastructure.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)