尝试创建 Amazon CloudSearch 域和索引字段。我已设法通过 AWS PHP SDK 创建域。我也想通过 API SDK 创建这些索引字段,但我有很多字段,如果我创建一个循环来创建这些字段,我会收到速率超出错误。
这就是我目前所拥有的
$fields = [
[
'IndexFieldName' => 'field5',
'IndexFieldType' => 'text',
],
[
'IndexFieldName' => 'field6',
'IndexFieldType' => 'text',
]
];
foreach ($fields as $field) {
$this->client->defineIndexField([
'DomainName' => $domain,
'IndexField' => $field
]);
}
这实际上是在我的测试环境中运行的,并且 field5 和 field6 已成功创建。但在我的实际生产数据库和映射几乎每个字段中,我必须列出所有字段并在 AWS cloudsearch 文档中创建这些字段。
尝试本地二级索引
'LocalSecondaryIndexes' => array(
array(
'IndexName' => 'OrderDateIndex',
'KeySchema' => array(
array('AttributeName' => 'CustomerId', 'KeyType' => 'HASH'),
array('AttributeName' => 'OrderDate', 'KeyType' => 'RANGE'),
),
'Projection' => array(
'ProjectionType' => 'KEYS_ONLY',
),
),
),