当前位置: 首页 > news >正文

常州网站制作网站租用服务器多少钱

常州网站制作,网站租用服务器多少钱,网站建设技术代码,手机网站设计咨询介绍 随着数据量的不断增长#xff0c;搜索和分析大规模数据集变得越来越重要。传统数据库在面对这种需求时往往表现不佳#xff0c;这时候就需要一种专门用于搜索和分析的引擎。ElasticSearch #xff08;简称ES#xff09;就是这样一款强大的搜索引擎#xff0c;它具有许…介绍 随着数据量的不断增长搜索和分析大规模数据集变得越来越重要。传统数据库在面对这种需求时往往表现不佳这时候就需要一种专门用于搜索和分析的引擎。ElasticSearch 简称ES就是这样一款强大的搜索引擎它具有许多优势使得它成为许多企业和开发者的首选。 简单的说ElasticSearch 是一个实时的分布式存储、搜索、分析的引擎 在我看来ES最强的其实是它的模糊搜索功能。 那有的人就会问了我数据库一样可以实现模糊搜索啊 select * from student where name like %宁正%例如这个sql就可以查出姓名中带有宁正两字的学生 的确这这样做是可以模糊搜索的但是name like %宁正%这种写法它是不走索引的所以就意味着如果你的数据量很大比如上千万上亿条那你不管如果去优化代码你的查询也肯定是秒级的 并且还有一个情况我们大部分搜索的时候输入的信息其实并不是很准确例如我想搜索ElasticSearch 有关的信息但我一不小心打成了ElesticSearch 如果按sql语句去进行模糊搜索你就无法找到和es有关的信息 所以在这种情况就可以使用ElasticSearch 它就是为了搜索而生的。 因此我这边就把es的优点罗列出来并进行浅显的分析 ES对于全文的模糊搜索非常擅长 原因ES是基于倒排索引使得ES能够快速匹配关键字并返回相关结果而不需要像传统数据库那样进行全表扫描。倒排索引在存储和查询大规模文本数据时具有较高的效率。 那有些小伙伴看了可能就会问了倒排索引是什么倒排索引和正排索引有什么区别我们日常使用的数据库可以使用倒排索引吗 那接下来就一个一个回答 倒排索引是什么 倒排索引是一种基于关键词的索引结构常用于全文搜索引擎和信息检索系统中。它是一种将文档中的关键词映射到对应的文档ID的数据结构。 具体来说倒排索引将文档中的每个关键词与包含该关键词的文档ID建立映射。对于每个关键词倒排索引记录了出现该关键词的文档列表包括它们的词频、位置等信息。这使得在给定关键词的情况下可以快速找到包含该关键词的相关文档。 倒排索引和正排索引有什么区别 正排索引是一种文档ID进行排序的索引结构它存储了文档和文档中的每个词条的详细信息。 我有一个通俗易懂的方法来表达 正排索引就想我们看书时的目录可以直接通过页码找到对应页码的内容 而倒排索引就是将整本书中的词汇提取出来并记录改词汇存在于哪些页码中形成映射关系当我想要查找一个词汇出现在哪些页中时便只要根据这个映射表就可以快速找到想要的页数 这么一解释大家应该就清楚了。 我们日常使用的数据库可以使用倒排索引吗 实际上数据库是可以支持倒排索引的但是与传统的正排索引相比数据库倒排索引的实现相对有些复杂而且数据库的主要设计目标是支持高效的数据管理和事务处理而不是专注于全文搜索等复杂的查询需求 ES的查询语法更灵活可以精确控制查询条件和权重以及进行更复杂的模糊搜索 Elasticsearch的查询语法相当灵活可以根据需要控制查询条件和权重以及执行诸如布尔查询、范围查询、模糊查询地理位置等复杂查询。通过使用查询语法可以实现更精确的搜索。 我这边写一个基于自身地理位置查询的一个demo geoDistanceQuery是一种地理位置查询用于查询距离某个地理坐标点一定距离范围内的文档。只需要提供一个地理点的经纬度坐标和一个距离以及一个单位 SearchSourceBuilder sourceBuilder new SearchSourceBuilder(); GeoDistanceQueryBuilder geoQuery QueryBuilders.geoDistanceQuery(local).point(lat, lon) // 地理位置坐标.distance(distance, DistanceUnit.KILOMETERS); // 查询距离sourceBuilder.query(geoQuery); SearchRequest searchRequest new SearchRequest(indexName); searchRequest.source(sourceBuilder);// 执行查询 SearchResponse searchResponse client.search(searchRequest, RequestOptions.DEFAULT);在上面的demo中我们创建了一个geoDistanceQuery来查询location字段在给定地理位置坐标的一定距离范围内的文档。这里使用的是公里作为单位。 ES提供了丰富的聚合和分析功能 ES原生的提供了丰富的聚合和分析功能可以对结果进行聚合、分组、排序等多种操作并且ES还提供了许多其他的分析功能如词频统计、日期直方图等。这些功能可以帮助用户更深入地理解数据生成仪表板和可视化图表。 我在这边也写一个较为简单的demo看一看就好详细的之后的博客会讲解 假设我们有一个索引存储了电影信息包含字段title电影标题、genre电影类型和rating电影评分。 现在我们希望对不同类型的电影进行聚合并计算每个类型的平均评分。 首先我们需要构建一个聚合查询指定按genre字段进行分组并计算每个分组的平均值。 GET movies/_search {size: 0,//指定聚合操作的容器aggs: { //聚合操作起的一个名字genres: { //指定分组字段的聚合操作类型terms: { // 指定要分组的字段field: genre},aggs: {//平均值聚合操作起的一个名字avg_rating: {//计算均值的聚合操作类型avg: {//操作的字段field: rating}}}}} }在上面的查询中我们使用terms聚合将电影按照genre字段进行分组并使用avg聚合计算每个分组的rating字段的平均值。 就会得到以下类似的结果 aggregations : {genres : {buckets : [{key : Action,doc_count : 100,avg_rating : {value : 4.2}},{key : Drama,doc_count : 80,avg_rating : {value : 3.8}},...]} }Action类的电影有100部平均评分4.2 Drama类的电影有80部平均评分3.8 这只是聚合和分析功能的一个简单示例实际上ES提供了更多丰富的聚合操作和分析功能可以根据具体需求进行更复杂的操作 ES使用分布式架构能够更好地处理大规模数据和高并发查询 ES分布式架构在水平扩展上的表现出色通过将数据分片存储在多个节点上ES可以处理大规模数据并且能够通过并行化查询和分布式计算来提高查询性能。 这个在这就不细讲了之后具体介绍的是会讲述。 那我们是无脑上ES吗还是说要在一个特定的情况下呢 第一个问题的回答显而易见的当然是不能无脑上ES ES虽然功能强大但也很复杂。使用它需要一定的学习和理解。如果没有适当的培训或经验可能会遇到配置错误、性能问题、索引和查询错误等ES是一个分布式系统需要适当的硬件和资源支持才能正常运行。如果部署不当就会导致性能问题或资源浪费。ES需要进行适当的管理和维护包括监控集群健康状况、备份和恢复数据、更新和升级等。如果没有正确进行管理和维护可能会遇到数据丢失、性能下降或安全风险成本成本还是成本 第二个问题那我们什么时候才要用ES呢 在我看来可以从以下几个方法来考虑 数据规模如果你要处理的数据高到百万甚至上亿那你完全可以使用ES来处理大量的数据集搜索复杂度如果你需要经常的对全文数据进行复杂的文本查询和顾虑那ES是一个比较好的选择实时性如果你需要快速地分析实时数据那ES是一个合适的选择它支持实时数据索引和查询可以在数据到达时即时进行分析和可视化分布式和高可用性需求如果你需要一个可扩展的具有高可用性和容错性的数据存储和分析解决方案那ES是一个合适的选择 所以不要因为这个技术比较厉害就无脑的去使用该技术在使用技术的时候也要考虑到它所带来的风险
http://www.hkea.cn/news/14457144/

