我安装了debian包
我能够使用curl推送数据:
curl -XPUT 'http://mybox:9200/blog/user/dilbert' -d '{
"name": "Dilbert Brown"
}'
Run Code Online (Sandbox Code Playgroud)
并获取它
curl -XGET 'http://mybox:9200/blog/user/dilbert'
Run Code Online (Sandbox Code Playgroud)
结果:
{
"_index": "blog",
"_type": "user",
"_id": "dilbert",
"_version": 2,
"exists": true,
"_source": {
"name": "Dilbert Brown"
}
}
Run Code Online (Sandbox Code Playgroud)
并找到它
curl -XGET 'http://mybox:9200/blog/user/_search?q=name:Dilbert+Brown&pretty=True'
Run Code Online (Sandbox Code Playgroud)
我想用5秒5秒的ttl推送相同的记录,并在尝试获取此条目时获得404 http状态代码.此条目也不应在搜索结果中可见.
注意:我尝试了各种搜索配置组合
他们都没有帮助我.
有人可以提到一个简单的步骤序列,让我实现目标结果吗?
ber*_*eal 11
这对我有用:
curl -XPUT 'http://localhost:9200/blog/user/_mapping' -d '{"user": {"_ttl": {"enabled": true, "default": 5000}}}'
curl -XPUT 'http://localhost:9200/blog/user/phb' -d '{"name" : "Pointy-Haired Boss"}'
sleep 60 # this is the default deletion interval for the expired documents
curl -XGET http://localhost:9200/blog/user/phb # 404
Run Code Online (Sandbox Code Playgroud)
@bereal是对的.
要使ttl工作,您必须首先在映射中启用它(默认情况下,它已被禁用),然后在索引文档时设置TTL值.
curl -XPUT 'mybox:9200/blog/user/_mapping?pretty' -d '{
"user": {
"_ttl": {"enabled": true}
}'
curl -XPUT 'mybox:9200/blog/user/dilbert' -d '{ "name" : "Dilbert Brown", "_ttl": "3m"}'
curl -XGET 'mybox:9200/blog/user/dilbert?pretty'
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参阅
| 归档时间: |
|
| 查看次数: |
11612 次 |
| 最近记录: |