模式自由(Schema Free) & 面向文档的 (Document Oriented)
搜索引擎的数据模型属于模式自由以及数据库是面向文档的,以目前#nosql的发展趋势来看,使用这种数据模型来构建应用程序已经被证明是非常高效的。
elasticsearch 的模型基于 JSON, 事实上,在近些年,它俨然已经成为数据呈现的一个标准,此外,通过JSON,可以非常简单的表示半结构化的数据,同样的,大多数编程语言都会优先支持JSON数据的解析.
先来看几个简单的例子,都是创建索引的。(ps:curl是一个linux下的处理HTTP请求的一个工具,你可以使用fiddler或者其他类似的工具来执行elasticsearch提供的RESTful接口)。
//索引
$ curl -XPUT http://localhost:9200/twitter/user/kimchy -d '{
"name" : "Shay Banon"
}'
//索引,多个field
$ curl -XPUT http://localhost:9200/twitter/tweet/1 -d '{
"user": "kimchy",
"post_date": "2009-11-15T13:12:00",
"message": "Trying out elasticsearch, so far so good?"
}'
//索引,注意url里面的id是不一样的哦
$ curl -XPUT http://localhost:9200/twitter/tweet/2 -d '{
"user": "kimchy",
"post_date": "2009-11-15T14:12:12",
"message": "You know, for Search"
}'