首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【总结】两个月的工作任务总结

2) 完成时长:两个半星期 (3) 难点整理 数据表相互关联关系的理解。...SPH_MATCH_ANY 匹配查询词中的任意一个. SPH_MATCH_PHRASE 将整个查询看作一个词组,要求按顺序完整匹配. SPH_MATCH_BOOLEAN 将查询看作一个布尔表达式....status查询的结果不正确) - 对SphinxClient的方法和属性不熟 =》 sphinx设置过滤的使用方法: $sphinx->SetFilter($filterkey, $filtervalue...对功能相同或相似的代码可以理解后直接使用,以效率为主 (3) 走心的记住之前理出来的逻辑(快速的重要前提) 不要总是分神,养成专注和集中注意力的能力(保持思考) 不要情绪化,影响思考能力和专注度 注意休息...公共方法封装 /** * sphinx搜索 * * @param string $key 查询的字符串 * @param string $indexFile 索引文件 * @param string

1.3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    shpinx的安装与使用测试

    Sphinx 在2018年的搜索引擎中排名第五,但它仍然是一种强大且流行的技术,在排名方面让位于Elasticsearch和Solr。...Sphinx支持高速建立索引(可达10MB/秒,而Lucene建立索引的速度是1.8MB/秒) 高性能搜索(在2-4 GB的文本上搜索,平均0.1秒内获得结果) 高扩展性(实测最高可对100GB的文本建立索引...,单一索引可包含1亿条记录) 支持分布式检索 支持基于短语和基于统计的复合结果排序机制 支持任意数量的文件字段(数值属性或全文检索属性) 支持不同的搜索模式(“完全匹配”,“短语匹配”和“任一匹配”)...ngram_len:对于非字母型数据的长度切割(默认已字符和数字切割,设置1为按没个字母切割) ngram_chars:ngram 字符集,中文需要配置 kbatch:屏蔽索引的列表 使用 先来看如何把...搜索顺序,必须是'main','detal',这样才会保证索引以detal为主。 如果没有配置sql_query_killlist的时候,对于已经修改的数据,sphinx返回的查询还是旧的数据。

    83830

    Sphinx + Coreseek 实现中文分词搜索

    等第三方站点提供的站内全文搜索的差别 Sphinx Coreseek介绍 Coreseek安装使用 1....而全文检索能够实现多个关键词的复合搜索。包含 “和(AND)”、“或(OR)”、“否(NOT)” 等; 数据库搜索难于对结果进行相关度排序,当检索结果多时。用户往往难于找到最恰当的文档。...依据应用的不同动态的改变结果的排序; 对于中文、日文和韩文而言,全文检索支持分词。进一步缩小了结果集的范围;而数据库检索往往不支持。往往一些与搜索词毫不相干的内容也混入了结果集。...为中文优化过的结果集排序算法。中文用户有使用长短语(短句)进行搜索的习惯,而汉化的全文搜索不考虑词与词之间的位置关系,严重影响了用户的使用体验; 能够利用中文的词性信息。对于不同词性的词。...给与不同的排序权重,进一步改善结果集。

    1.5K20

    使用PHP+Sphinx建立高效的站内搜索引擎

    为什么要使用Sphinx 假设你现在运营着一个论坛,论坛数据已经超过100W,很多用户都反映论坛搜索的速度非常慢,那么这时你就可以考虑使用Sphinx了(当然其他的全文检索程序或方法也行)。...Sphinx是什么 Sphinx由俄罗斯人Andrew Aksyonoff 开发的高性能全文搜索软件包,在GPL与商业协议双许可协议下发行。...Sphinx的特性 l  高速索引 (在新款CPU上,近10 MB/秒); l  高速搜索 (2-4G的文本量中平均查询速度不到0.1秒); l  高可用性 (单CPU上最大可支持100 GB的文本,100M...以这个开头的配置项,表示属性字段,在where,orderby,groupby中出现的字段要分别定义一个属性,定义不同类型的字段要用不同的属性名,比如上面的sql_attr_timestamp就是时间戳类型...index mysql{} 定义索引名称为mysql,也可以叫其他的,比如:index xxx{} source 关联源,就是source xxx定义的。

    2.3K10

    搜索引擎配置优化笔记 - 老板的讲课

    搜索引擎优化 并不是 只seo 而是只自建搜索引擎的配置优化 使用了两个开源的软件:sphinx 和 redis 开源搜索引擎 1.Lucence/Nutch/Solr Java编写 2.Sphinx/...Coreseek C++ 3.Xapian 豆瓣 4.BosS Sphinx 介绍 1.配置索引文件 2.索引 (正向索引 -> like %key% ; 反向索引 -> 先建关键词列表) 3.处理搜索...4.2-3不断重复 Sphinx 特点 索引快,支持中文,丰富的查询表达式,可以分段落,支持模糊查询,多种结果后处理机制 排序,BM25,搜索算法 支持实时索引,地理位置搜索 Redis 介绍 Nosql...中文分词 Sphinx 汉字自动单词分词 一元分词法 查询时用“”取消分词,对汉字进行词语分组 最多分词法,一元分词法(最灵活) 中文分词法 httpcus 张宴 分词中学习,检查某几个字合在一起得到的结果多少...同义词表 自动纠错 自动完成功能 SCWS 分词 php中文分词 搜索的时候找稀少词,分词后,搜索结果越少的词越是用户需要的

    48620

    用sphinx给PHP加个给力的搜索功能

    最近工作上需要实现搜索功能,尝试了几种方案。虽然最终线上部署的还是最low的方案,但是中间的过程还是比较有意思的。业务上根据关键字查找内容。关键字的出处多来源于标题,文章描述等。...生成关键字表,使用关键字表进行查询 对数据内容的标题和内容进行分词,把各个分词结果关联该内容。查询的时候根据查询关键字进行匹配。因为不是模糊搜索,所以可以使用数据库的索引,加快搜索速度。...但是如果输入"国会"则无法搜索到内容。如果多个词同时匹配,则需要使用in查询,然后筛选出同时出现的内容。 所以这种生成关键字的方式,虽然查询速度上会比直接使用like查询快,但是业务逻辑会比较复杂。...使用sphinx作为搜索引擎 sphinx支持全文搜索,所以在sphinx中查询到关键字对应内容id之后再通过数据库获取内容的全部数据。...在业务高峰期重建索引容易引起意外 本地实验查询所使用的字是通过sphinx索引创建的字典生成。

    1K40

    【迅搜19】扩展(二)TNTSearch和JiebaPHP方案

    在这里要先换一个概念,那就是 TNTSearch 是有点类似于 Sphinx 这样的搜索引擎。也就说,它的数据来源是针对数据库的,或者说让数据库来做为数据源是比较方便的。...你再看看它返回的内容就知道为啥能返回这么多数据了。 TNTSearch 的搜索结果,返回的也是和 Sphinx 非常像的,它们都只是返回索引的 ID 信息。...可以看到返回结果的顺序不是按 ID 排序的,现在 docScores 也有各文档的关键词评分结果。 这种搜索引擎的使用方式,就是通过检索返回的主键 ID ,再去数据库进行主键查询获取完整的数据。...最后再归结回去,不管 XS、ES、Sphinx或者其它,只要是搜索引擎应用或中间件,最终的原理都是和这一套是类似的,但具体的实现形式以及功能和语言各有不同。...Larvel Scout 和 Laravel 的 ORM 绑定比较深,对于 TNTSearch 和 Sphinx 这类的搜索引擎还是非常好用的,但是相对于 ES 和 XS 这类,其实它们本身就有自己非常完善的

    31310

    Sphinx源码学习笔记(一):索引创建

    参考Sphinx源码的版本号为sphinx-2.3.2-beta。...其中iFieldMVAPoolSize和iDictSize并不是必须的,iFieldMVAPoolSize俗称多值属性,它是文档属性的一种重要的特例,主要作用是向文档附加一些列的值作为属性,例如文档的标签...首先按照m_uWordID排序,然后按照m_uDocID排序,最后按照m_uWordPos排序。 实际保存的时候,后面Item保存的是前一个的差分值,主要用于节省空间。...有这写索引文件可以简单思考下查询一个关键词流程: 首先对搜索关键词进行分词处理。 对于分词后的单词求得词ID,然后定位该词在spi文件的位置。...对每次词查找定位后文档id求交集,在根据词位置信息做优先排序处理返回结果。 以上查询只是个人理解,后续再分析sphinx源码中实际查询的逻辑流程。

    2.2K70

    搜索:ElasticSearch OR MySQL?

    这种时候,一个全能的搜索引擎就非常有必要了,通常我们期望它可以检索各类允许被用户查询的数据类型,充分的去已有的数据中检索用户想要的数据,并且还能进行智能排序,给用户最想要的。...它提供了基于RESTful 风格的全文搜索API。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前最流行的企业级搜索引擎。...Why Not Sphinx + MySQL 当然,有很多同学会说,MySQL确实不适合直接做检索,但是我可以利用Sphinx中间件结合MySQL来做搜索引擎。...确实,Sphinx也是一款比较优秀的搜索引擎。在某些方面,它很适合和MySQL做结合来使用。但是,Sphinx和ElasticSearch比起来,却逊色不少。...一方面,在复杂查询逻辑下,Sphinx使用非常麻烦,在特定情况下,还需要修改Sphinx的源码才能实现需求,而我们ES天生就拥有非常丰富的Query DSL,可以满足几乎任何的检索情况;另一方面,在横向扩展和高可用方面

    1.8K10

    搜索引擎技术之概要预览

    4、系统架构 全文检索 全文检索的方法主要分为按字检索和按词检索两种。按字检索是指对于文章中的每一个字都建立索引,检索时将词分解为字的组合。...对于各种不同的语言而言,字有不同的含义,比方英文中字与词实际上是合一的,而中文中字与词有非常大分别。按词检索指对文章中的词,即语义单位建立索引,检索时按词检索,并且能够处理同义项等。...7、开源搜索引擎 全文检索引擎 Sphinx 关注本博客的读者不知是否还记得以前出如今这篇文章从几幅架构图中偷得半点海量数据处理经验中的两幅图,例如以下所看到的: 上图出自俄罗斯的开源全文搜索引擎软件...Sphinx,单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级)。...Sphinx是一个基于SQL的全文检索引擎,能够结合MySQL,PostgreSQL做全文搜索,它能够提供比数据库本身更专业的搜索功能,使得应用程序更easy实现专业化的全文检索。

    62230

    最新后端架构师技术图谱!附学习资料~

    深呼吸,慢慢学,技术长路漫漫… 数据结构 二叉树 完全二叉树 平衡二叉树 二叉查找树(BST) 红黑树 B-,B+,B*树 LSM 树 队列 集合 链表、数组 字典、关联数组 栈 树 BitSet 常用算法...KPM 算法 选择排序 冒泡排序 插入排序 快速排序 归并排序 希尔排序 堆排序 计数排序 桶排序 基数排序 二分查找 Java 中的排序工具 排序、查找算法 布隆过滤器 字符串比较 深度优先、广度优先...容器 RingBuffer 可重入锁 & 不可重入锁 互斥锁 & 共享锁 死锁 事务 ACID 特性 事务的隔离级别 多线程 线程安全 一致性、事务 锁 操作系统 计算机原理 进程 线程 协程 Linux...设计模式 康威定律 设计模式的六大原则 23种常见设计模式 应用场景 单例模式 责任链模式 MVC IOC AOP UML 微服务思想 运维 & 统计 & 技术支持 OpenStack Docker...基础理论 MySQL NoSQL 搜索引擎 搜索引擎原理 Lucene Elasticsearch Solr sphinx 性能 HDFS MapReduce Yarn Storm Flink Kafka

    1.6K20

    lnmp+coreseek实现站内全文检索

    ,错误情况如下错误记录,可以参考修改即可 配置coreseek配置文件 配置文件主要修改的几个地方如下,具体的修改信息请参见 coreseek配置文件 目录的进行配置 source src1...语句 SELECT id, title, content FROM post #sql_attr_uint = group_id #对排序字段进行注释 #sql_attr_timestamp =...date_added #对排序字段进行注释 sql_query_info = SELECT * FROM post WHERE id=$id } #这行不需要修改...服务进程searchd的相关配置 searchd { } #全部用默认的就可以了 除了上述的配置项外还需要单独配置几项(如果你是安装的sphinx则进行上述配置即可,如果是coreseek...root 6650552 10月 13 21:27 indextool // 调试程序 -rwxr-xr-x. 1 root root 6740544 10月 13 21:27 search // 搜索程序

    61100

    一个分布式服务器集群架构方案

    Redis主要将数据存储在各种格式:列表,数组,集合和排序集,一次能接受多个命令,阻塞读写,等待直到另一个进程将数据写入高速缓存。 ? Redis Cache 方案 一篇关于Reids缓存方案。...《高可用、开源的Redis缓存集群方案》 ---- 0x04.关于搜索引擎Sphinx方案 (第一期不做,后期需求时候考虑)** Sphinx是俄罗斯人开发的,号称是很吊啦,千万级数据检索,每秒10MB...Sphinx和MySQL是基于数据库的全文引擎,创建索引是B+树和hash key-value的方式。...原理类似于用底层C检索MySQL,然后弄出一个sphinx.conf配置文件,索引与搜索均以这个文件为依据进行,要进行全文检索,首先就要配置好sphinx.conf,告诉sphinx哪些字段需要进行索引...Sphinx中文 ---- 0x05.关于NoSQL快速存储方案 NoSQL在这里的使用价值是处理一些琐事,比如用户个人网站的一些css值,height,width,color等等的小而繁多的数据,采用

    3.2K22

    使用 Python 30分钟 教你快速搭建一个博客

    博客既然是自己的一个知识宝库,那么索引将变得极为重要。通过自己的探索,小明发现了一个能够很好地满足这个需求的 Python 框架 Sphinx。...体验下搜索功能,速度很快。 看完这些你是不是也很想拥有这样一个博客呢? 只要你认真往下看,30分钟搭建这样一个博客不在话下。...:\\mkdocs $ sphinx-quickstart 执行这个命令sphinx-quickstart的时候,会让你输入配置。...在source目录下,新增文件 how_to_be_a_rich_man.rst(至于什么是rst格式呢,请自行搜索引擎噢) 文件内容如下 第一章 如何成为有钱人 ===================...关联一下GitHub 导入代码库。填好与你对应的信息。 构建网页后。右下方,你可以看见你的在线地址。

    1.1K20

    最新后端架构师技术图谱!附学习资料~

    深呼吸,慢慢学,技术长路漫漫… 数据结构 二叉树 完全二叉树 平衡二叉树 二叉查找树(BST) 红黑树 B-,B+,B*树 LSM 树 队列 集合 链表、数组 字典、关联数组 栈 树 BitSet 常用算法...KPM 算法 选择排序 冒泡排序 插入排序 快速排序 归并排序 希尔排序 堆排序 计数排序 桶排序 基数排序 二分查找 Java 中的排序工具 排序、查找算法 布隆过滤器 字符串比较 深度优先、广度优先...容器 RingBuffer 可重入锁 & 不可重入锁 互斥锁 & 共享锁 死锁 事务 ACID 特性 事务的隔离级别 多线程 线程安全 一致性、事务 锁 操作系统 计算机原理 进程 线程 协程 Linux...设计模式 康威定律 设计模式的六大原则 23种常见设计模式 应用场景 单例模式 责任链模式 MVC IOC AOP UML 微服务思想 运维 & 统计 & 技术支持 OpenStack Docker...基础理论 MySQL NoSQL 搜索引擎 搜索引擎原理 Lucene Elasticsearch Solr sphinx 性能 HDFS MapReduce Yarn Storm Flink Kafka

    55810

    不可多得的后端架构师技术图谱!内附参考资料!

    数据结构 二叉树 完全二叉树 平衡二叉树 二叉查找树(BST) 红黑树 B-,B+,B*树 LSM 树 队列 集合 链表、数组 字典、关联数组 栈 树 BitSet 常用算法 KPM 算法 选择排序 冒泡排序...插入排序 快速排序 归并排序 希尔排序 堆排序 计数排序 桶排序 基数排序 二分查找 Java 中的排序工具 排序、查找算法 布隆过滤器 字符串比较 深度优先、广度优先 贪心算法 回溯算法 剪枝算法...动态规划 朴素贝叶斯 推荐算法 最小生成树算法 最短路径算法 并发 Java中的锁和同步类 公平锁 & 非公平锁 悲观锁 & 乐观锁 & CAS ABA 问题 CopyOnWrite容器 RingBuffer...可重入锁 & 不可重入锁 互斥锁 & 共享锁 死锁 事务 ACID 特性 事务的隔离级别 多线程 线程安全 一致性、事务 锁 操作系统 计算机原理 进程 线程 协程 Linux 设计模式 康威定律 设计模式的六大原则...基础理论 MySQL NoSQL 搜索引擎 搜索引擎原理 Lucene Elasticsearch Solr sphinx 性能 HDFS MapReduce Yarn Storm Flink Kafka

    48520

    文件系统特殊命令一览表

    E 按扩展名(字母顺序) D 按日期/时间(从先到后) G 组目录优先 - 反转顺序的前缀 示例: #1.查看文件属性为目录得列表 dir /A:D #2...按默认值,如果达到默认最大内存值,排序会一次完成(非临时文件);否则,排序会分两次完成(没有完全排序的数据存储在临时文件中);用于排序和合并的内存量相等。...WeiyiGeek. #4.特殊的倒序方法(按文本倒序,没按字母排序) #只要超过Len(str)长度+1+n,按文本倒序是将最后一行文本作为第一行,第一行作为最后一行(简而言之就是文本行颠倒) #5...: 描述:根据微软的机器翻译“指定输出文件比将同一文件作为标准输出重定向速度快”,也就是说/o参数比重定向符(>)快,这个不好实际测试; 问题引出的简单思考: 既然是简单思考,自然不会分析的太过深入:...[LINE] 不要跳过具有脱机属性集的文件 "string" 指定+要搜索的文本字符串 [drive:][path]filename] 指定要搜索的文件 如果没有指定路径,FIND 将搜索在提示符处键入

    3.8K30
    领券