Elasticsearch实战:索引与字段设计详解
需积分: 13 87 浏览量
更新于2024-09-08
收藏 20KB DOCX 举报
在本篇文档中,主要探讨了Elasticsearch (ES) 在实际开发环境中的数据结构设计,适用于监控和日志管理场景。文档详细列出了多个不同的索引和类型,每个都对应特定的数据类别和日期格式,以便于高效管理和查询。
1. **ES索引结构设计**:
- ES采用倒排索引机制,根据时间维度创建索引,如`alarm_isms_yyyy_mm_dd`、`block_isms_yyyy_mm_dd`等,按照年月日组织日志数据,便于按时间范围进行检索。
- 索引名称如`alarm_isms`、`block_isms`等,代表不同的日志类型,如安全警报和封锁记录。
2. **字段设计**:
- 每个索引包含多个字段,如`house_id`、`service_code`、`in_ip`等,这些字段类型多样,包括字符串、整数和日期,分别表示机房ID、服务代码、IP地址等关键信息。
- 查询字段如`key`、`house_id`、`scheme_id`等被标记为可用于查询,表明它们在搜索时会被频繁使用。
- 时间戳字段如`cur_time`用于存储报警时间,日期格式的字段通常会被处理成可搜索的数字形式。
3. **具体实例**:
- `alarm_isms_2015_10_19/4`、`block_isms_2015_10_19/5`等表示具体日期下的子索引,如第4条警报记录和第5条封锁记录。
- `domain_activelog`、`ip_activelog`等反映了活跃域名和活跃IP的日志,例如`domain_activelog_2015_10_19/81`表示该日期内有81个活跃域名记录。
4. **违法违规与基础数据监测**:
- `blackcmd_log`和`ismsm_housemonitor`分别用于记录违法违规行为和基础数据监控,如`blackcmd_log_2015_10_19/8`表示这一天有8条违法违规记录。
- 对于`ismsm_housemonitor_yyyy_mm_dd`,记录的是房屋监控数据,例如`ismsm_housemonitorr_2015_10_19/2`表示有2个监控点的数据。
5. **字段描述和用途**:
- `host`字段存储域名,`url`字段用于记录请求URL,`content`字段保存报警原因或监测数据的具体内容,`is_read`表示某个记录是否已被阅读。
这份文档提供了在ES中设计数据结构的实用指南,对于处理日志类数据的系统设计和数据分析具有指导意义,通过合理的索引和字段规划,能够提高查询效率并支持复杂的数据分析需求。
2018-02-22 上传
点击了解资源详情
2021-03-31 上传
2017-07-17 上传
2022-01-20 上传
2018-05-28 上传
2024-01-15 上传
tj071629
- 粉丝: 4
- 资源: 86
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