Amazon S3 文档元数据
您可以使用元数据文件向 Amazon S3 存储桶中的文档添加元数据(有关文档的其他信息)。每个元数据文件都与一个已编入索引的文档相关联。
您的元数据文件必须与已编入索引的文件存储在同一个存储桶中。创建 Amazon S3 数据来源时,您可以使用控制台或 DocumentsMetadataConfiguration 参数 S3Prefix 字段为元数据文件指定存储桶中的位置。如果未指定 Amazon S3 前缀,则元数据文件必须与已编入索引的文档存储在相同的位置。
如果您为元数据文件指定 Amazon S3 前缀,则这些文件位于与已编入索引的文档平行的目录结构中。Amazon Kendra 仅在指定目录中查找元数据。如果未读取元数据,请检查目录位置是否与元数据的位置相匹配。
以下示例展示了如何将已编入索引的文档位置映射到元数据文件位置。请注意,文档的 Amazon S3 密钥会附加到元数据的 Amazon S3 前缀后,然后在添加后缀 .metadata.json 以构成元数据文件的 Amazon S3 路径。Amazon S3 组合键(加元数据的前缀 Amazon S3 和后缀 .metadata.json)的总长度不得超过 1024 个字符。考虑到将键与前缀和后缀组合时要添加的其他字符,建议将 Amazon S3 键保持在 1000 个字符以下。
Bucket name:
s3://bucketName
Document path:
documents
Metadata path:
none
File mapping
s3://bucketName/documents/file.txt ->
s3://bucketName/documents/file.txt.metadata.jsonBucket name:
s3://bucketName
Document path:
documents/legal
Metadata path:
metadata
File mapping
s3://bucketName/documents/legal/file.txt ->
s3://bucketName/metadata/documents/legal/file.txt.metadata.json文档元数据在 JSON 文件中定义。该文件必须是没有 BOM 标记的 UTF-8 文本文件。JSON 文件的文件名必须是 <document>.<extension>.metadata.json。在此示例中,“document”是应用元数据的文档的名称,“extension”是该文档的文件扩展名。在 <document>.<extension>.metadata.json 中,文档 ID 必须是唯一的。
JSON 文件的内容遵循此模板。所有属性/字段都是可选的,因此不必包含所有属性。必须为要包含的每个属性提供一个值;该值不能为空。如果您未指定 _source_uri,则 Amazon Kendra 在搜索结果中返回的链接将指向包含该文档的 Amazon S3 存储桶。DocumentId 映射到字段 s3_document_id,表示文档在 S3 中的绝对路径。
{ "DocumentId": "S3 document ID, the S3 path to doc", "Attributes": { "_category": "document category", "_created_at": "ISO 8601 encoded string", "_last_updated_at": "ISO 8601 encoded string", "_source_uri": "document URI", "_version": "file version", "_view_count":number of times document has been viewed, "custom attribute key": "custom attribute value",additional custom attributes}, "AccessControlList": [ { "Name": "user name", "Type": "GROUP|USER", "Access": "ALLOW|DENY" } ], "Title": "document title", "ContentType": "For example HTML|
_created_at 和 _last_updated_at 元数据字段是 ISO 8601 编码的日期。例如,2012-03-25T12:30:10+01:00 是中部欧洲时间 2012 年 3 月 25 日中午 12:30(10 秒)的 ISO 8601 日期-时间格式。
您可以向 Attributes 字段添加有关文档的其他信息,该文档用于筛选查询或对查询响应进行分组。有关更多信息,请参阅创建自定义文档字段。
您可以使用 AccessControlList 字段来筛选查询响应。这样,只有特定的用户和组才能访问文档。有关更多信息,请参阅根据用户上下文进行筛选。