littlebot
Published on 2025-04-08 / 3 Visits
0

【源码】基于Node.js的日志数据处理框架

项目简介

DMR是一个开放过程的日志数据处理框架,其主要目标是提升业务数据报表产出的效率,使更多业务角色能够快速且独立地参与到数据分析中。该框架负责“原数据”到“报表数据”的产出过程,涵盖入库、转储、Map、Reduce、数据分析、数据评价、报表整合、任务调度、日程管理等工作,但不负责数据存储、数据通路和数据展现。它提供了主流兼容的数据接入方式,未来版本还会提供主流平台的数据api支持。

项目的主要特性和功能

  1. 灵活的数据处理流程:可通过配置化自定义数据处理流程,包含数据导入、转储、计算处理等操作。
  2. 高可配置化:业务逻辑与框架分离,以纯conf配置驱动管道组合、数据分析和I/O存取。
  3. 高可伸缩性:能通过调整管道顺序和组合动态调整性能,加入缓存管道协调单进程间的reduce阻塞。
  4. 易扩展:已有简易版本的mapper&reducer pipeline,可打包成集群计算模式满足大数据分析需求。
  5. 多进程并发处理:支持多进程并发处理机制,具备完善的异常处理机制,确保系统在长时间高负载下高效稳定运行。
  6. 自定义中间件开发:支持自定义中间件开发,提供丰富接口供开发者调用,数据流处理和管道配置灵活高效。

安装使用步骤

安装框架

  1. 确保环境已安装Node(版本 > 6.0)和npm。
  2. 通过npm全局安装dmr框架模块: bash npm install dmr -g

初始化项目

  1. 选择一个目录作为项目目录,使用以下命令完成初始化创建: bash dmr init./ 若需设置当前目录为默认项目并全局生效,可添加--base参数: bash dmr init --base 若移动项目目录,需重新使用init --force更新注册信息。

使用Bin

以import数据为例: ```bash dmr run --help

dmr run aci -s 20180401.1200.00 -e 20180401.1200.10

dmr run aci -s 20180401.1200.00 -r 10s

dmr run aci -s -5m -r 10s

dmr run aci -s 20180401120000 -r 10s -f./rs.log

dmr run aci -s -5m -r 10s -l 0

dmr run aci -s -5m -r 10s -p speedup-ace

dmr run act -k L2BZP ```

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】