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

官方网站下载打印机驱动程序上海关键词优化排名软件

官方网站下载打印机驱动程序,上海关键词优化排名软件,网站建设资料,网页广告设计师培训在很多的时候#xff0c;由于一些需求#xff0c;我们不得不修改索引的映射#xff0c;也即 mapping#xff0c;这个时候我们需要重新索引#xff08;reindex#xff09;来把之前的数据索引到新的索引中。槽糕的是#xff0c;我们的这个索引还在不断地收集实时数据… 在很多的时候由于一些需求我们不得不修改索引的映射也即 mapping这个时候我们需要重新索引reindex来把之前的数据索引到新的索引中。槽糕的是我们的这个索引还在不断地收集实时数据那么我们该如何处理这种情况呢 比如我们有这样的一个案例。假设你有一个名为 production_logs 的索引处于活动状态这意味着它不断接收新数据。现在假设你想要以需要重新索reindex引该索引的所有数据的方式更新其映射通常当你想要更改现有字段的数据类型例如从keyword 到 integer时会发生这种情况。 好的现在你拥有的选项将取决于你首先如何设置索引。 你需要一个 index template 如果你没有自己创建索引Elasticsearch 能够创建索引这意味着如果你尝试索引 foo 索引中的某些数据Elasticsearch 将创建它如果它尚不存在。 通过这样做它使用称为动态映射的功能为这个新索引创建默认映射。 这就是你需要索引模板的原因 此功能允许你定义 Elasticsearch 自动创建的索引将获得的所有属性包括其设置和映射。 因此如果你的 production_logs 索引没有索引模板仍然是时候创建它了。 我们称它为 production_logs_template 并将此模板的模式设置为 production_logs* 这意味着每次 Elasticearch 将自动创建名称与模式 production_logs* 匹配的索引时它将应用该模板请参阅完整文档。 以下是索引模板创建请求的示例 PUT _index_template/production_logs_template {index_patterns: [ production_logs*],template: {settings: {...},mappings: {...}} } 案例 1你已经有一个 index alias 将真实索引隐藏在索引别名后面始终是一个好习惯。 它引入的抽象级别可帮助你在后台执行修改而不会影响索引的用户无论是人还是软件。 因此假设你获得了当前链接到要修改的 production_logs 索引的日志别名并且你想要根据 production_logs_template 更新索引的映射。 这里的方法很简单 更新索引模板以定义新映射创建一个新索引其名称与 production_logs* 匹配例如 production_logs_1 切换日志别名以指向这个新索引 POST _aliases {actions: [{add: {index: production_logs_1,alias: logs}},{remove: {index: production_logs,alias: logs}}] } 在上面我们的 add 及 remove 是一个原子操作也即同时起作用。中间不会有其它的操作这样保证在删除的同时向我们的索引别名 logs 写入的数据能够正确地写入到新的索引中。 将数据从 production_logs 重新索引到 production_logs_1 POST _reindex?wait_for_completionfalse {source: {index: production_logs},dest: {index: production_logs_1} } 此请求将返回一个 task_id你可以使用它来监视重建索引过程的进度。 以下是你收到的响应示例 {task: task_id } 你可以发出请求以利用任务管理 API GET _tasks/task_id?human 上述命令可以让我们知道任务的进度。就是这么简单 在重建索引过程结束时你的 production_logs_1 索引将包含所有新旧数据并具有正确的映射。 案例2你还没有一个 index alias 嗯这会更难但没有什么是不可能的对吧 从现在开始我们仍然可以面临至少两种不同的情况你是否使用摄入管道ingest pipeline。 在下文中请记住我们已经创建了一个驱动 production_logs* 索引的索引模板。 案例 2.1你正在使用一个 ingest pipeline 假设使用 production_logs_pipeline 将数据索引到 Elasticsearch该管道处理任何传入事件然后再将其索引到 production_logs 索引中。 以下是你想要更新实时索引的几个步骤。 首先修改 production_logs_pipeline在末尾添加 set processor。 {set: {field: _index,value: {{{_index}}}_1} } 现在所有通过此摄取管道的文档都将重定向到 production_logs_1 索引。 然后你可以将所有数据从 production_logs 重新索引到名为 production_logs_orig 的新索引索引。 POST _reindex?wait_for_completionfalse {source: {index: production_logs},dest: {index: production_logs_orig} } 这里请注意索引 production_logs_1 和 production_logs_orig 都将根据索引模板 production_logs_template 创建 重新索引任务完成后你可以安全地删除 production_logs 索引它的所有数据都已存储在 production_logs_orig 索引中。 现在我们可以创建一个新的索引别名它将被命名为 production_logs 并将同时针对 production_logs_orig 和 production_logs_1 索引后者将是写入索引。 POST _aliases {actions: [{add: {index: production_logs_orig,alias: production_logs}},{add: {index: production_logs_1,alias: production_logs,is_write_index: true}}] } 最后你需要返回到以前版本的 production_logs_pipeline以便传入的数据从现在开始将使用新创建的 production_logs 别名。 作为最终结果我们现在有一个索引别名指向两个具有预期映射的索引 有可能再次从 production_logs_orig 重新索引到 production_logs_1 最后只有一个索引。 案例 2.2索引是直接对索引进行的没有摄取管道 在这种情况下需要执行更多步骤遗憾的是无法创建别名来替换原始索引但你仍然可以将新映射应用于实时索引。 因此首先你必须创建一个新的摄取管道我们将其命名为 temp_pipeline PUT _ingest/pipeline/temp_pipeline {processors: [{set: {field: _index,value: {{{_index}}}_1}}] } 它只有一个处理器其作用是将传入的文档重定向到一个新索引该索引的名称是原始索引并以 _1 为后缀。 现在我们要表明任何进入 production_logs 索引的文档现在都应该使用这个新的摄取管道。 我们可以在我们的索引上利用 index.default_pipeline 设置这将允许我们应用管道即使原始索引请求没有提到它。 PUT production_logs/_settings {index: {default_pipeline: temp_pipeline} } 从现在开始每个传入的文档都将被重定向到 production_logs_1 索引该索引将使用 production_logs_template 索引模板自动创建。 production_logs 索引不会获得任何新文档因此我们可以将数据从该索引重新索引到一个名为 production_logs_orig 的新文档。 POST _reindex?wait_for_completionfalse {source: {index: production_logs},dest: {index: production_logs_orig} } 和以前一样我们可以使用任务管理 API来监控重建索引过程。 完成后我们删除 production_logs下一个传入文档到达后将立即重新创建 它将获得预期的映射感谢索引模板所以我们处于这种情况 production_logs_orig 索引包含在我们开始操作之前索引的所有数据production_logs_1 索引包含从迁移开始到删除之前的 production_logs 索引之间已编制索引的所有数据production_logs 索引已重新创建并收集所有新数据在如下的步骤中进行操作 要回到单索引状态我们只需将数据从 production_logs_orig 和 production_logs_1 重新索引到 production_logs 。 POST _reindex?wait_for_completionfalse {source: {index: production_logs_1, production_logs_orig},dest: {index: production_logs} } 作为最终结果我们将所有以前的数据以及所有新数据与新映射一起存储在 production_logs 索引中 结论 本文可以帮助实现一些数据操作但请记住当前在 Elasticsearch 中处理数据时的最佳实践 始终使用别名从你用来与之交互的资源中抽象出你的真实索引如果处理时间序列最好是使用数据流
http://www.w-s-a.com/news/292075/

