倒排索引 - C/C++
hibase 是一个基于倒排索引库libibase的检索系统, libsbase为基础通信库的一套完整搜索引擎系统.
支持增量在线实时索引/实时更新int/long/double类型字段
支持BM25检索算法
支持上下文邻近位置标注的中文短句检索
支持多字段检索
支持聚类(group)
支持数据风险安全过滤(预先处理)
支持数据cache时长自定义
支持自定义打分基数
支持int/long/double范围过滤
支持int/long位操作(屏蔽,过滤)
程序功能介绍
hibase主要包括hidocd,himasterd,hindexd,hiqparserd,hiqdocd
hidocd 数据处理正排生成,正排分发;
himasterd 分布式检索归并节点;
hindexd 索引/检索节点;
hiqparserd query parser节点, 负责把query转换成 检索需要的IQUERY结构;
hiqdocd 文档摘要节点;
以上hiqdocd hiqparserd和hindexd实质是一个程序, 只是根据配置不同完成不同的功能, hindexd可以实现单节点上的数据检索功能,同时hindexd还担负从hidocd接收文档完成倒排索引的功能.
索引过程
数据生成: 生成格式参见ibase.h::{FHEADER}结构; hidocd根据生成的这个文件顺序读取然后处理成正排格式存储到本地db(db.c);
数据分发: hidocd提供http接口管理,可以添加数据节点, 然后根据任务分发数据给对应的hiqparserd hiqdocd hindexd;
数据索引: hindexd接受到数据完成本地倒排;
检索过程
请求方通过himasterd提供的HTTP接口传入传入参数;
himaster本次key => id转换以后把请求串发送给hiqparserd;
hiqparserd对请求参数进行处理,分词query转换成IQUERY结构返回himasterd;
himaster把IQUERY结构转发给hindexd;
hindexd根据IQUERY本地检索完成后返回检索{IRES}+{IRECORD}TOPK
himasterd根据hindexd返回归并排序,并且根据要求cache(CACHE时长可以在请求中定义)
himasterd根据from,count参数发送请求到hiqdocd;
hiqdocd根据请求完成动态摘要以JASON格式返回;
himasterd返回JASON格式的结构(可以要求是否需要做摘要)
安装和配置
通信基本库: libevbase libsbase http://code.google.com/p/sbase/downloads/list
倒排索引库: libibase http://code.google.com/p/libibase/downloads/list
检索系统: hibase http://code.google.com/p/libibase/downloads/list
按照列表顺序下载最新版本进行安装 : ./configure --prefix=/usr && make
可以参考rpms(centos 5.5)已经编译好的版本使用;
有问题可以给我的mail/MSN: sounos@gmail.com
原文URL:http://bbs.chinaunix.net/thread-1187515-1-1.html
倒排索引 - C/C++相关推荐
- Elasticsearch 如何做到快速检索 - 倒排索引的秘密
欢迎关注方志朋的博客,回复"666"获面试宝典 来源:https://ricstudio.top/archives/es-lucene-reverted-index 一.前言 最近 ...
- 倒排索引原理_拜托,面试请不要再问我分布式搜索引擎的架构原理!
欢迎关注头条号:石杉的架构笔记 周一至周五早八点半!精品技术文章准时送上!!! 精品学习资料获取通道,参见文末 目录 (1)倒排索引到底是啥? (2)什么叫分布式搜索引擎? (3)ElasticSea ...
- Elasticsearch 为什么能做到快速检索?— 倒排索引的秘密
来源:https://ricstudio.top/archives/es-lucene-reverted-index "All problems in computer science ca ...
- ElasticSearch是什么?为什么快?倒排索引是什么?ElasticSearch的应用?
ElasticSearch是什么?为什么快?倒排索引是什么?ElasticSearch的应用? Elasticsearch 是一个分布式的免费开源搜索和分析引擎,适用于包括文本.数字.地理空间.结构化 ...
- Elasticsearch之倒排索引
搜索引擎 正排索引 - 文档Id到文档内容.单词的关联关系 文档ID 文档内容 1 elasticsearch是最流行的搜索引擎 2 php是世界上最好的语言 3 搜索引擎是如何诞生的 倒排索引 - ...
- 倒排索引统计与 Python 字典
2019独角兽企业重金招聘Python工程师标准>>> 最近折腾索引引擎以及数据统计方面的工作比较多, 与 Python 字典频繁打交道, 至此整理一份此方面 API 的用法与坑法备 ...
- MapReduce实现倒排索引(类似协同过滤)
一.问题背景 倒排索引其实就是出现次数越多,那么权重越大,不过我国有凤巢....zf为啥不管,总局回应推广是不是广告有争议... eclipse里ctrl+t找接口或者抽象类的实现类,看看都有啥方法, ...
- MapReduce实战--倒排索引
本文地址:http://www.cnblogs.com/archimedes/p/mapreduce-inverted-index.html,转载请注明源地址. 1.倒排索引简介 倒排索引(Inver ...
- Lucene 源码分析之倒排索引(三)
上文找到了 collect(-) 方法,其形参就是匹配的文档 Id,根据代码上下文,其中 doc 是由 iterator.nextDoc() 获得的,那 DefaultBulkScorer.itera ...
- 为什么倒排索引不采用zlib这样的字典压缩算法——因为没法直接使用啊
看了下压缩算法的发展历史,根据倒排索引的数据结构特点,个人认为zstd不适合做倒排索引压缩,举例说明下: 假设有一份文档倒排列表为:[300, 302, 303, 332],对于这组倒排数据,是没法* ...
最新文章
- Asp.Net Core在线生成二维码
- Clion 远程开发 配置
- swift使用cocoapods导入oc三方库
- 对讲机的那点事:带你玩转LD800数字车载台读、写频操作:一
- Wine 1.0 RC2
- STM32的ADC笔记
- 到2025年将保持不变的热门流行技术
- 软件项目周报_有关细节、效率、周报和扯淡
- linux绑定中文域名,linux shell正则表达式如何匹配域名(包含中文域名)
- 比较HTML元素和Native组件的区别
- 如何解决ADB server didn't ACK
- PHP查看IP时候能ping通
- MSDN MTBETA
- 魔百和盒子、中兴盒子、咪咕盒子、华为盒子、华为悦盒、烽火盒子、创维盒子、天邑盒子等运营商盒子固件合集分享
- 免安装版本的+mysql_MySQL的安装(免安装版本)
- 前度字符串转数组_关于前度书籍的阿里云论坛用户知识和技术交流
- 个人股东股权转让涉税问题初探
- STM32——通用定时器控制超声波传感器HCSR04
- #第六章 曲率二维表达的拟合应用 ​一、四维时空曲率的二维几何表达
- jQuery+JSON+jPlayer实现QQ空间音乐查询
热门文章
- 在HBase的shell命令行界面输入错误项按“退格键“删除,却怎么也删除不了:
- 干活|常见WAF拦截页面总结
- Tcp Keepalive和HTTP Keepalive详解
- 【slighttpd】基于lighttpd架构的Server项目实战(2)—预备知识之libevent
- 前端---JavaScript基础2
- 不错的递归题:输入123,返回“321”。 要求必须用递归,不能用全局变量,输入必须是一个参数,必须返回字符串。
- centos中的配置文件
- TensorFlow学习笔记(十)tf搭建神经网络可视化结果
- 深入理解Spark 2.1 Core (六):Standalone模式运行的原理与源码分析
- GitHub for Windows使用教程(二) 分支的使用