Alok,

I had to install the Drill dependencies locally since they're not in maven
central (DRILL-284 <https://issues.apache.org/jira/browse/DRILL-284>).

I did the following with drill-1.0.0:

mvn install:install-file
-Dfile=/opt/apache-drill-1.0.0/jars/drill-java-exec-1.0.0-rebuffed.jar
-DgroupId=org.apache.drill.exec -DartifactId=drill-java-exec
-Dversion=1.0.0 -Dpackaging=jar -DgeneratePom=true
mvn install:install-file
-Dfile=/opt/apache-drill-1.0.0/jars/drill-common-1.0.0-rebuffed.jar
-DgroupId=org.apache.drill -DartifactId=drill-common -Dversion=1.0.0
-Dpackaging=jar -DgeneratePom=true


Worked for me.


On Wed, Jun 24, 2015 at 12:35 PM, Alok Tanna <[email protected]>
wrote:

> Thank you Ted for the below information. I would be perfectly fine to use
> the Java API.
>  I tried running the Simple Drill function .
> https://github.com/mapr-demos/simple-drill-functions
>
> But then when I am trying to run the package , I am getting below error .
> I am also attaching the detailed error file .
>
> [WARNING] The POM for org.apache.drill.exec:drill-java-exec:jar:1.0.0 is
> missing
> , no dependency information available
>
> [ERROR] Failed to execute goal on project simple-drill-function: Could not
> resol
> ve dependencies for project
> com.mapr:simple-drill-function:jar:1.0-SNAPSHOT: Cou
> ld not find artifact org.apache.drill.exec:drill-java-exec:jar:1.0.0 in
> central
> (https://repo.maven.apache.org/maven2) -> [Help 1]
>
>
> Thanks,
> Alok Tanna
> eXertDigital
>
>
> On Wed, Jun 24, 2015 at 12:42 AM, Ted Dunning <[email protected]>
> wrote:
>
>> Yes and no.
>>
>> It would be pretty easy to build a Drill function that calls out to Jython
>> code.  It should be relatively easy to pass a Python function name in as
>> one of the arguments as well.
>>
>> The issues with this approach are:
>>
>> 1) kinda ugly because you aren't calling your code directly
>>
>> 2) Jython isn't quite Python
>>
>> I have no idea how to do it specifically, but it is plausible that you
>> could build something that automatically generates the interlude function
>> for you in Java that calls your Python code. Python annotations might be
>> the cat's pajamas for this.  Or not.  Hard to say.
>>
>> The Java API that Drill provides is not a traditional API in the normal
>> sense of the word because Drill actually snarfs the source code and
>> inlines
>> it into Drill-generated code.  It wouldn't understand your Python code at
>> all.
>>
>> It might be possible to teach Drill how to understand how to transform
>> Python UDF's directly into something that Drill could use, but that would
>> definitely be a bit ambitious.
>>
>> How utterly clean an interface do you need?
>>
>>
>>
>>
>>
>>
>> On Tue, Jun 23, 2015 at 10:10 PM, Alok Tanna <[email protected]>
>> wrote:
>>
>> > Can we create Custom Functions using Python in Drill ?
>> >
>> > I do understand Drill provides a high performance Java API with
>> interfaces
>> > so that we can implement to develop simple and aggregate custom
>> functions.
>> >
>> > Thanks,
>> > Alok Tanna
>> >
>>
>
>

Reply via email to