Folks,
I am using elasticsearch-hadoop-hive-2.1.0.Beta3.jar
I defined the external table as:.
CREATE EXTERNAL TABLE IF NOT EXISTS ${staging_table}(
customer_id STRING,
store_purchase array<map<string,string>>)
ROW FORMAT SERDE 'org.elasticsearch.hadoop.hive.EsSerDe'
STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
TBLPROPERTIES (
'es.nodes'='localhost:9200',
'es.resource'='user_activity/store',
'es.mapping.id'='customer_id',
'es.input.json'='false',
'es.write.operation'='upsert',
'es.update.script'='ctx._source.store_purchase += purchase',
'es.update.script.params'='purchase:store_purchase'
) ;"
I create another source table with the same column names and put some
sample data.
Running INSERT OVERWRITE TABLE ${staging_table}
SELECT customer_id, store_purchase) FROM ${test_table}
but it throws EsHadoopIllegalArgumentException: Field [_col1] needs to be a
primitive; found [array>]. Is array> supported yet? If not, how can I get
around this issue?
Thanks~
--
You received this message because you are subscribed to the Google Groups
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/929c7b5b-fbb4-4232-821b-331499c18369%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.