我正在升级我们的REST API端点,并且我想在他们调用要弃用的端点时通知客户端.
我应该在响应中使用哪个标头,并显示"此API版本已被弃用,请参阅最新文档以更新您的终端"的消息
如何从弹性搜索中获得所有结果,因为结果仅显示限制为10.我有一个像这样的查询:
@data = Athlete.search :load => true do
size 15
query do
boolean do
must { string q, {:fields => ["name", "other_names", "nickname", "short_name"], :phrase_slop => 5} }
unless conditions.blank?
conditions.each do |condition|
must { eval(condition) }
end
end
unless excludes.blank?
excludes.each do |exclude|
must_not { eval(exclude) }
end
end
end
end
sort do
by '_score', "desc"
end
end
Run Code Online (Sandbox Code Playgroud)
我已将限制设置为15,但我不想让它无限制,以便我可以获得所有数据,我无法设置限制,因为我的数据不断变化,我想获得所有数据.
我选择了带有graylog2的elasticsearch,这是非常糟糕的一周.我正在尝试使用Python对ES中的数据运行查询.
我试过跟随客户.
Elasticutils - 另一个记录,但没有完整的样本.附加代码时出现以下错误.我甚至不知道它如何使用这个S()连接到正确的主机?
es = get_es(hosts = HOST,default_indexes = [INDEX])
basic_s = S().索引(INDEX).doctypes(DOCTYPE).values_dict()
结果:
print basic_s.query(message__text="login/delete")
File "/usr/lib/python2.7/site-packages/elasticutils/__init__.py", line 223, in __repr__
data = list(self)[:REPR_OUTPUT_SIZE + 1]
File "/usr/lib/python2.7/site-packages/elasticutils/__init__.py", line 623, in __iter__
return iter(self._do_search())
File "/usr/lib/python2.7/site-packages/elasticutils/__init__.py", line 573, in _do_search
hits = self.raw()
File "/usr/lib/python2.7/site-packages/elasticutils/__init__.py", line 615, in raw
hits = es.search(qs, self.get_indexes(), self.get_doctypes())
File "/usr/lib/python2.7/site-packages/pyes/es.py", line 841, in search
return self._query_call("_search", body, indexes, doc_types, **query_params)
File "/usr/lib/python2.7/site-packages/pyes/es.py", line 251, in …Run Code Online (Sandbox Code Playgroud) 我在NEST做这个查询
var result = elasticClient.Search<SearchItemClass>( s=>
s.Index("indexName")
.Type("typeName")
.Query(q => q.ConstantScore(score => score.Filter(f => f.Term("fieldName", "term"))))
);
Run Code Online (Sandbox Code Playgroud)
这将默认返回10次点击.
有没有办法可以得到所有结果,没有指示.Size(值)或.Take(值)?
提前致谢!
我在文件夹中的文档很少,我想检查此文件夹中的所有文档是否已编入索引.为此,对于文件夹中的每个文档名称,我想为ES中索引的文档运行循环并进行比较.所以我想要检索所有文件.
有同样的问题的一些其他可能的重复就像检索一个(ElasticSearch)NEST查询所有记录,并在此处输入链接的描述,但他们没有帮助我的文档已经从那个时候改变了.(有什么关于扫描当前文档中)
我试过用client.search<T>().但根据文档,检索默认数量为10的结果.我想在不提及记录大小的情况下获取所有记录?(因为索引的大小会发生变化)
或者是否可以先获取索引的大小,然后将此数字作为输入发送到大小以获取所有文档并循环?
我正在制作和调查检索信息研讨会.我有一个json带有文章列表的文件,我需要对它们进行索引,并在使用带有突出显示的过滤器之后.
在终端中执行此操作的步骤列表如下:
1.创建具有渗透的地图.
curl -XPUT 'localhost:9200/my-index?pretty' -H 'Content-Type: application/json' -d'
{
"mappings": {
"_doc": {
"properties": {
"title": {
"type": "text"
},
"query": {
"type": "percolator"
}
}
}
}
}
'
Run Code Online (Sandbox Code Playgroud)
索引新文章:
Run Code Online (Sandbox Code Playgroud)curl -XPUT 'localhost:9200/my-index/_doc/1?refresh&pretty' -H 'Content-Type: application/json' -d' { "CourseId":35, "UnitId":12390, "id":"16069", "CourseName":"ARK102U_ARKEOLOJ?K ALAN YÖNET?M?", "FieldId":8, "field":"TAR?H", "query": { "span_near" : { "clauses" : [ { "span_term" : { "title" : "dünya" } }, { "span_term" : { "title" : "miras?" } }, { "span_term" : …
TL;DR:尝试使用 Boto3 将 .json 文件放入 S3 存储桶,过程非常慢。寻找加快速度的方法。
这是我关于SO的第一个问题,所以如果我遗漏了任何重要的细节,我深表歉意。本质上,我试图从 Elasticsearch 中提取数据并使用 Boto3 将其存储在 S3 存储桶中。我参考这篇文章使用ES Python客户端的滚动功能拉取多页ES数据。当我滚动时,我正在处理数据并将其以 [timestamp].json 格式放入存储桶中,使用以下命令:
s3 = boto3.resource('s3')
data = '{"some":"json","test":"data"}'
key = "path/to/my/file/[timestamp].json"
s3.Bucket('my_bucket').put_object(Key=key, Body=data)
Run Code Online (Sandbox Code Playgroud)
在我的机器上运行这个程序时,我注意到这个过程非常慢。使用line profiler,我发现这一行消耗了整个程序 96% 以上的时间:
s3.Bucket('my_bucket').put_object(Key=key, Body=data)
Run Code Online (Sandbox Code Playgroud)
我可以进行哪些修改来加快此过程?请记住,我在程序中创建 .json 文件(每个文件约为 240 字节)并将它们直接流式传输到 S3,而不是在本地保存并上传文件。提前致谢。
几天来,我一直在寻找这个问题的解决方案.用例是仅查看特定类型的文档.通常在谷歌搜索很长一段时间后,我最终会得到一些带有通配符的搜索查询.我经历了许多SO帖子,像是一棵这样,这和弹性文档也.我试过下面的网址,但没有任何运气.
curl -XGET 'localhost:9200/analytics/test/_search' -d '
{
"query" : {
"match_all" : {}
}
}'
curl -XGET 'localhost:9200/analytics/test/_search' -d '
{
"query": {
"type":{
"value": "test"
}
}
}'
Run Code Online (Sandbox Code Playgroud)
在文档类型上是否存在类似外卡搜索的内容,以返回该特定doc_type的所有文档?
我想从elasticsearch集群中的全匹配查询中获取所有结果.我不在乎结果是否是最新的,我不关心订单,我只想稳定地继续检查所有结果,然后在开始时重新开始.滚动和扫描是最好的,这似乎有点受欢迎拍摄我不需要的快照.我将关注处理数百万份文档.