-
Notifications
You must be signed in to change notification settings - Fork 996
Closed
Description
Hi,
I am trying to integrate Hive with elastic search. Below are the steps I followed:
- Downloaded elasticsearch-hadoop-hive-2.3.0.jar and elasticsearch-hadoop-2.3.0.jar and placed under $HIVE_HOME/lib directory.
- Create an external table:
create external table report_es (
imps INT,
ad_network_id INT,
pg_placement_id STRING,
placement_id STRING,
site_id STRING,
ad_type INT,
app_id INT,
total_revenue FLOAT,
cost FLOAT,
imps_sold INT,
response INT,
publisher_id STRING,
clicks INT,
day STRING
)
STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
TBLPROPERTIES('es.resource' = 'dailyreports/report', 'es.nodes' = 'AWS end point', 'es.nodes.wan.only' = 'true');
However when I try to query over this table I get below error:
hive> select * from report_es limit 10;
OK
Failed with exception java.io.IOException:org.elasticsearch.hadoop.EsHadoopIllegalArgumentException: Cannot detect ES version - typically this happens when accessing a WAN/Cloud instance without the proper setting 'es.nodes.wan.only'
Time taken: 0.447 seconds
While creating table I am specifying es.nodes.wan.only as true, but still it is getting ignored. Could you please help resolve my problem?