[
https://issues.apache.org/jira/browse/DRILL-7437?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17072257#comment-17072257
]
ASF GitHub Bot commented on DRILL-7437:
---------------------------------------
paul-rogers commented on issue #1892: DRILL-7437: Storage Plugin for Generic
HTTP REST API
URL: https://github.com/apache/drill/pull/1892#issuecomment-606952406
To 's earlier comment, Drill seems to include multiple HTTP clients:
* `org.apache.httpcomponents:httpclient:jar:4.5.6`
* `org.apache.httpcomponents:httpclient:jar:4.4.1`
* `com.squareup.okhttp:okhttp:jar:2.7.5`
* `com.squareup.okhttp3:okhttp:jar:3.3.0`
* `org.apache.httpcomponents:httpasyncclient:jar:4.1.4`
* `commons-httpclient:commons-httpclient:jar:3.1`
That said, it appears that HDFS uses the Square client:
```
+- org.apache.hadoop:hadoop-client:jar:3.2.1:compile
| +- org.apache.hadoop:hadoop-hdfs-client:jar:3.2.1:compile
| | \- com.squareup.okhttp:okhttp:jar:2.7.5:compile
```
Looks like other plugins have transitive dependency on OK HTTP3:
```
+-
org.apache.drill.contrib:drill-opentsdb-storage:jar:1.18.0-SNAPSHOT:compile
| +- com.squareup.retrofit2:retrofit:jar:2.1.0:compile
| | \- com.squareup.okhttp3:okhttp:jar:3.3.0:compile
```
So, while we should clean up our HTTP client use, looks like the Square
client is the preferred one. An issue is the HDFS dependency on the OkHttp 2.x
series while the HTTP plugin depends on the newer "okhtt3" version.
Fortunately, the package names are different, but we still have to load both
into memory.
In general, each plugin depends on far too much stuff: we probably should
not expose the Hadoop and HDFS classes to format plugins. But, that is an
improvement for later.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> Storage Plugin for Generic HTTP REST API
> ----------------------------------------
>
> Key: DRILL-7437
> URL: https://issues.apache.org/jira/browse/DRILL-7437
> Project: Apache Drill
> Issue Type: New Feature
> Affects Versions: 1.17.0
> Reporter: Charles Givre
> Assignee: Paul Rogers
> Priority: Major
> Fix For: 1.18.0
>
>
> In many data analytic situations there is a need to obtain reference data
> which is volatile or hosted on a service with a REST API.
> For instance, consider the case of a financial dataset which you want to run
> a currency conversion. Or in the security arena, an organization might have
> a service that returns network information about an IT asset. The goal being
> to enable Drill to quickly incorporate external data that is only accessible
> via REST API.
> This plugin is not intended to be a substitute for dedicated storage plugins
> with systems that use a REST API, such as Apache Solr or ElasticSearch.
> This plugin is based on several projects that were posted on github but never
> completed or submitted to Drill. Posted here for attribution:
> * [https://github.com/kevinlynx/drill-storage-http]
> * [https://github.com/mayunSaicmotor/drill-storage-http]
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)