标签: amazon-cloudsearch

从Amazon CloudSearch获取随机搜索结果

我的查询如下:

/2013-01-01/search?q=(and author:'william' category:'Videos')&q.parser=structured&expr.random=_rand&return=_all_fields&size=1
Run Code Online (Sandbox Code Playgroud)

并返回一个视频.但是,我希望每个请求都有一个随机videoId.

使用表达式&expr.random=_rand;我无法获取随机结果,我在文档中找不到任何解决方案.

如何在每个请求中获得随机搜索结果?

amazon-cloudsearch

3
推荐指数
1
解决办法
637
查看次数

AWS CloudSearch是否允许在同一查询中搜索多个域?

我的团队的应用程序在我们的应用程序数据库中的11个表中有许多数据类型.为了在所有这些类型的特定字段上实现有效的关键字搜索,我们正在探索AWS CloudSearch作为一个选项.我们的目的是为给定的关键字搜索返回所有记录类型的相关结果.

我的理解是每个记录类型(每个表)最终都会在一个单独的CloudSearch域中.如果是这种情况,该服务是否允许跨多个域进行搜索?或者在返回后需要提交和合并多个请求?

如果我在上面的任何一点上弄错了,请纠正我.我一般都在搜索CloudSearch文档以获取有关此内容的提示,但尚未得出任何结论.

附注:

我们的替代方案是非自托管的ElasticSearch服务,它可以解决这个问题.但是,我们的应用程序生态系统目前仅在少数AWS服务中托管.在这方面,CloudSearch与ElasticSearch的优缺点尚不清楚.如果可以通过与上述相关的技术原因作出认可,我将不胜感激.虽然,我尊重这不是一般的专业与利弊讨论的地方.

amazon-web-services amazon-cloudsearch

3
推荐指数
1
解决办法
741
查看次数

AWS CloudSearch:[fieldname]的值不能是JSON数组或对象

我在int-array类型的字段中遇到此问题.使用aws-sdk for Node.js,我通过CloudSearchDomain.uploadDocuments()方法提交文档.文档的JSON(在searchContent变量中)是在节点进程中创建的,然后我使用:

var params = {
  contentType: 'application/json',
  documents: JSON.stringify([searchContent])
};
csd.uploadDocuments(params, function(err, data){
  ...(callback process)...
});
Run Code Online (Sandbox Code Playgroud)

非字符串化的searchContent对象如下所示:

{ id: 1,
  type: 'Product',
  hash_type_id: 'Product-1',
  name: 'Test product',
  description: 'A test product',
  category: [ 2 ],
  content: '<some text here>',
  state: [ 1 ],
  hash_all: '<some text>'
}
Run Code Online (Sandbox Code Playgroud)

和字符串化如下:

[{"id":1,"type":"Product","hash_type_id":"Product-1","name":"Test product","description":"A test product","content":" <some text>","category":[2],"state":[1],"hash_all":"<some text>"}]
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

