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

网站统计代码怎么添加做个有用网站

网站统计代码怎么添加,做个有用网站,请问去哪里学编程比较正规,网站logo设计教程目录 一、使文本可被搜索 不变性 二、动态更新索引 删除和更新 一、使文本可被搜索 必须解决的第一个挑战是如何使文本可被搜索。 传统的数据库每个字段存储单个值#xff0c;但这对全文检索并不够。文本字段中的每个单词需要被搜索#xff0c;对数据库意味着需要单个字…目录 一、使文本可被搜索 不变性 二、动态更新索引 删除和更新 一、使文本可被搜索 必须解决的第一个挑战是如何使文本可被搜索。 传统的数据库每个字段存储单个值但这对全文检索并不够。文本字段中的每个单词需要被搜索对数据库意味着需要单个字段有索引多值(这里指单词)的能力。 最好的支持 一个字段多个值 需求的数据结构是我们在 倒排索引 章节中介绍过的 倒排索引 。 倒排索引包含一个有序列表列表包含所有文档出现过的不重复个体或称为 词项 对于每一个词项包含了它所有曾出现过文档的列表。 Term | Doc 1 | Doc 2 | Doc 3 | ... ------------------------------------ brown | X | | X | ... fox | X | X | X | ... quick | X | X | | ... the | X | | X | ... 当讨论倒排索引时我们会谈到 文档 标引因为历史原因倒排索引被用来对整个非结构化文本文档进行标引。 Elasticsearch 中的 文档 是有字段和值的结构化 JSON 文档。事实上在 JSON 文档中 每个被索引的字段都有自己的倒排索引。 这个倒排索引相比特定词项出现过的文档列表会包含更多其它信息。它会保存每一个词项出现过的文档总数 在对应的文档中一个具体词项出现的总次数词项在文档中的顺序每个文档的长度所有文档的平均长度等等。这些统计信息允许 Elasticsearch 决定哪些词比其它词更重要哪些文档比其它文档更重要这些内容在 什么是相关性? 中有描述。 为了能够实现预期功能倒排索引需要知道集合中的 所有 文档这是需要认识到的关键问题。 早期的全文检索会为整个文档集合建立一个很大的倒排索引并将其写入到磁盘。 一旦新的索引就绪旧的就会被其替换这样最近的变化便可以被检索到。 不变性 倒排索引被写入磁盘后是 不可改变 的:它永远不会修改。 不变性有重要的价值 不需要锁。如果你从来不更新索引你就不需要担心多进程同时修改数据的问题。一旦索引被读入内核的文件系统缓存便会留在哪里由于其不变性。只要文件系统缓存中还有足够的空间那么大部分读请求会直接请求内存而不会命中磁盘。这提供了很大的性能提升。其它缓存(像filter缓存)在索引的生命周期内始终有效。它们不需要在每次数据改变时被重建因为数据不会变化。写入单个大的倒排索引允许数据被压缩减少磁盘 I/O 和 需要被缓存到内存的索引的使用量。 当然一个不变的索引也有不好的地方。主要事实是它是不可变的! 你不能修改它。如果你需要让一个新的文档 可被搜索你需要重建整个索引。这要么对一个索引所能包含的数据量造成了很大的限制要么对索引可被更新的频率造成了很大的限制。 二、动态更新索引 下一个需要被解决的问题是怎样在保留不变性的前提下实现倒排索引的更新答案是: 用更多的索引。 通过增加新的补充索引来反映新近的修改而不是直接重写整个倒排索引。每一个倒排索引都会被轮流查询到—​从最早的开始—​查询完后再对结果进行合并。 Elasticsearch 基于 Lucene, 这个 java 库引入了 按段搜索 的概念。 每一 段 本身都是一个倒排索引 但 索引 在 Lucene 中除表示所有 段 的集合外 还增加了 提交点 的概念 — 一个列出了所有已知段的文件就像在 Figure 16, “一个 Lucene 索引包含一个提交点和三个段” 中描绘的那样。 如 Figure 17, “一个在内存缓存中包含新文档的 Lucene 索引” 所示新的文档首先被添加到内存索引缓存中然后写入到一个基于磁盘的段如 Figure 18, “在一次提交后一个新的段被添加到提交点而且缓存被清空。” 所示 Figure 16. 一个 Lucene 索引包含一个提交点和三个段 索引与分片的比较 被混淆的概念是一个 Lucene 索引 我们在 Elasticsearch 称作 分片 。 一个 Elasticsearch 索引 是分片的集合。 当 Elasticsearch 在索引中搜索的时候 他发送查询到每一个属于索引的分片(Lucene 索引)然后像 执行分布式检索 提到的那样合并每个分片的结果到一个全局的结果集。 逐段搜索会以如下流程进行工作 新文档被收集到内存索引缓存。 不时地, 缓存被 提交  一个新的段—​一个追加的倒排索引—​被写入磁盘。一个新的包含新段名字的 提交点 被写入磁盘。磁盘进行 同步 — 所有在文件系统缓存中等待的写入都刷新到磁盘以确保它们被写入物理文件。新的段被开启让它包含的文档可见以被搜索。内存缓存被清空等待接收新的文档。 Figure 17. 一个在内存缓存中包含新文档的 Lucene 索引 Figure 18. 在一次提交后一个新的段被添加到提交点而且缓存被清空。 当一个查询被触发所有已知的段按顺序被查询。词项统计会对所有段的结果进行聚合以保证每个词和每个文档的关联都被准确计算。 这种方式可以用相对较低的成本将新文档添加到索引。 删除和更新 段是不可改变的所以既不能从把文档从旧的段中移除也不能修改旧的段来进行反映文档的更新。 取而代之的是每个提交点会包含一个 .del 文件文件中会列出这些被删除文档的段信息。 当一个文档被 “删除” 时它实际上只是在 .del 文件中被 标记 删除。一个被标记删除的文档仍然可以被查询匹配到 但它会在最终结果被返回前从结果集中移除。 文档更新也是类似的操作方式当一个文档被更新时旧版本文档被标记删除文档的新版本被索引到一个新的段中。 可能两个版本的文档都会被一个查询匹配到但被删除的那个旧版本文档在结果集返回前就已经被移除。 在 段合并 , 我们展示了一个被删除的文档是怎样被文件系统移除的。
http://www.eeditor.cn/news/125603/

