How to create sample data to perform searches using elastic search?

By | July 10, 2019

Step 1 – Go to: http://www.json-generator.com/

[
  '{{repeat(1000, 1000)}}',
  {
    name: '{{firstName()}} {{surname()}}',
    age: '{{integer(18, 75)}}',
    gender: '{{gender()}}',
    email: '{{email()}}',
    phone: '+1 {{phone()}}',
    street: '{{integer(100, 999)}} {{street()}}',
    city: '{{city()}}',
    state: '{{state()}}, {{integer(100, 10000)}}'
  }
]

Step 2 – Download and save as customers_full.json

Step 3 – Open customers_full.json in sublimetext

  • Remove the array brackets
  • Find-Replace },{ with }\n{ in the regex mode on sublime text
  • Find-Replace {“name” with {“index” : {}}\n{“name” in the regex model on sublime text

Now the file is in a format that can be parsed by elastic search.

curl -H "Content-Type: application/x-ndjson" -XPOST 'localhost:9200/customers/personal/_bulk?pretty&refresh' --data-binary @"customers_full.json"

curl -XGET 'localhost:9200/_cat/indices?v&pretty'

Leave a Reply