document資料格式
電商**商品管理案例背景介紹
簡單的集群管理
商品的crud操作(document curd)
面向文件的搜尋分析引擎
public class employee
private class employeeinfo
employeeinfo info = new employeeinfo();
info.setbio("youdi");
info.setage(24);
info.setinteresets(new string);
employee employee = new employee();
employee.setemail("@");
employee.setinfo(info);
employee物件:裡面包含了employee類自己屬性。需要儲存在兩張表。
使用orm.資料庫是扁平化的,不能體現出物件導向的結構。
提供功能如下:
對商品資訊進行crud
執行簡單的全文檢索,以及複雜的phrase檢索
對於全文檢索結果,可以進行高亮顯示
對資料進行簡單的聚合分析
快速檢查集群的健康狀況
es提供了一套cat api,可以檢視es中各種各樣的資料
get /_cat/health?pretty
epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1524842572 23:22:52 elasticsearch_youdi yellow 1 1 10 10 0 0 10 0 - 50.0%
檢視status
green: 每個索引的primary shard和replica shard 都是active狀態
yellow: 每個索引的primary shard是active狀態,但是部分replica shard不是active狀態,處於不可用的狀態
red: 不是所有的索引的primary shard都是active狀態,部分縮影有資料丟失
為什麼現在會處於yellow狀態?
primary shard replica shard沒有第二個節點
快速檢視集群中所有索引?
get /_cat/indices?v
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
yellow open website -nvtisruruo1buienwh7vw 5 1 1 0 5.5kb 5.5kb
yellow open megacorp 3ylg1frptdynsetmzbdihg 5 1 3 0 17.5kb 17.5kb
簡單的索引操作
put /test_index?pretty
delete /test_index?pretty
新增商品
put /index/type/id
put /products/goods/1
, "_seq_no": 0,
"_primary_term": 1
}
查詢商品
get /products/goods/1
}
更新操作
替換方式: 必須提交所有的資訊
put /products/goods/1
, "_seq_no": 1,
"_primary_term": 1
}put /products/goods/1
get /products/goods/1
}post products/goods/1/_update},
"_seq_no": 4,
"_primary_term": 1
}
刪除文件
delete /products/goods/1
, "_seq_no": 5,
"_primary_term": 1
}
query string search
query dsl
query filter
full-text search
搜尋全部商品
get /products/goods/_search
, "hits": }]
}}, "hits": },}
]}}
},
搜尋賬號名字中有ber,而且按照年齡排序
get /bank/_doc/_search?q=firstname:virginia&sort=age:des
, "hits": }]
}}
query dsl
dsl:domain specified language 特定領域的語言
查詢所有的account
http request body :請求體,可以使用json的格式構建查詢語法,比較方便,可以構建各種複雜的語法。
get /bank/_doc/_search
}}, "hits":
},},
},},
},},
},},},}
]}}
ElasticSearch使用入門
es的安裝 啟動 cd.elasticsearch 2 4 3 bin elasticsearch bin elasticsearch d 後台執行 es安裝驗證 注意 預設啟動的時候es繫結的網路ip是本機127.0.0.1,只能通過這個ip訪問 兩種修改方式 1 修改config elastic...
elasticsearch學習入門
由於es更新很快,本文這類快餐式的記錄僅供參考 es的官網有比較全面的api,但我看過以後感覺api的層次還是有點亂,至少沒有mongodb的文件那麼簡單易讀。從簡單的應用開始慢慢認識es的。比如要搭建個中文新聞資訊的搜尋引擎,新聞有 標題 內容 作者 型別 發布時間 這五個字段 我們要提供 標題和...
elasticsearch 入門學習
原文 1 思考 大規模資料如何檢索 當系統資料量上了10億 100億條的時候,我們在做系統架構的時候通常會從以下角度去考慮問題 2 傳統資料庫的應對解決方案 對於關係型資料,我們通常採用以下或類似架構去解決查詢瓶頸和寫瓶頸 3 非關係型資料庫的解決方案 對於nosql資料庫,以mongdb為例,其它...