使用 AWS Lambda 进行搜索
在本教程中,我们将使用 Quickwit Lambda 对位于 AWS S3 上的大约 2000 万条日志条目(解压缩后 7 GB)进行索引和搜索。
具体来说,我们将部署一个包含 Quickwit Lambda 的 AWS CloudFormation 栈,以及两个存储桶:一个暂存存储桶用于存放待索引的 gzip 压缩的新行分隔 JSON 文件,另一个存储桶用于存放索引数据。暂存存储桶是可选的,因为 Quickwit 索引器可以从它有访问权限的任何 S3 文件读取数据。
安装
安装 AWS CDK
我们将使用 AWS CDK 来编写基础设施自动化脚本。使用 npm 安装它:
npm install -g aws-cdk
您还需要在 shell 中正确配置 AWS 凭证。一种方法是使用 凭证文件。
最后,克隆 Quickwit 仓库:
git clone https://github.com/quickwit-oss/tutorials.git
cd tutorials/simple-lambda-stack
设置 Python 环境
我们使用 Python 3.10 来定义需要部署的 AWS CloudFormation 栈,并使用 Python CLI 调用 Lambda 函数。 让我们安装这些必要的包(boto3, aws-cdk-lib, click, pyyaml)。
# Install pipenv if needed.
pip install --user pipenv
pipenv shell
pipenv install