相关文章:

  • 网站建设与维护书籍app开发费用一般多少钱
  • 中山网站建设托管wordpress的安装注意
  • 中国建设银行舟山分行网站有几家做网站的公司好
  • iis架设网站教程族谱网站建设方案
  • 网站建设在线视频网站被百度删除的原因
  • 食品公司网站源码京东购物平台
  • 如何招聘软件网站开发人员网页无法访问是什么意思
  • 免费网站建设联系电话很简单的网站
  • 网站开发私人培训梁平网站建设
  • 招标网站怎么做星级酒店网站建设公司
  • 免费网站建站排行榜网上做代销上哪个网站
  • 许昌网站建设哪家最好wordpress中home page
  • 无锡网站设网站 改版 建议
  • 网站设计论文参考文献开网店需要什么准备
  • 网站怎么重建wordpress汉化教程视频
  • 北京网站改版费用外贸推广网站公司
  • 网站提供入口wordpress漂亮轮播代码
  • 特色专业网站建设模板沈阳网站建设哪家公司好
  • 最大的域名注册网站是那个win7怎么做网站服务器吗
  • 网站开发的费用是怎么计算的seo职位信息
  • 临沂建设局网站质量三监督网页 网站 区别
  • 智能建站cms管理系统动态ip做网站可以备案吗
  • 网站关键词书写步骤网页设计个人主页模板
  • 网站开发需要有登陆界面的网站如何使用天翼云主机建设网站
  • 网站建设需要怎么选合作机构高清网站建设的好处
  • php网站怎么做302贵安建设厅网站
  • 商城网站建设目标网站建设新际
  • 情人做网站加盟培训网站建设
  • 做五金奖牌进什么网站wordpress选择php
  • 在线做编程题的网站有没有做试卷的网站