相关文章:

  • 建设个人网站详细点成都科技网站建设联
  • 企业门户网站建设专业品牌网页特效精灵
  • 网站开发人员需求公司网页编辑
  • 做漫画网站的需求互联网营销型网站
  • 中国海洋大学站群网站建设myeclipse做网站更改名字
  • 网站优化排名方法蚌埠集团网站建设
  • 南京专业网站建设网站制作公司排名
  • 虚拟主机网站南阳微网站
  • 做网站有什么好处吗公司网站开发 建设
  • 网站建设新手如何自己做网站云南网站建设维修公司哪家好
  • 营销类wordpress主题优化合作平台
  • 网站注册和进入aspwordpress域名如何申请
  • 网站基础风格创建网站设计制作上海
  • 玉溪市建设厅官方网站app设计方案模板
  • 网站用什么做关键词桂林象鼻山水月洞
  • 中国空间站有几个舱段建设一个网站平台
  • 怎么建设自己个人网站wordpress网站修改域名
  • 广州网站建设免费荆州企业网站建设
  • 在家做兼职官方网站平台网站与app的本质区别
  • 用个人电脑做网站的步骤sem投放
  • 广东网站建设开发公司用php做的博客网站有哪些
  • 网站提升收录品牌建设的本质英语作文
  • 设计网站免费素材提交百度一下
  • 网站建设 9a网站建设营销话术
  • 市城乡规划建设局网站免费入驻的网站设计平台
  • 网站建设与管理自考试题及答案优斗士做网站怎么样
  • 如何在网站开发客户自己做网站大概多少钱
  • 微信小程序视频网站开发教程巩义云启网站建设
  • 做宠物服务的相关网站cvm服务器做网站
  • 手机怎么做网站教程cosy主题wordpress