Convert a relational logical schema model(in oracle) into elasticsearch nosql logical schema


(jagdish) #1

Hi All,
Could you please suggest me how to do a schema design(nosql) in elasticsearch.
As per my requirement we have already 'relational logical schema' (which is oracle schema) but we are building new version of software which has chosen ES as a NoSql Solution.
How to start the schema design in ES.
Thanks in advance

Regards,
Jagan


(Mark O Stewart) #2

Jagan,

The schema is applied with Templates. The template is setup before creating your index and has a line near the begenning similar to
"template" : "logstash*",

this will catch ANY index created where the name starts with logstash and apply the template settings.

After the template line you start defining your schema for each field in your index. You will create a line for each field and define a type.
Similar to:

"mappings" : {
  "cisco-fw" : {
     "properties": {
        "@timestamp":{"type":"date","format":"dateOptionalTime"},
        "@version":{"type":"string", "index" : "not_analyzed"},
        "action":{"type":"string"},
        "bytes":{"type":"long"},
        "cisco_message":{"type":"string"},
        "ciscotag":{"type":"string", "index" : "not_analyzed"},

See documentation for complete examples.
https://www.elastic.co/guide/en/elasticsearch/guide/2.x/custom-dynamic-mapping.html


https://jackhanington.com/blog/2014/12/11/create-a-custom-elasticsearch-template/


(system) #3