elasticsearch是基于集群式的
集群式的存储,将数据以json格式存入集群中。分类为document,创建一个索引index对document进行管理同时对文档document进行分类type。elasticsearch与关系型数据库的区别
es 关系型数据库 index 数据库 type 数据表 document 行 字段 列 es中的索引与关系型数据中的索引的区别
关系型数据库中索引
定义:索引是一种用于提高响应确定查询条件的记录的检索速度的辅助存取结构。
es中的索引:es中是通过索引进行search以及全文检索(当然也可以不指定索引)
所以本质上就是不同的- es 请求结构
1)GET:获取请求对象的当前状态。
get请求通过索引和id获取制定的json数据
curl -XGET 'http://localhost:9200/twitter/tweet/1'
{
"_index" : "twitter",
"_type" : "tweet",
"_id" : "1",
"_version" : 1,
"found": true,
"_source" : {
"user" : "kimchy",
"postDate" : "2009-11-15T14:12:12",
"message" : "trying out Elasticsearch"
}
}
返回结果包括文档的索引类型以及id版本和文档内容(当found属性为false时不可见)
realtime
get API默认是实时,不会被索引的刷新率影响。当可以设realtime属性为false关闭该属性。或者设置全局变量action.get.realtime为false在节点配置文件中。
但使用get获取指定字段,会希望尽可能抓取以保存的字段(当映射时 映射字段会被保存)。当启用实时属性时,不存在保存数据的概念(至少在下一次刷新前)。映射会直接从source中直接抓取,及时数据被保存
2)POST:改变对象的当前状态。
3)PUT:创建一个对象。
4)DELETE:销毁对象。
5)HEAD:请求获取对象的基础信息。