- table (
Table) – the table to output.
- host (
str) – the host and port, on which Elasticsearch server works.
- auth (
ElasticSearchAuth) – credentials for Elasticsearch authorization.
- index_name (
str) – name of the index, which gets the docs.
- table (
Consider there is an instance of Elasticsearch, running locally on a port 9200. There we have an index “animals”, containing an information about pets and their owners.
For the sake of simplicity we will also consider that the cluster has a simple username-password authentication having both username and password equal to “admin”.
Now suppose we want to send a Pathway table pets to this local instance of Elasticsearch.
import pathway as pw pets = pw.debug.parse_to_table(“age owner pet n 1 10 Alice dog n 2 9 Bob cat n 3 8 Alice cat”)
It can be done as follows:
pw.io.elasticsearch.write( table=pets, host="http://localhost:9200", auth=pw.io.elasticsearch.ElasticSearchAuth.basic("admin", "admin"), index_name="animals", )
All the updates of table
\pets` will be indexed to “animals” as well.