## 无服务器搜索:深入研究 Nixiesearch 在 AWS Lambda 上的应用 本文探讨了实现真正无服务器搜索的挑战,揭穿了当前“无服务器搜索”解决方案不过是隐藏的、始终在线的基础设施的观点。作者尝试在 AWS Lambda 函数中运行 Nixiesearch,一个基于 Lucene 的搜索引擎,来解决这个问题。 主要障碍包括类似 Elasticsearch 引擎的大型容器尺寸(约 700MB)、缓慢的启动时间(40+ 秒)以及集群状态管理的复杂性。解决方案涉及使用 GraalVM native-image 创建更小、更快的二进制文件,并探索通过 S3 和 EFS 进行远程索引存储。 实验表明,虽然冷启动时间可以缩短到半秒以下,但网络存储(尤其是 EFS)由于缓慢的随机读取而引入了显著的延迟。将索引烘焙到 Docker 镜像中并不能改善情况,因为 Lambda 仍然将其缓存在 S3 中。 作者提出了一种未来的方向:利用 S3 的并发性在 HNSW 图遍历期间并行化 embedding 加载,可能实现约 100 毫秒的基线延迟。最终,该项目展示了无服务器搜索的复杂性,并强调了需要进行架构调整以克服固有的限制。