Best practices for product search in English and Thai using Elasticsearch
- Install Elastic tack. For this tutorial we only need:
- ElasticSearch
- Kibana
- Logstash; may require JDK
- Install ICU tokenizer plugin
- Run elasticsearch locally (default port is 9200), in elasticsearch folder:
./bin/elasticsearch
- Import the sample
.csv
file into elasticsearch using logstash (see field data types for reference):
#do not forget to change path to files in tops_sample.conf
logstash -f tops_sample.conf
- Run kibana for the local elasticsearch instance (default port is 5601), in kibana folder:
./bin/kibana
-
Run
tops_sample_optimized.json
on kibana to create new mappings with optimized analyzers. -
Follow
tops_sample_dev.json
for how to configure mappings, settings and queries.
Run elastic stack with below command.
docker-compose up
- elasticdump - Tools for moving and saving indices; requires npm.
- elasticsearch head - Chrome addon for index visualization