RethinkDB扩展:与ElasticSearch和RabbitMQ集成
1. RethinkDB与ElasticSearch集成
在进行实时全文搜索时,推荐使用ElasticSearch,它是一款专为搜索设计的数据库,基于Apache Lucene构建,能高效执行全文搜索。
1.1 ElasticSearch简介
ElasticSearch是实时、分布式、面向文档且基于全文的搜索数据库,提供易于使用的RESTful API,可立即实现搜索功能。它基于Apache Lucene,具备更多高级特性,如地理位置搜索、搜索建议、自动补全功能等。此外,它采用无模式架构,用户可快速上手,只需将现有数据以文档形式存入,就能立即实现搜索功能。
在ElasticSearch中,数据库被称为索引(Index),表被称为类型(Type),即:
- ElasticSearch Index ==> 数据库
- ElasticSearch table ==> 类型
开发者需牢记这一术语差异,避免混淆。同时,ElasticSearch提供的RESTful API便于与各种编程语言集成。
1.2 安装ElasticSearch
- 下载 :可前往ElasticSearch下载页面(https://www.elastic.co/downloads/elasticsearch )下载最新版本,编写本文时,最新稳定版本为2.4.1。也可从Docker Hub(https://hub.docker.com/_/elasticsearch/ )下载Do