shard:索引分片,每个shard在功能上是一个完整的索引,实际上就是一个lucene core,能够进行独立的查询和索引工作。
index:索引,一般由一个或者多个shard组成。对索引的搜索和索引最终都是提交到每个shard上的。
mapping:索引字段的配置,这里定义每个字段的类型名称,分词方式等,相当于数据库的DDL。如果没有mapping,索引会自动生成相关配置。
模块化程度高,每个功能都以模块的形式提供,向外由接口暴露。
接口和lambda表达式非常多,在读源码的时候有些困难,很难去直观的找到相应的功能的实现。
使用了netty来作为通信框架,主要有两种实现,Netty4HttpServerTransport,Netty4Transport.
elasticsearch的启动过程
INSTANCE = new Bootstrap();
INSTANCE.setup(true, environment);
INSTANCE.start();
- new
- 根据配置文件及引用的jar包来注册模块
- 启动需要启动的模块
网友评论