1

在 AWS CloudSearch 控制台的文本选项面板中,您可以通过文本字段输入将停用词、词干和同义词添加到搜索索引。我可以上传 471 个停用词,但不能再上传一个。当我尝试时,上传超时并报告以下javascript错误:

Uncaught TypeError: Cannot read property 'Error' of null in cs.201212282103.js

我假设我已经达到了极限。这在任何地方都有记录吗?我也有很多我希望上传的同义词。同义词有限制吗?是否有另一种上传停用词、词干和同义词的方法 - 例如 API?

4

2 回答 2

1

是的,有限制,您可以在http://docs.aws.amazon.com/cloudsearch/latest/developerguide/Limits.html上查看

Stemming dictionary size
The maximum size of a Amazon CloudSearch stemming dictionary is 500 KB.

Stopwords dictionary size
The maximum size of a Amazon CloudSearch stopwords dictionary is 10 KB.

Synonym dictionary size
The maximum size of a Amazon CloudSearch synonym dictionary is 100 KB.

但我并没有确认你有限制问题,我只是在回答其他问题。就像您指出的那样,控制台可能是暂时的问题。

于 2013-01-16T02:29:53.500 回答
0

CloudSearch Console 有一个错误(显然 6 年后仍未修复)。幸运的是,您可以使用 AWS CLI 解决问题。

我在尝试添加一些新的同义​​词时遇到了这个问题。我担心我会遇到某种限制,因为我可以将相同的同义词添加到只有少数同义词的测试分析方案中。但是在阅读了埃弗顿的回答后,我发现我的同义词词典远没有达到 100 KB 的限制。而且我怀疑 OP 也达到了限制(但是 javascript 在一定数量的数据后确实会失败,所以这是人为的限制)。

因此,我联系了 AWS Support,后者要求我尝试使用 AWS CLI 更新我的分析方案。这奏效了。这是要使用的命令:

aws cloudsearch define-analysis-scheme --domain-name <your-domain-name> --analysis-scheme file://path/to/file.json

JSON 文件中的结构应如下所示:

{ 
  "AnalysisSchemeName": "<your-scheme-name>", 
  "AnalysisSchemeLanguage": "en", 
  "AnalysisOptions": {
    "AlgorithmicStemming": "none"|"minimal"|"light"|"full", 
    "JapaneseTokenizationDictionary": "",
    "Synonyms": "{\"aliases\":{\"baseball\":[\"sport\"],\"basketball\":[\"sport\"],\"football\":[\"sport\"],\"mexican\":[\"food\"],\"pepper\":[\"food\"],\"grill\":[\"food\"]},\"groups\":[[\"travel\",\"vacation\",\"relax\",\"trip\",\"getaway\"],[\"happy\",\"cheerful\",\"joy\",\"joyful\"]]}", 
    "StemmingDictionary": "{}", 
    "Stopwords": "[\"a\",\"an\"]"
  }
}

我留下了一些同义词数据来展示如何为别名和组添加数据以及停用词的结构。

可以在定义分析方案的 AWS CLI 命令参考页面上找到更多详细信息。

于 2019-04-19T06:06:26.127 回答