相关文章:

  • 淘宝做首页热点的什么网站徐州建设安全监督网站
  • 正规的镇江网站建设广州有什么好玩的东西
  • 丹阳网站设计公司网站开发 0755
  • 百度网页版浏览器网址找文网优化的技术团队
  • 信息网站怎么做做儿童网站赚钱吗
  • 帝国cms 网站迁移个人网站备案备注
  • 青岛做网站推广怎样做网站才不能被攻破
  • 使用网站模板快速建站教案杂志wordpress主题 无限加载
  • 南宁南宁做网站南安网络推广
  • 旌阳移动网站建设微网站 杭州
  • 合肥网站开发如何用VS2017做网站
  • 网站 制作公司福州企业建站软件
  • 网站推广主要方法一流的盘锦网站建设
  • 给个网站好人有好报2021东莞专业网站营销
  • 中国网站优化哪家好制作网站页面
  • 网站站内优化度娘网站灯笼要咋做呢
  • 怎么制作一个简单的网站七牛云做网站
  • 厦门建网站哪家好求网站建设合伙人
  • 营销型网站制作步骤五个宁波依众网络科技有限公司
  • 外贸响应式网站建设临清建设局网站
  • 手机怎样使用域名访问网站个人做旅游网站的意义
  • 西部数码域名网站模板网站建设怎么管理业务员
  • o2o手机维修网站那个公司做的电子网站风格设计
  • 网站建设预算计算方法什么是网络营销战略?网络营销战略有哪些基本类型
  • 无锡做网站公司多少钱网站备案方法
  • 建设网站最强做网站哪一家公司好
  • 漫画风格网站人物介绍网页模板html
  • 贵阳市住房和城乡建设局政务网站大连 网站开发
  • 漳州市住房建设局网站网站一般多长
  • 国外做网站推广小程序制作二维码签到