tantivy&lucene功能,写入性能对比
硬件概述:cpu:24,内存:20g,磁盘:10*2.7T。
写入性能:(不对ip进行添加geo信息)。
|
写入性能对比 |
速度 |
Commit耗时(秒) 500*1000条 |
Bulk耗时(秒) 1000条dns |
Bulk耗时(秒) 1000条tcpflow |
Bulk耗时(秒) 1000条weblog |
Cpu占用 |
磁盘使用 |
数据量tcpflow |
线程配置 |
|
tantivy |
155272 |
6-19 |
0.01-0.06 |
0.1-0.2 |
0.1-0.2 |
40-80 us, 5-15 sy |
20-90 |
4_000_000条,870M |
10*2+10*2*3 |
|
lucene |
151633 |
3-4 |
0.2-0.3 |
1.3-1.4 |
1.3-1.4 |
60-80 us, 5sy |
20-90 |
4_500_000条,1.3G |
10*5 |
功能:
Query:查询功能。
|
Query |
TermQuery |
BooleanQuery |
WildcardQuery |
PhraseQuery |
RangeQuery |
FuzzyQuery |
RegexpQuery |
ConstantScoreQuery |
PrefixQuery |
|
tantivy |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
N |
|
lucene |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Collector:用来在查询时获取doc的field信息,用来排序,过滤,聚合等。
Collector |
TopCollector |
TimeLimitingCollector |
CountCollector |
tantivy |
Y |
N |
Y |
lucene |
Y |
Y |
N |
Docvalues/fastfield:通过docvalues获取doc的field信息,用来排序,过滤,聚合等。
|
|
Docvalues/fastfield |
tantivy |
fastfield(目前仅支持数字) |
lucene |
Docvalues |
IndexWriter: 写数据。
|
IndexWriter |
Flush(不fsync,数据可能在buffer) |
Commit(fsync到磁盘) |
|
tantivy |
N(目前未发现) |
Y |
|
lucene |
Y |
Y |
总结:
功能
tantivy已实现了lucene的大多数功能。具体差异见上表。
写入性能
整体写入性能相近。
bulk索引数据时,tantivy速度快于lucene。
执行commit时,tantivy不如lucene,详见写入性能。
磁盘占用
磁盘占用相差不大,详见写入性能。
tantivy&lucene功能,写入性能对比的更多相关文章
- nginx-haproxy-lvs功能和性能对比 nginx - max-fail + 调度算法
优点(性能和功能两方面分析) 缺点 lvs 工作在4层,可以对http,MySQL等服务负载均衡.负责流量的分发,对io,cpu,mem的消耗少 功能比较少,没有正则匹配的功能 nginx 工作在7层 ...
- 几种I/O模型功能和性能对比
对比图 同步阻塞I/O服务端通信模型(一客户端一线程) 伪异步I/O服务端通信模型(M:N) NIO服务端和客户端通信时序图
- 各类nosql db的功能与性能对比
mongodb cassandra neo4j couchbase couchdb redis leveldb
- nginx 反向代理 proxy_pass 及对比nginx与haproxy反向代理服务器功能、性能的优劣
1.使用 proxy 去请求另一个域名下的资源,如果跨域资源也部署在同一台机器上,我们甚至可以 proxy 到 127.0.0.1,比如: location /api { proxy_pass htt ...
- Elasticsearch的几种架构(ELK,EL,EF)性能对比测试报告
Elasticsearch的几种架构性能对比测试报告 1.前言 选定了Elasticsearch作为存储的数据库,但是还需要对Elasticsearch的基础架构做一定测试,所以,将研究测试报告输出如 ...
- Storm VS Flink ——性能对比
1.背景 Apache Flink 和 Apache Storm 是当前业界广泛使用的两个分布式实时计算框架.其中 Apache Storm(以下简称"Storm")在美团点评实时 ...
- RedHat 和 Mirantis OpenStack 产品的版本和功能汇总和对比(持续更新)
Mirantis 和 Red Hat 作为 OpenStack 商业化产品领域的两大领军企业,在行业内有重要的地位.因此,研究其产品版本发布周期和所支持的功能,对制定 OpenStack 产品的版本和 ...
- Java--Stream,NIO ByteBuffer,NIO MappedByteBuffer性能对比
目前Java中最IO有多种文件读取的方法,本文章对比Stream,NIO ByteBuffer,NIO MappedByteBuffer的性能,让我们知道到底怎么能写出性能高的文件读取代码. pack ...
- 不同Framework下StringBuilder和String的性能对比,及不同Framework性能比(附Demo)
本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 阅读目录 介绍 环境搭建 测试用例 MSDN说明 ...
随机推荐
- 搭建服务器上的GIT并实现自动同步到站点目录(www)
https://blog.csdn.net/baidu_30000217/article/details/51327289 前言:当我们想要实现几个小伙伴合作开发同一个项目,或者建立一个资源分享平台的 ...
- python模块之模块导入
模块的导入 """ 模块的导入使用:模块导入一般都要放在代码的最上面 不同模块的导入顺序: 1 内置模块 2 扩展模块 3 自定义模块 """ ...
- java 声明多个泛型类型和通配符
若一个类中多个字段需要不同的泛型声明,则在声明类的时候指定多个泛型类型即可: 格式: public interface IDAO<PK, T> { PK add(T t); void re ...
- 2018-10-22-win10-uwp-自定义控件入门
title author date CreateTime categories win10 uwp 自定义控件入门 lindexi 2018-10-22 09:47:54 +0800 2018-10- ...
- 深度学习——GAN
整理自: https://blog.csdn.net/woaidapaopao/article/details/77806273?locationnum=9&fps=1 思想 表达式 实际计算 ...
- 51nod 1281山峰和旗子
1281 山峰和旗子 题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 用一个长度为N的整数数组A,描述山峰和山谷的高度.山峰需要满足 ...
- C# 通过 probing 指定 dll 寻找文件夹
在很大的项目开发,会发现项目引用的 dll 会很多,我想要按照不同的功能,将不同的 dll 放在不同的文件夹 简单的方法是通过修改 App.config 文件指定文件夹,如将文件移动到 abc\12 ...
- [Ctsc2014]图的分割
[Ctsc2014]图的分割 阅读理解好题 翻译一下: M(C)就是C这个诱导子图最小生成树最大边权 结论: 按照w进行sort,如果满足w<=Ci,Cj表示u,v的连通块的诱导子图 并且Ci! ...
- 个人脚手架搭建 -- charmingsong-cli
个人脚手架搭建 -- charmingsong-cli 目的 为了解决多次构建相同功能的项目,在一定程度上需要定制化以及私有化设置 设计 问题 为什么不用现成的脚手架生成? 如果利用vue或者reac ...
- openwrt上wifi探针的实现----mt7620a+rt2860v2
openwrt上wifi探针的实现----mt7620a+rt2860v2 [摘要:甚么是wifi探针 看到探针,感到很矮小上的模样,实在便是经过wifi汇集经由那个AP局限的脚机的mac地点,出有甚 ...