搜索在计算机中的地位十分重要

这篇具有很好参考价值的文章主要介绍了搜索在计算机中的地位十分重要。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

无论是在内部系统还是在外部的互联网站上,都少不了检索系统。数据是为了用户而服务。计算机在采集数据,处理数据,存储数据之后,各种客户端的操作pc机或者是移动嵌入式设备都可以很好的获取数据,得到 想要的数据服务。

检索分为SQL过滤查询和全文检索。数据都是放在数据库里,数据库里的数据量太大,要检索到精准的数据是需要很好的用户体验。用户对响应时长要求特别严格,最好控制在一定的响应时间内。SQL查询是普通的字段过滤,一般在没有走全表扫描的情况下都是性能较好的数据查询方式。全文检索的实现方式是在数据库设计的时候就有这些模块,比如MySQL的全文检索。之后在市面上有公司开发了成型的开源产品,比如Lucene等。    学过luncene框架,  能就是论事。在银行工作的时候有接触过es框架,到现在也没仔细去弄懂。每个人的学习能力不一样,有的工程师削尖了脑袋要去专研每个技术。    是在学习Java开发框架的时候接触过Lucene框架, 跟着源码敲了一遍那个搜索引擎。对于那种根据分词查询数据的方式有深刻的映像,但是并不是每个系统都是要使用全文检索分词搜索。

按需开发,意思就是根据需求进行商业开发。以用户体验为中心,金钱盈利为目的。没有谁在为 做无用功,得到与失去,不要去说,也说不准。像普通的字段搜索看起来十分简单,其实就是很简单。但是如果遇到数据量大的情况,或者是用户不会使用系统的情况下,都是有问题的。像百度,Google,搜什么就有什么,这就是全文检索。

搜索,依赖于搜索引擎。搜索引擎的建立是十分困难的事情。以  现在的水平理解的搜索,  能说个大概。  做Java 开发7年时间,虽然没有写过搜索引擎,但是没有经验的同学可以去尝试着实践下。做任何系统都是需要构建bs架构或者是cs架构,cs架构是client-server架构。

在操作系统中有客户端软件开发包,bs架构是broswer-server架构,在所有的数据操作都是在浏览器中实现,把浏览器当做一个子系统,子系统上面又有很多应用程序... bs架构是特殊的cs架构。

在大学学习计算机编程开发,首选的语言是C++。那种语言是写客户端软件, 也是学的很纠结,以为没有很好的效果。大三休学的时候学习了Java,接触全文检索,学习了前端页面的设计开发,后台数据库的建立。到现在有更多的想法和思考。爬虫的建立,爬虫是怎么从网站上爬数据,用户是怎么在网站上面搜索数据。

大学毕业之后对于搜索引擎的理解画了个草图

搜索在计算机中的地位十分重要

像  爬虫

搜索在计算机中的地位十分重要

一般的java IDE的debug是这样设计

搜索在计算机中的地位十分重要

爬虫是怎么在网站上爬数据,为什么  能爬网站的数据。现在的web浏览器都支持HTML标签编辑的网页,HTML标签页是dom元素。每个DOM元素都是一个实体对象,在数据库中体现的就是dom元素实体对象表。Dom元素表里存放的就是网页标签所承载的基础数据和一些基本属性。每当一个网站上面的标签包裹的数据发生变化,就要触发数据写write事件,即 WriteEventListener,更新索引库里的索引数据,和文档库里的文档数据。这种数据更新同步方式叫做即时同步方式,是的数据库里的数据和索引库里的数据保持一致性。用户查询数据的时候总能查到最新的数据,用户查数据都是走索引库再走文档库,这样性能更好。

至于怎么构建dom元素数据库,怎么构建dom元素索引库。那些都是商业库,需要开发注册维护,就像   在某个地方开商店一样,需要办理很多手续。

当时学习操作lucene 框架架构方式是通过AOP的方式实现数据同步。数据同步是文档库和索引库的同步操作方式。文档库存放的是Document 文档对象,索引库存放的是字段对象 Field 。字段对象 分为索引文档号和经历过分词器分词之后的关键字集合。中文分词器是Analyzer 堆中文的语句进行分词。

中文的分词器对中文语句的此法进行分析。中文的语句分为 主+谓+宾+定+状+补 . 分词器分为标准的国际分词器和中国大陆简体的中文分词器。原理十分相似,实词和虚词需要区分。实词是名词,虚词是冠词,语气词,称谓词,形容词,状态词,补语词,谓语词 。分词器分析网站上面的文章关键字,中文摘要,具体的文章正文内容。分词器的分词结果生成关键字和文档索引组装成的字段 Field 对象。字段对象集合 fieldList 放在lucene 索引库中。文档库中存放大量的文档对象,文档Document 与 字段 Field 对象的索引表中的文档索引关联。

用户在前端使用日用语句在lucene搜索引擎中搜索数据集合的过程十分复杂。简单的过程可以分为

  1. 查询语句词的录入接收。
  2. 后台对中文查询语句分词,抽取关键字形成关键字集合。
  3. 使用关键字集合在lucene索引库 中的关键字进行匹配,匹配成功会有文档集合 documentList 。
  4. 文档集合返回给业务逻辑层 service . 使用高亮器hlighter 对文档中的存在的关键词高亮。
  5. 文档集合的返回通过评分对象 score 综合得分排序。
    1. 命中文档的得分 score 有默认的得分规则和自定义得分规则。

