
类型:数据库
简介:实时且性能出色的向量数据库,专门针对大规模向量搜索进行优化。
在使用 Pinecone 构建向量数据库应用时,很多用户需要将外部数据源或日志系统进行统一管理。Amazon S3 作为主流对象存储服务,可以与 Pinecone 进行集成,用于数据导入以及审计日志导出。
本文将详细介绍如何将 Pinecone 与 Amazon S3 进行连接配置,包括 IAM 权限设置、角色创建以及 Pinecone 端集成步骤。
一、准备工作
在开始之前,请确保你已经具备以下条件:
已注册并可正常使用的 Pinecone 账号
已创建的 Amazon S3 存储桶(Bucket)
拥有 AWS IAM 权限(可创建 Policy 与 Role)
二、创建IAM Policy(访问权限策略)
在 AWS IAM 控制台中,按以下步骤创建访问策略:
1. 进入策略管理
- 打开 AWS IAM 控制台
- 在左侧导航栏点击 Policies(策略)
- 点击 Create policy(创建策略)
2. 配置 S3 权限
在 “Select a service” 中选择:
服务:S3
然后添加以下权限操作:
- ListBucket:允许列出存储桶中的对象(用于数据导入与日志导出)
- GetObject:允许读取 S3 中的对象(用于数据导入)
- PutObject:允许写入对象到 S3(用于审计日志导出)
3. 配置资源范围
在 Resources(资源)中选择 Specific(指定资源):
Bucket ARN 示例:
arn:aws:s3:::example-bucket-name
Object ARN 示例:
arn:aws:s3:::example-bucket-name/*
4. 完成策略创建
点击 Next
命名策略,例如:
Pinecone-S3-Access
点击 Create policy 完成创建
三、(可选)指定S3子目录访问权限
如果你希望仅允许 Pinecone 访问某个子目录(例如 pinecone-logs/),需要单独配置权限结构。
1. ListBucket 目录权限控制
{
“Sid”: “ListBucketWithPrefix”,
“Effect”: “Allow”,
“Action”: “s3:ListBucket”,
“Resource”: “arn:aws:s3:::example-bucket-name”,
“Condition”: {
“StringLike”: {
“s3:prefix”: [
“pinecone-logs/”,
“pinecone-logs/*”
]
}
}
}
2. 对象读写权限(子目录)
{
“Sid”: “ObjectActionsInSubdirectory”,
“Effect”: “Allow”,
“Action”: [
“s3:PutObject”,
“s3:GetObject”
],
“Resource”: “arn:aws:s3:::example-bucket-name/pinecone-logs/*”
}
3. 完整示例策略
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Sid”: “ListBucketWithPrefix”,
“Effect”: “Allow”,
“Action”: “s3:ListBucket”,
“Resource”: “arn:aws:s3:::example-bucket-name”,
“Condition”: {
“StringLike”: {
“s3:prefix”: [
“pinecone-logs/”,
“pinecone-logs/*”
]
}
}
},
{
“Sid”: “ObjectActionsInSubdirectory”,
“Effect”: “Allow”,
“Action”: [
“s3:PutObject”,
“s3:GetObject”
],
“Resource”: “arn:aws:s3:::example-bucket-name/pinecone-logs/*”
}
]
}
注意:
- ListBucket 作用于整个 Bucket,并通过 prefix 控制目录范围
- GetObject / PutObject 直接作用于对象路径(Object ARN)
四、创建IAM Role(跨账号访问授权)
完成 Policy 后,需要创建 IAM Role 供 Pinecone 使用。
1. 创建角色
- 进入 IAM 控制台
- 点击 Roles(角色)
- 点击 Create role
2. 选择信任实体
- 选择 AWS account
- 选择 Another AWS account
- 输入 Pinecone 提供的 AWS VPC Account ID:713131977538
- 点击 Next。
3. 绑定权限策略
- 选择刚刚创建的 Pinecone-S3-Access Policy
- 点击 Next
4. 设置角色名称
例如Pinecone
创建完成后进入角色详情页。
5. 获取 Role ARN
在 Summary 页面中找到 Role ARN,例如:
arn:aws:iam::123456789012:role/PineconeAccess
复制该 ARN,后续需要在 Pinecone 控制台中使用。
五、在Pinecone中配置S3存储集成
该步骤用于数据导入功能(审计日志可选)。
1. 进入 Pinecone 控制台
登录 Pinecone
选择对应 Project
2. 打开存储集成
路径如下:
Manage → Storage integrations
3. 添加 S3 集成
- 点击 Add integration
- 输入集成名称(自定义)
- 选择 Amazon S3
- 粘贴 IAM Role ARN
- 点击 Add integration
六、后续可用功能
完成集成后,你可以实现以下能力:
1. 从 S3 导入数据到 Pinecone Index
适用于:
- 向量化数据初始化
- 批量数据导入
- AI 知识库构建
2. 导出审计日志到 S3
适用于:
- 操作记录归档
- 安全审计
- 企业合规需求

