I've figured out the corresponding Spark SQL syntax. The following temporary table works:
CREATE TEMPORARY TABLE biblio_raw (
url STRING,
content_text_array ARRAY<STRING>
)
USING org.elasticsearch.spark.sql
OPTIONS (
path 'my_index/doc',
query '?q=mouse',
es.port '11100',
es.mapping.names 'content_text_array:contentText'
);
HOWEVER, the es.mapping.names do NOT work. The above DDL does not map content_text_array SQL field to the contentText ES field. How do I express mappings with Elasticsearch/Spark SQL?