摘要:
1.确切值(Exact values) vs 全文文本(Full text) Elasticsearch中索引的数据可以大致分为两种类型 (1) 确切值(Exact values) 确切值是需要精准匹配的值。比如一个date或用户ID,对于2019-11-8,只输入2019-11是不能被检索出来。 阅读全文
摘要:
Elasticsearch使用一种叫做倒排索引(inverted index)的结构来做快速的全文搜索。与正向索引不同,倒排索引是面向词(Term)而不是面向文档的,建立的是词(Term)和文档(Document)之间的映射关系。 举个例子,传统的文档和词条之间的关系如图,如果通过关键词去搜索文档, 阅读全文
摘要:
1. 什么是 Elasticsearch Elasticsearch 是一个全文搜索引擎,可以快速地储存、搜索和分析海量数据。 它是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上。但它又不仅仅是 Lucene,它可以被下面这样准确的形容: 一个分布式的实时文档存 阅读全文
摘要:
1.递归 递归算法是一种直接或间接调用自身算法的过程。 每个递归函数都有两部分:基线 条件(base case)和递归条件(recursive case)。 递归条件指的是函数调用自己的条件 基线条件则指的是函数不再调用自己,函数的终止条件,避免形成无限循环 。 比如,如下打印数字的递归函数: 2. 阅读全文
摘要:
1.tar命令 tar [-cxtzjvfpPN] [打包后的文件名] [打包的目录路径] (1)参数: -c : 建立一个压缩文件,create -x :解压一个压缩文件 -t :查看压缩文件内容 -v : 压缩过程中显示文件 -f :使用压缩名,注意一般放在参数最后,紧跟压缩名 -z :用gzi 阅读全文
摘要:
大O表示法(Order) O(f(n))表示的是算法的时间复杂度,表示规模为n的问题需要的时间与f(n)成正比,即f(n)阶。其中函数 f(n) 称为增率函数(growth rate function)。 比如: 若规模为n的问题需要的时间与n成正比,则问题表示为O(n),即n阶 若需要的时间与$n 阅读全文
摘要:
AWK也是一个很强大的文本处理工具,与grep, sed 一起称为linux文本处理的“三板斧”。 grep更适合单纯的查找和匹配文本 sed适合编辑匹配的文本 awk适合格式化文本,倾向于把一行文本分成多个‘字段’来进行复杂的格式化操作。 如图,awk是逐行处理文本,将一行内容按照指定分隔符将行分 阅读全文
摘要:
sort, wc, uniq 等命令组合使用,可以快速帮助我们进行排序。 1.sort sort命令可以用来排序,且可以根据不同的数据类型排序。(数字,文字) 排序字符也和编码有关,建议使用LANG=C来让语系统一。 (1)语法 sort [参数] [file or stdin] (2)参数 :忽略 阅读全文
摘要:
1.索引的基本概念 一般索引可以提高查询性能。但是insert,delete,在索引列上的update等操作会变慢(因为要同时对数据和索引都操作)。所以需要平衡索引带来的查询性能的提升和对数据修改性能的影响。 查询一个表的索引,可以用USER_INDEXES 查询有哪些索引,以及用 USER_IND 阅读全文
摘要:
1.sed简介 Sed是一款流编辑工具,用来对文本进行过滤与替换操作,Sed通过一次仅读取一行内容来对某些指令进行处理后输出,所以Sed更适合于处理大数据文件。首先,Sed通过文件或管道读取文件内容,但Sed默认并不直接修改源文件,而是将读入的内容复制到缓冲区中,我们称之为模式空间(pattern 阅读全文