数据同步在企业项目中使用很多。平安集团的hrx人力资源管理系统使用Elasticsearch 搜索引擎搜索数据。Lucene 和 Elasticsearch 两种引擎搜索数据的方式都是全文检索。全文检索在数据库软件中普遍存在。企业的IDE 开发环境有搜索框的地方或许会有全文检索的影子。软件和应用程序系统都有数据。检索方式分为通过表单的方式和一个表单输入框的方式。一个表单输入框的输入方式面向的用户是大众化的互联网网名。Java 的web信息系统安全新能和开发维护团队有保障,使用sql 查询语句查找数据的方式限制用户量。内部系统的用户量分为内部用户和外围用户。使用sql查询语句查询数据使用全文检索索引库和文档库。数据查询是否全表还是走索引表有用户自定义,系统默认,AI 算法相应的操作模式。

数据同步索引库和文档库中的数据。同步平安银行ES库和PJ 库中的数据。开发任务涉及到项目不同版本发布的同步数据代码。数据量大小和性能问题对于开发工程师是更高级别的操作。保证数据的正确性,代码的质量高低。项目组之间的工程师都会相互借阅不同开发分支的代码。每个开发都会有不同的编写代码的方式。

Elasticsearch 搜索原理和Lucene 类似。每个企业采用的技术架构选型不尽相同。文章来源地址https://www.toymoban.com/news/detail-492987.html

到了这里,关于搜索在计算机中的地位十分重要的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python的搜索引擎系统设计与实现 计算机竞赛

    🔥 优质竞赛项目系列,今天要分享的是 🚩 python的搜索引擎系统设计与实现 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分 工作量:5分 创新点:3分 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! 🧿 更多资料, 项目分享: https://gitee.com/dancheng-s

    2024年02月07日
    浏览(44)
  • 图像检索(Image Retrieval)是通过搜索引擎、计算机视觉等计算机技术对海量图片进行快速检索,找到最相关的图像或者按照某种相似性度量度进行排序的一类计算机技术

    作者:禅与计算机程序设计艺术 图像检索(Image Retrieval)是通过搜索引擎、计算机视觉等计算机技术对海量图片进行快速检索,找到最相关的图像或者按照某种相似性度量度进行排序的一类计算机技术。其目的是为了提高图片检索的效率及用户体验,从而节省时间、提升效率。

    2024年02月07日
    浏览(51)
  • WebAssembly不是软件!它是计算机中的计算机

    整体上看,WebAssembly 不仅通过沙盒执行提高了安全性,还通过使开发人员能够使用几乎所有流行语言创建高性能 Web 应用程序。随着WebAssembly的不断发展和生态系统的扩展,其“游戏规则改变者”的角色在开源开发的格局中可能会愈发突出。 不要把Wasm当成软件,它是计算机中

    2024年02月08日
    浏览(38)
  • 计算机毕业分享(含算法) 基于Python实现的新闻搜索引擎(源码+论文)

    # 0 简介 今天学长向大家介绍适合作为毕设的项目: 毕设分享 基于Python实现的新闻搜索引擎(源码+论文) 项目获取: https://gitee.com/sinonfin/algorithm-sharing 使用的库有: requests BeautifulSoup4 爬虫分为两部分,网络通信部分(scraper.py)与适配器(adapers/*.py)部分。 网络部分也分为两

    2024年02月02日
    浏览(60)
  • 机器学习笔记 - 基于Python发现最佳计算机视觉模型的神经架构搜索技术NAS

            近年来,随着深度学习技术的兴起,计算机视觉领域取得了巨大进步。事实证明,卷积神经网络 (CNN) 在图像识别任务中异常强大,但针对特定问题设计最佳架构仍然是一项具有挑战性的任务。这就是神经架构搜索(NAS)发挥作用的地方。NAS 是一种尖端技术,可以

    2024年02月14日
    浏览(43)
  • 计算机视觉的实际应用:计算机视觉在实际应用中的成功案例

    计算机视觉(Computer Vision)是一种利用计算机解析、理解并从图像中抽取信息的技术。它是一种跨学科的研究领域,涉及到计算机科学、数学、物理、生物学、心理学等多个领域的知识和技术。计算机视觉的应用范围广泛,包括图像处理、图像识别、机器人视觉、自动驾驶等

    2024年01月23日
    浏览(50)
  • 计算机视觉中的Transformer

    几十年来,理论物理学家一直在努力提出一个宏大的统一理论。通过统一,指的是将被认为是完全不同的两个或多个想法结合起来,将它们的不同方面证明为同一基础现象。一个例子是在19世纪之前,电和磁被看作是无关的现象,但电磁学理论成功地解释了它们,或以某种方

    2024年02月13日
    浏览(39)
  • 【网络】计算机中的网络

    目录 🍁计算机网络 🍁计算机网络模型 🍁布线工程 🍁布线系统     🦐博客主页:大虾好吃吗的博客     🦐专栏地址:网络专栏 计算机网络的功能 数据通信、资源共享、增加可靠性、提高系统处理能力。 网络协议和标准 2.1.1. 协议 语法:即数据的结构和形式,也就是

    2024年02月05日
    浏览(35)
  • 【探索AI】三十一-计算机视觉(六)深度学习在计算机视觉中的应用

    深度学习在计算机视觉中的应用已经取得了显著的成果,并且正在逐步改变我们对图像和视频信息的处理和理解方式。下面将详细讲解深度学习在计算机视觉中的几个关键应用。 首先,我们来看图像分类。图像分类是计算机视觉的基本任务之一,它涉及到将输入的图像自动归

    2024年04月09日
    浏览(64)
  • 农业中的计算机视觉 2023

    物体检测应用于检测田间收割机和果园苹果         欢迎来到Voxel51的计算机视觉行业聚焦博客系列的第一期。每个月,我们都将重点介绍不同行业(从建筑到气候技术,从零售到机器人等)如何使用计算机视觉、机器学习和人工智能来推动创新。我们将深入探讨正在使用

    2024年02月15日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包