{
  "message": "{ [\"The value of category cannot be a JSON array or object\"] }",
  "code": …
Run Code Online (Sandbox Code Playgroud)

json node.js amazon-cloudsearch aws-sdk

2
推荐指数
1
解决办法
1212
查看次数

Amazon Cloudsearch未使用部分字符串进行搜索

我正在测试Amazon Cloudsearch我的Web应用程序,我遇到了一些奇怪的问题.

我有以下域指标:name,email,id.

例如,我有以下数据:John Doe,John @ example.com,1

当我搜索时,jo我什么都没得到.如果我搜索joh我仍然什么都没有,但如果我搜索john然后我得到上面的文件作为命中.当我放置部分字符串时为什么没有得到?我甚至提出了建议器name并启用email模糊匹配.还有别的东西我不见了吗?我在下面看到了这个:

http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-text.html

http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html

http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-compound-queries.html

我正在使用boto以及AWS页面上的表单进行搜索.

full-text-search amazon-cloudsearch

2
推荐指数
1
解决办法
3728
查看次数

整个字符串的CloudSearch模糊匹配不起作用

我已经使用保存地址的记录设置了Amazon CloudSearch域。我想在地址字段上进行模糊文本搜索。

说我有一条记录,其地址如下:

1600 Amphitheatre Parkway, Mountain View, CA 94043.
Run Code Online (Sandbox Code Playgroud)

如果我搜索,'Amphitheatre Parkway, Muntain View'~5没有结果。我基本上删除了“山”中的“ o”,但找不到任何结果。

如果我搜索Muntain~5它,它将找到它,但是如果我搜索Miunntain~5它,则找不到任何东西。

我应该补充一点,我创建了一个自由文本分析计划,没有词干,停用词或同义词。这就是用于类型的地址字段的内容text

我应该如何设置CloudSearch以便进行此类查询?

amazon-web-services amazon-cloudsearch

2
推荐指数
1
解决办法
2075
查看次数

如何使用带有AWS CloudSearch的结构化前缀运算符进行通配符搜索

我目前正在迁移到2013 Cloudsearch API(来自2011 API).以前,我一直在我的搜索中使用通配符前缀,如下所示:

bq=(and 'first secon*')  
Run Code Online (Sandbox Code Playgroud)

我的查询有时包括构面选项,这就是我使用布尔查询语法而不是简单版本的原因.

我使用2013引擎创建了一个新的cloudsearch实例并将其编入索引.在bq现在的参数已经一去不复返了,所以我不得不使用q参数与q.parser=structured参数,以获得相同的功能.当我用这样的东西查询时:

q.parser=simple&q=first secon*
Run Code Online (Sandbox Code Playgroud)

......我收到了大量的结果.但是当我查询时:

q.parser=structured&q=(prefix 'first secon')
Run Code Online (Sandbox Code Playgroud)

......我没有点击.我没有收到错误,只是没有找到结果.难道我做错了什么?

我刚刚意识到,如果我firs使用2013 API 对单词进行前缀搜索,则前缀搜索似乎正在起作用.但是如果我在查询中只有一个单词,first secon那么前缀搜索就不起作用了.那么如何使用结构化前缀运算符完成?

search-engine amazon-web-services amazon-cloudsearch

2
推荐指数
1
解决办法
2377
查看次数

2
推荐指数
1
解决办法
761
查看次数

使用单个命中的唯一文档 ID 使用 Amazon CloudSearch 搜索数据

是否可以使用单个命中的唯一文档 ID 通过 Amazon CloudSearch 搜索数据

示例:在 Json 格式中获取结果

stdClass Object
(
[rank] => -text_relevance
[match-expr] => (label company_name:'Greenline')
[hits] => stdClass Object        
   (
        [found] => 6
        [start] => 0
        [hit] => Array
            (
                [0] => stdClass Object                       
                (
                        [id] => ras_csv_693
                        [data] => stdClass Object

                      (
                                [all_us_sic_codes] => Array
                                    (
                                        [0] => 55719901
                                    )

                                [company_name] => Array
                                    (
                                        [0] => Greenline Equipment
                                    )

                                [contact_first_name] => Array
                                    (
                                        [0] => John
                                    )

                                [total_employees] => Array
                                    (
                                        [0] => 30
                                    ) …
Run Code Online (Sandbox Code Playgroud)

php json amazon-cloudsearch

1
推荐指数
1
解决办法
2904
查看次数

Boto 2.6 CloudSearch"无模块命名请求"错误

我正在关注本教程:http: //boto.cloudhackers.com/en/latest/cloudsearch_tut.html

我已经安装了boto 2.6.命令:

conn = boto.connect_cloudsearch()
Run Code Online (Sandbox Code Playgroud)

产生错误:

>>> conn = boto.connect_cloudsearch()Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "boto/__init__.py", line 616, in connect_cloudsearch
    from boto.cloudsearch.layer2 import Layer2
  File "boto/cloudsearch/layer2.py", line 26, in <module>
    from .domain import Domain
  File "boto/cloudsearch/domain.py", line 34, in <module>
    from .document import DocumentServiceConnection
  File "boto/cloudsearch/document.py", line 30, in <module>
    import requests
ImportError: No module named requests
Run Code Online (Sandbox Code Playgroud)

如何找到丢失的请求模块?

python boto amazon-web-services amazon-cloudsearch

1
推荐指数
1
解决办法
5597
查看次数

如何在AWS CloudSearch中指定搜索字段(使用.net SDK)

我有一个域,我有2个可搜索的字段(文字和文本字段),基本上是类别和内容.

如何指定要在字段中使用的特定字段?据我所知,它将默认搜索所有可搜索的字段,但这不是我想要的(即,不想查找类别Cats并从另一个类别获取结果只是因为它包含单词Cat in the内容.)

我正在使用.Net SDK,我一直在阅读他们的文档,但找不到该部分.

谢谢!

.net sdk amazon-web-services amazon-cloudsearch

1
推荐指数
1
解决办法
1086
查看次数