【ElasticSearch从入门到精通】搜索引擎之elasticsearch |
您所在的位置:网站首页 › 搜索引擎建议有什么用 › 【ElasticSearch从入门到精通】搜索引擎之elasticsearch |
目录 1.你了解搜索引擎吗 数据的分类: 1.顺序扫描法 2.全文搜索 2.全文搜索引擎的工作原理 3.为什么要用搜索引擎 1.数据类型 2.搜索性能 3.灵活搜索 4.索引的维护 4.全文索引引擎的应用场景 5.常见搜索引擎 1.Lucene 2.Solr 3.ElasticSearch 1.你了解搜索引擎吗常用得搜索引擎:谷歌、百度 数据的分类:结构化的数据:具有固定格式或长度的数据。 非结构化数据:全文数据,不定长或无固定格式的数据。 对于非结构化数据(全文数据)的搜索主要方法:顺序扫描法、全文搜索法 1.顺序扫描法按照顺序扫描的方式查找特定的关键词 效率低下 2.全文搜索对非结构化数据的信息进行提取,重新组织成为有一定结构的数据后进行搜索,从而达到搜索相对较快的要求。 从非结构化数据中提取并从新组织的信息,称之为索引。 2.全文搜索引擎的工作原理计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就会根据事先建立的索引进行查找,并将查找的结果反馈给用户。 3.为什么要用搜索引擎 1.数据类型全文搜索支持非结构化数据的搜索,可以更好的快速搜索大量存在的任何单词。 2.搜索性能当数据量达到千万级别的时候,或者含有like等搜索条件的时候,mysql不会走索引,性能会变差。 3.灵活搜索不必要求用户一定输入正确才能进行查询,当用户输入一些关键字的时候可以给出相应的提示并进行查出。 4.索引的维护一般传统数据库对于全文搜索,很难去实现,需要扫描整个表,即使有索引,在insert和update操作的时候都会重新构建索引,维护很麻烦。 4.全文索引引擎的应用场景 被搜索的数据对象大多是非结构化文本数据。文本数据量达到数十万或百万。支持大量基于交互式文本查询。需求非常灵活的全文搜索查询。对安全事务,非文本数据操作的需求相对较少的情况。 5.常见搜索引擎 1.LuceneLucene是一个java全文搜索引擎,完全用Java编写。是一个代码库和API,通过简单的API提供强大的功能。 2.SolrSolr是基于Lucene的Java库的开源搜索平台。可以提供分布式索引、复制、负载均衡查询以及自动故障转移和恢复。 具有很多强大的功能:全文搜索、突出、分面搜索、实时索引、数据库集成 3.ElasticSearchElasticSearch是一个开源,基于Apache Lucene库构建的Restful搜索引擎。 它提供了一个分布式、多租户能力的全文搜索引擎,具有HTTP Web界面和无架构JSON文档。 主要功能:分布式搜索、数据分析、分组和聚合 应用场景:维基百科、GitHub、电商网站、日志数据分析、站内搜索 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |