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

博客网站如何设计网站四网合一

博客网站如何设计,网站四网合一,手机网站建设公司电话咨询,win7 iis发布网站教程个人博客#xff1a;无奈何杨#xff08;wnhyang#xff09; 个人语雀#xff1a;wnhyang 共享语雀#xff1a;在线知识共享 Github#xff1a;wnhyang - Overview Elasticsearch 索引别名是一种极为灵活且强大的功能#xff0c;它允许用户为一个或多个索引创建逻辑上…个人博客无奈何杨wnhyang 个人语雀wnhyang 共享语雀在线知识共享 Githubwnhyang - Overview Elasticsearch 索引别名是一种极为灵活且强大的功能它允许用户为一个或多个索引创建逻辑上的别名。这些别名用途广泛涵盖查询、索引操作以及索引管理等多个方面。以下为一些常见的索引别名应用场景 简化查询 通过创建别名用户能够以更简洁的名称访问一个或多个索引。例如若你有一个索引名为products_2024可创建别名current_products以简化查询流程 POST /_aliases {actions: [{ add: { index: products_2024, alias: current_products } }] }在执行查询时只需使用别名 GET /current_products/_search {query: {match: { category: electronics }} }如此一来不仅使查询语句更为简洁也降低了因索引名称变更而需大规模修改查询代码的风险提高了代码的可维护性。 索引版本管理 当需要滚动更新索引如按月或按年创建新索引时别名可用于指向当前活跃的索引。这种方式下用户仅需更新别名而无需对查询代码进行修改。 创建索引和别名 PUT /products_2024 {aliases: {current_products: {}} }创建新索引并切换别名 PUT /products_2025 {aliases: {current_products: {}} } POST /_aliases {actions: [{ remove: { index: products_2024, alias: current_products } },{ add: { index: products_2025, alias: current_products } }] }通过这种方式实现了索引版本的平滑过渡保证了业务查询的连续性极大地减少了因索引更新带来的系统影响。 处理索引重建和升级 在对现有索引进行重建或升级如更改映射或设置时可先创建新索引再通过别名切换至新索引从而确保服务不中断。 创建新索引 PUT /products_v2 {mappings: {properties: {new_field: { type: text }}} }切换别名 POST /_aliases {actions: [{ remove: { index: products_v1, alias: products } },{ add: { index: products_v2, alias: products } }] }这种操作方式使得索引重建和升级过程对业务的影响降至最低保证了系统的稳定性和可用性。 执行多索引查询 用户可为多个索引创建一个别名借此通过该别名对多个索引执行查询操作。例如假设有多个分区索引如logs_2023_01、logs_2023_02可创建别名logs_2023以查询这些索引 POST /_aliases {actions: [{ add: { index: logs_2023_01, alias: logs_2023 } },{ add: { index: logs_2023_02, alias: logs_2023 } }] }查询时只需使用logs_2023作为索引名称 GET /logs_2023/_search {query: {match: { status: error }} }这一功能在处理大规模数据查询时能够显著提高查询效率减少重复查询操作。 隔离读写操作 通过为写入操作和读取操作分别设置不同别名可有效隔离读写操作。例如设置别名write_index用于索引新数据设置别名read_index用于搜索查询 POST /_aliases {actions: [{ add: { index: logs_2024, alias: write_index } },{ add: { index: logs_2023, alias: read_index } }] }在更新时切换写入别名 POST /_aliases {actions: [{ remove: { index: logs_2023, alias: write_index } },{ add: { index: logs_2024, alias: write_index } }] }这种隔离机制有助于提高系统性能防止写操作对读操作产生性能干扰。 数据迁移 在将正常运行集群中的索引迁移到另外一个索引时使用索引别名可以做到无须停机操作。例如假设要将old_index迁移至new_index 可以先为new_index添加与old_index相同的别名应用程序在迁移过程中依然通过该别名进行访问待数据迁移完成删除old_index以及其相关别名不会影响业务的正常运行。具体操作如下 为新索引添加别名 POST /_aliases {actions: [{ add: { index: new_index, alias: old_index } }] }数据迁移完成后删除旧索引别名 POST /_aliases {actions: [{ remove: { index: old_index, alias: old_index } }] }删除旧索引 DELETE /old_index索引分组管理 可以将多个索引进行分组以便于更好的管理。例如假设有一系列与销售数据相关的索引sales_2023_q1、sales_2023_q2、sales_2023_q3、sales_2023_q4 可以为它们添加一个统一的别名sales_2023对这一年度的销售数据索引进行统一管理。操作如下 POST /_aliases {actions: [{ add: { index: sales_2023_q1, alias: sales_2023 } },{ add: { index: sales_2023_q2, alias: sales_2023 } },{ add: { index: sales_2023_q3, alias: sales_2023 } },{ add: { index: sales_2023_q4, alias: sales_2023 } }] }之后在进行涉及全年销售数据的查询、统计等操作时直接使用sales_2023别名即可方便快捷。 索引子集创建 给索引创建类似于视图的子集。例如在一个包含大量用户信息的索引users中若只想对特定年龄段如 18 - 30 岁的用户数据进行操作可以创建一个过滤器别名。假设索引中有age字段操作如下 创建过滤器别名 POST /_aliases {actions: [{add: {index: users,alias: young_users,filter: {range: {age: {gte: 18,lte: 30}}}}}] }使用过滤器别名查询 GET /young_users/_search {query: {match_all: {}} }此时通过young_users别名查询返回的结果就只会是符合年龄范围的用户数据。 Elasticsearch 索引别名实现读写分离 Elasticsearch 的索引别名功能可用于实现读写分离这是一种常见的架构模式有助于提升系统的可伸缩性和性能。在实际应用中读写分离可确保写操作不会影响读操作的性能同时可利用多索引分散读取负载。 实现读写分离的基本思路 写入索引 新的写入操作被路由至一个单一的写入索引。该索引通常为最新的索引专门用于接收新的数据写入。 读取索引 读取操作被路由至一个或多个读取索引。读取索引可包括最新的写入索引以及其他已关闭写入操作的旧索引。 使用别名 通过使用别名可将写入操作路由至写入索引同时将读取操作路由至读取索引组。 实际应用案例 假设拥有一个日志聚合系统每天创建一个新索引以存储当天的日志数据。需确保写入操作仅发生在最新的索引上而读取操作可分布到多个索引上。 步骤 1创建索引和别名 创建写入索引 创建名为logs_2024-08-01的索引。创建别名write_index使其指向logs_2024-08-01。 创建读取索引组 创建别名read_index_group最初指向logs_2024-08-01。 步骤 2写入数据 所有的写入操作都通过write_index别名进行这些操作会被路由到logs_2024-08-01。 步骤 3读取数据 读取操作通过read_index_group别名进行最初同样指向logs_2024-08-01。 步骤 4滚动索引 创建新的写入索引 创建新索引logs_2024-08-02。更新write_index别名使其指向logs_2024-08-02。 更新读取索引组 将logs_2024-08-02添加到read_index_group别名中。若有需要可将旧索引logs_2024-08-01从read_index_group别名中移除。 示例命令 假设已创建logs_2024-08-01和logs_2024-08-02索引且希望更新别名以实现读写分离 创建写入索引别名 curl -X POST localhost:9200/_aliases -H Content-Type: application/json -d {actions: [{ add: { index: logs_2024-08-01, alias: write_index } }] }创建读取索引组别名 curl -X POST localhost:9200/_aliases -H Content-Type: application/json -d {actions: [{ add: { index: logs_2024-08-01, alias: read_index_group } }] }滚动索引 curl -X POST localhost:9200/_aliases -H Content-Type: application/json -d {actions: [{ remove: { index: logs_2024-08-01, alias: write_index } },{ add: { index: logs_2024-08-02, alias: write_index } },{ add: { index: logs_2024-08-02, alias: read_index_group } }] }总结 写入索引 ( write_index ) 用于接收新的写入操作。读取索引组 ( read_index_group ) 用于分散读取操作的负载。滚动索引定期更新别名确保新的写入操作被路由到最新的索引同时保持读取操作分布在多个索引上。 这种方式在高并发和大数据量的场景下能够有效提升系统的性能和可伸缩性。 写在最后 拙作艰辛字句心血望诸君垂青多予支持不胜感激。 个人博客无奈何杨wnhyang 个人语雀wnhyang 共享语雀在线知识共享 Githubwnhyang - Overview
http://www.hkea.cn/news/14262469/

相关文章:

  • 上海简约网站建设公司全国新冠新增最新消息
  • 古县网站建设PHP是做网站最好的
  • 网站开发项目经验描述科技公司网站首页
  • 织梦末班和dw建设网站哪个方便优化做ppt免费模板软件
  • 建设银行网站支付限额怎么办网站建设人员
  • 工商所什么网站可做年报资源交易网站代码
  • 怎么做国际网站首页网站建设必备
  • 大学做网站有哪些四川油建公司官网
  • 桐城住房和城乡建设局网站景观设计师做交通分析常用网站
  • 贵阳建站公司网店如何做推广
  • 深圳做积分商城网站公司wordpress文件扫描
  • 做门窗安装用哪些网站找生意做网站推广一年多少钱
  • 深圳专业做网站建网站wordpress 迁移到hexo
  • 创建一个网站嘉兴有能做网站优化
  • 电子商务网站建设规划教案维修保养网站开发
  • 湛江网站排名做网站有关机械的图片
  • 网站开发去哪里找程序员全媒体网站的建设
  • 庆元县建设局网站沈阳网站建设管理
  • 建一个电商网站多少钱网站建设与运营 就业
  • 求个没封的网站2022网站的格式分类
  • 招聘做微信公众号网站维护浙江大学微纳加工平台
  • 做网站必须要dreamever北京微网站开发
  • 企业门户网站在信息系统架构中属于哪个层次做电商网站赚钱吗
  • 企业网站 数据库设计wordpress 广告源码
  • 兖州建设公司网站郑州网站建设居易国际
  • 中山网站排名信息爆炸的时代做网站
  • 怎么做子网站做网站快还是开发app快
  • 免费的网站代码昆明seo优化
  • 网站建设与管理模拟试卷缙云 网站建设
  • 网站被黑 百度跳转朋友做的网站图片不显示不出来