typesense官网,开源搜索引擎,提供快速,容错和内存模糊搜索功能简介Typesense: 打造卓越搜索体验的引擎在数字化时代,用户体验的关键要素之一是一个高效、准确且愉悦的搜索引擎。Typesense作为一款开源搜索引擎,旨在提供快速、容错和内存模糊搜索功能,为用户打造出令人满意的搜索体验。相较于Algolia和ElasticSearch,Typesense是一个更为用户友好的替代方案。typesense官网: https://typesense.org/Typesense 快速入门指南 快速入门无论您是开发者、数据科学家还是企业家,Typesense都提供了简单易懂的入门体验。该搜索引擎具备一系列引人注目的特性,使其成为搜索领域的瑰宝。Typesense作为一款专注于提供快速、准确和愉悦搜索体验的开源搜索引擎。无论您是开发者、数据科学家还是企业家,Typesense都为您提供了简单易懂的入门体验。步骤1:安装 Typesense首先,您需要安装 Typesense。我们提供了多种安装方式,您可以选择最适合您的方式进行安装:– **选项1:** 您可以从我们的官方网站下载适用于Linux(x86_64和arm64)和Mac(x86_64)的二进制包。– **选项2:** 通过使用我们提供的官方Docker镜像,您可以轻松在任何环境中运行 Typesense。– **选项3:** 如果您更倾向于托管集群,您可以考虑在 Typesense Cloud 上部署托管集群。### 步骤2:配置和启动 Typesense一旦安装完成,接下来是配置 Typesense 并启动它。以下是一个简单的配置示例:“`json{“nodes”: [{“host”: “localhost”,“port”: 8108,“protocol”: “http”}],“api_key”: “your-api-key”,“enable_cors”: true,“num_shards”: 1,“num_replicas”: 1}“`确保您根据实际需求修改配置文件中的参数。然后,通过以下命令启动 Typesense:“`bashtypesense-server –config typesense-server-config.json“`### 步骤3:使用 Typesense APITypesense 提供了强大而简单的 API,以便您轻松地与搜索引擎进行交互。以下是一些基本的 API 操作:– **创建一个集合(Collection):** 您可以使用 `POST /collections` 接口创建一个新的集合,定义字段类型、搜索权重等。– **导入数据:** 通过 `POST /collections/{collection_name}/documents` 接口,您可以将数据导入 Typesense 集合中。– **执行搜索:** 使用 `GET /collections/{collection_name}/documents` 接口进行搜索,根据需要传递搜索参数。### 步骤4:体验 Typesense 的特色功能Typesense 提供了许多引人注目的特色功能,以提升搜索体验。尝试以下功能:– **容错处理:** 输入一些带有拼写错误的搜索词,看看 Typesense 如何优雅地处理并返回相关结果。– **可调排名:** 使用 `GET /collections/{collection_name}/documents` 接口,调整搜索结果的排名顺序。– **地理搜索:** 尝试使用地理坐标进行搜索,了解 Typesense 如何根据位置信息排序结果。– **语义/混合搜索:** 利用内置模型或第三方 API,尝试进行语义搜索并观察结果。### 步骤5:参与 Typesense 社区如果您有任何问题、建议或反馈,我们鼓励您积极参与 Typesense 社区。您可以通过查看我们的问题跟踪器,提出新的功能请求或解答其他用户的问题。我们根据用户反馈来不断改进 Typesense,因此期待听到您的声音!通过这个快速入门,您现在应该能够体验 Typesense 的基本功能并开始构建卓越的搜索体验。祝您使用 Typesense 轻松愉快!特色功能1. **容错处理:** Typesense能够优雅地处理打字错误,提供卓越的容错处理,确保用户在输入错误时依然能够找到相关结果。2. **简单愉悦:** Typesense易于设置、集成、操作和扩展,用户可以轻松上手,即使是对搜索引擎不太了解的初学者也能迅速掌握。3. **极速搜索:** Typesense由C++构建,从底层精心设计,实现低延迟(<50毫秒)的即时搜索,确保用户能够快速获取结果。4. **可调排名:** 用户可以轻松地调整搜索结果,使其完美符合用户的需求。5. **排序:** 在查询时,可以根据特定字段动态排序结果,例如“按价格升序排列”。6. **分面和过滤:** 可以深入了解并细化搜索结果,方便用户快速找到需要的信息。7. **分组和去重:** 将相似的结果分组显示,提供更多多样性。8. **联合搜索:** 可以在单个HTTP请求中跨多个集合(索引)中进行搜索。9. **地理搜索:** 可以根据纬度/经度或在一个边界框内进行搜索和排序。10. **向量搜索:** 可以将来自机器学习模型的嵌入索引到Typesense中,进行最近邻搜索,用于构建相似性搜索、语义搜索、视觉搜索、推荐等功能。11. **语义/混合搜索:** 可以使用内置模型(如S-BERT、E-5等)或使用OpenAI、PaLM API等,自动生成Typesense内的嵌入,用于查询和索引数据,实现出色的语义搜索和关键字搜索体验。12. **作用域API密钥:** 可以生成仅允许访问特定记录的API密钥,适用于多租户应用。13. **同义词:** 定义单词的等效词,确保搜索一个词将返回定义的同义词的结果。14. **策展和推销:** 可以将特定记录提升到搜索结果的固定位置,进行特别展示。15. **基于Raft的集群:** 可以设置高度可用的分布式集群。16. **无缝版本升级:** 当新版本的Typesense发布时,只需替换二进制文件并重新启动Typesense即可完成升级。17. **无运行时依赖:** Typesense是一个单一的二进制文件,您可以使用单一命令在本地或生产环境中运行它。如果以上功能列表中没有您需要的功能,请查看我们的问题跟踪器,看看是否有人已经提出了此功能请求,并在其中添加一条评论解释您的用例。如果没有,请新建一个问题。我们根据用户反馈来确定路线图的优先级,因此期待听到您的声音。路线图Typesense的公共路线图可在[此处](https://github.com/typesense/typesense/projects/1)找到。第一列还解释了我们如何根据用户反馈、您如何影响优先级以及我们的发布节奏来设置功能的优先级。基准测试我们进行了基准测试,包含以下数据集:1. 包含220万个食谱(食谱名称和配料)的数据集:– 在Typesense中索引时占用约900MB的RAM。– 索引所有220万条记录耗时3.6分钟。– 在4vCPU服务器上,Typesense能够处理每秒104个并发搜索查询,平均搜索处理时间为11毫秒。2. 包含2800万本书(书名、作者和分类)的数据集:– 在Typesense中索引时占用约14GB的RAM。– 索引所有2800万条记录耗时78分钟。– 在4vCPU服务器上,Typesense能够处理每秒46个并发搜索查询,平均搜索处理时间为28毫秒。3. 包含300万个产品(亚马逊产品数据)的数据集:– 在8-vCPU 3节点高可用Typesense集群上,Typesense能够处理每秒250个并发搜索查询。我们期待使用更大的数据集进行基准测试。如果您知道公共领域中的大型结构化数据集,请告诉我们。如果您有关于自己大型数据集的基准测试结果,请通过开启一个问题告诉我们!用户Typesense被许多领域和行业的用户广泛使用。在Typesense Cloud上,我们每月为用户提供超过15亿次搜索服务。Typesense的Docker镜像已被下载超过
MeiliSearch官网,后端轻量级的下一代开源搜索引擎简介MeiliSearch是一款备受瞩目的开源搜索[…]