新一代 高性能开源ETL 引擎

WarpParse 快得难以想象 又如此轻量简洁

WarpParse 是面向可观测性、安全、实时风控、数据平台团队的高性能 ETL 引擎, 专注于日志/事件接入、解析与转换,提供高吞吐解析(WPL)、转换(OML)、 路由、统一连接器 API 及极简运维体验。

curl -sSf https://get.warpparse.ai/setup.sh | bash
MPS 吞吐 MiB/s
WarpParse
223
Vector
66
Logstash
28
运行内存 MiB
WarpParse
141
Vector
183
Logstash
1343
二进制大小 MiB
WarpParse
30
Vector
112
Logstash
710
TCP→BlackHole MixedLogs · AWS EC2 8C/16G
Apache 2.0 License

核心特性

专为高性能日志处理和数据转换而设计

F

极致吞吐

众多场景下性能全面超越 Vector,提供行业领先的日志处理能力,满足高吞吐场景需求。

W

规则易编写

WPL(解析 DSL)+ OML(转换 DSL),可读性远超正则表达式和 Lua,让规则编写更简单。

C

连接器统一

基于 wp-connector-api,便于社区生态扩展,支持多种数据源和输出目标。

O

运维友好

单二进制部署,配置化;提供 wproj、wpgen、wprescue 工具套件,简化运维工作。

D

知识转换

通过内存数据库支持 SQL 查询,实现数据富化,让数据更有价值。

R

数据路由

基于规则和转换模型进行路由,支持多路复制与过滤器,灵活控制数据流向。

吞吐量性能对比

WarpParse vs Vector 基准测试结果 (AWS EC2 / Ubuntu 24.04 / 8 vCPU / 16 GiB RAM)

3.4x
解析性能提升
Mixed Log Parse Only
2.8x
解析+转换性能提升
Mixed Log Parse+Transform
81W
EPS 峰值吞吐
Nginx File->BlackHole
380 MiB/s
MPS 峰值
APT File->BlackHole

Nginx Access Log (239B) - 解析能力

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
810,100
Vector-VRL
211,250
Vector-Fixed
170,666
Logstash
106,382
3.83x WarpParse 更快
TCP → BlackHole
WarpParse
765,800
Vector-VRL
492,200
Vector-Fixed
255,500
Logstash
161,290
1.56x WarpParse 更快

AWS ELB Log (411B) - 解析能力

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
398,800
Vector-VRL
141,600
Vector-Fixed
161,944
Logstash
87,719
2.82x WarpParse 更快
TCP → BlackHole
WarpParse
369,900
Vector-VRL
148,400
Vector-Fixed
176,600
Logstash
125,000
2.49x WarpParse 更快

Sysmon JSON Log (1K) - 解析能力

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
153,000
Vector
38,196
Logstash
48,076
4.01x WarpParse 更快
TCP → BlackHole
WarpParse
149,800
Vector
47,000
Logstash
54,347
3.19x WarpParse 更快

APT Threat Log (3K) - 解析能力

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
129,700
Vector
16,901
Logstash
9,009
7.67x WarpParse 更快
TCP → BlackHole
WarpParse
129,600
Vector
18,900
Logstash
10,183
6.86x WarpParse 更快

Mixed Log (867B avg) - 解析能力

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
270,000
Vector-VRL
80,555
Vector-Fixed
74,418
Logstash
34,482
3.35x WarpParse 更快
TCP → BlackHole
WarpParse
259,900
Vector-VRL
86,800
Vector-Fixed
78,200
Logstash
43,103
2.99x WarpParse 更快

Nginx Access Log (239B) - 解析+转换

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
656,800
Vector-VRL
201,000
Vector-Fixed
162,800
Logstash
104,166
3.27x WarpParse 更快
TCP → BlackHole
WarpParse
524,800
Vector-VRL
392,200
Vector-Fixed
237,300
Logstash
156,250
1.34x WarpParse 更快

AWS ELB Log (411B) - 解析+转换

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
275,900
Vector-VRL
124,333
Vector-Fixed
145,900
Logstash
84,033
2.22x WarpParse 更快
TCP → BlackHole
WarpParse
259,900
Vector-VRL
130,600
Vector-Fixed
157,200
Logstash
121,951
1.99x WarpParse 更快

Sysmon JSON Log (1K) - 解析+转换

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
129,400
Vector
35,862
Logstash
34,883
3.61x WarpParse 更快
TCP → BlackHole
WarpParse
120,000
Vector
45,500
Logstash
38,961
2.64x WarpParse 更快

APT Threat Log (3K) - 解析+转换

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
123,100
Vector
16,093
Logstash
7,633
7.65x WarpParse 更快
TCP → BlackHole
WarpParse
114,200
Vector
18,600
Logstash
9,852
6.14x WarpParse 更快

Mixed Log (867B avg) - 解析+转换

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
221,300
Vector-VRL
78,965
Vector-Fixed
72,254
Logstash
33,333
2.80x WarpParse 更快
TCP → BlackHole
WarpParse
209,900
Vector-VRL
83,600
Vector-Fixed
77,300
Logstash
41,666
2.51x WarpParse 更快
P

追求极致性能

Linux 混合日志场景下提供 3.4x 解析性能优势,File 与 TCP 接收链路表现突出。

R

资源受限环境

峰值 CPU 较高,但完成同等数据量所需总 CPU 时间更少。

E

边缘/Agent 部署

规则文件小,便于快速热更新;单机处理能力强,减少中心端压力。

固定速率资源对比

在 20,000 EPS 固定速率下的 CPU 和内存占用对比 (AWS EC2 / Ubuntu 24.04 / Mixed Log / TCP → BlackHole)

测试说明:所有引擎在相同的 20,000 EPS 吞吐量下运行,测试Mixed Log场景(平均日志大小867B),对比CPU和内存的资源消耗。Logstash在warmup后采集数据。

CPU 使用率对比

平均值 / 峰值 (%)

WarpParse: 54% / 56%
Vector-VRL: 173% / 180%
Vector-Fixed: 171% / 177%
Logstash: 276% / 396%

内存占用对比

平均值 / 峰值 (MB)

WarpParse: 60 MB / 66 MB
Vector-VRL: 162 MB / 166 MB
Vector-Fixed: 128 MB / 134 MB
Logstash: 1190 MB / 1223 MB

极低 CPU 占用

54% 平均 CPU

相比 Vector-VRL 降低 68.8%,相比 Logstash 降低 80.4%

💾

极低内存占用

60 MB 平均内存

相比 Vector-VRL 降低 63.0%,相比 Logstash 降低 95.0%

📊

资源效率优势

在相同吞吐量下,WarpParse 的资源占用远低于其他引擎, 非常适合资源受限的边缘环境和大规模部署场景。

Mac 吞吐量性能对比

WarpParse vs Vector-VRL vs Vector-Fixed vs Logstash (Mac M4 Mini / 10C / 16G RAM)

4.0x
解析性能提升
Mixed Log Parse Only
3.5x
解析+转换性能提升
Mixed Log Parse+Transform
278.9W
EPS 峰值吞吐
Nginx File->BlackHole
1109 MiB/s
MPS 峰值
APT File->BlackHole

Nginx Access Log (239B) - 解析能力

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
2,789,800
Vector-VRL
572,076
Vector-Fixed
513,181
Logstash
270,270
4.88x WarpParse 更快
TCP → BlackHole
WarpParse
1,657,500
Vector-VRL
1,163,700
Vector-Fixed
730,700
Logstash
541,403
1.42x WarpParse 更快
TCP → File
WarpParse
789,000
Vector-VRL
89,900
Vector-Fixed
92,300
Logstash
507,975
8.78x WarpParse 更快

AWS ELB Log (411B) - 解析能力

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
1,124,500
Vector-VRL
389,000
Vector-Fixed
491,739
Logstash
208,333
2.89x WarpParse 更快
TCP → BlackHole
WarpParse
947,300
Vector-VRL
394,600
Vector-Fixed
555,500
Logstash
425,531
2.40x WarpParse 更快
TCP → File
WarpParse
349,700
Vector-VRL
84,700
Vector-Fixed
86,900
Logstash
350,877
4.12x WarpParse 更快

Sysmon JSON Log (1K) - 解析能力

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
542,200
Vector-VRL
160,400
Vector-Fixed
94,285
Logstash
119,047
3.38x WarpParse 更快
TCP → BlackHole
WarpParse
448,900
Vector-VRL
232,900
Vector-Fixed
134,400
Logstash
183,486
1.93x WarpParse 更快
TCP → File
WarpParse
279,800
Vector-VRL
75,800
Vector-Fixed
67,300
Logstash
152,671
3.69x WarpParse 更快

APT Threat Log (3K) - 解析能力

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
328,000
Vector-VRL
37,777
Vector-Fixed
37,857
Logstash
29,940
8.68x WarpParse 更快
TCP → BlackHole
WarpParse
299,700
Vector-VRL
51,000
Vector-Fixed
51,500
Logstash
31,446
5.88x WarpParse 更快
TCP → File
WarpParse
99,900
Vector-VRL
37,200
Vector-Fixed
38,200
Logstash
30,120
2.69x WarpParse 更快

Mixed Log (867B avg) - 解析能力

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
768,800
Vector-VRL
191,707
Vector-Fixed
200,000
Logstash
119,047
4.01x WarpParse 更快
TCP → BlackHole
WarpParse
623,200
Vector-VRL
221,200
Vector-Fixed
204,300
Logstash
144,927
2.82x WarpParse 更快
TCP → File
WarpParse
318,100
Vector-VRL
75,600
Vector-Fixed
75,000
Logstash
136,986
4.21x WarpParse 更快

Nginx Access Log (239B) - 解析+转换

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
2,162,500
Vector-VRL
572,941
Vector-Fixed
482,000
Logstash
227,272
3.77x WarpParse 更快
TCP → BlackHole
WarpParse
1,382,800
Vector-VRL
1,024,300
Vector-Fixed
595,800
Logstash
357,142
1.35x WarpParse 更快
TCP → File
WarpParse
788,900
Vector-VRL
93,500
Vector-Fixed
87,500
Logstash
344,827
8.44x WarpParse 更快

AWS ELB Log (411B) - 解析+转换

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
913,300
Vector-VRL
345,500
Vector-Fixed
446,111
Logstash
147,058
2.64x WarpParse 更快
TCP → BlackHole
WarpParse
757,600
Vector-VRL
370,900
Vector-Fixed
481,700
Logstash
222,222
2.04x WarpParse 更快
TCP → File
WarpParse
319,900
Vector-VRL
82,700
Vector-Fixed
83,600
Logstash
200,000
3.87x WarpParse 更快

Sysmon JSON Log (1K) - 解析+转换

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
432,200
Vector-VRL
142,857
Vector-Fixed
86,600
Logstash
97,087
3.03x WarpParse 更快
TCP → BlackHole
WarpParse
386,800
Vector-VRL
216,100
Vector-Fixed
130,800
Logstash
113,636
1.79x WarpParse 更快
TCP → File
WarpParse
239,000
Vector-VRL
76,600
Vector-Fixed
68,100
Logstash
109,890
3.12x WarpParse 更快

APT Threat Log (3K) - 解析+转换

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
299,400
Vector-VRL
36,857
Vector-Fixed
37,222
Logstash
26,315
8.12x WarpParse 更快
TCP → BlackHole
WarpParse
279,700
Vector-VRL
52,000
Vector-Fixed
51,000
Logstash
27,027
5.38x WarpParse 更快
TCP → File
WarpParse
89,900
Vector-VRL
37,300
Vector-Fixed
37,000
Logstash
25,641
2.41x WarpParse 更快

Mixed Log (867B avg) - 解析+转换

EPS (Events Per Second) 对比

File → BlackHole
WarpParse
659,700
Vector-VRL
186,857
Vector-Fixed
175,769
Logstash
103,092
3.53x WarpParse 更快
TCP → BlackHole
WarpParse
574,500
Vector-VRL
215,000
Vector-Fixed
199,300
Logstash
114,942
2.67x WarpParse 更快
TCP → File
WarpParse
299,900
Vector-VRL
74,800
Vector-Fixed
70,900
Logstash
107,526
4.01x WarpParse 更快
P

追求极致性能

Mac M4 平台场景下提供 1.4-8.8x 性能优势。

R

资源受限环境

峰值 CPU 较高,但完成同等数据量所需总 CPU 时间更少。

E

边缘/Agent部署

规则文件小,便于快速热更新;单机处理能力强,减少中心端压力。

WPL - Warp Parse Language

工业级数据治理的强类型解析 DSL,比正则表达式更精准、高效

更简洁

用更少的代码完成更复杂的解析任务,语法直观易读。

更强控制

内置 alt(择一容错)、opt(可选匹配)、some_of(循环探测)等元信息,提供远超正则的容错能力。

集成化流水线

将清洗与解析整合在一个表达式中,支持 decode/base64、unquote/unescape、decode/hex 等预处理。

示例:JSON 包裹的 Nginx 日志
{"date":1767006286.778936,"log":"180.57.30.149 - - [21/Jan/2025:01:40:02 +0800] \"GET /nginx-logo.png HTTP/1.1\" 500 368 \"http://207.131.38.110/\" \"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36\" \"-\""}
WPL 162 字符
VRL 419 字符
Logstash 470 字符
WPL162 字符
rule nginx { (
    json | take(log) | json_unescape() | (
        ip:sip,
        2*_,
        time:recv_time<[,]>,
        http/request",
        http/status,
        digit,
        chars",
        http/agent",
        _"
    )
) }
VRL (Vector)419 字符
obj = parse_json!(string!(.message))
. = object!(obj)

.|= parse_regex!(
  string!(.log),
  r'^(?P<sip>\S+)\s+\S+\s+\S+\s+\[(?P<recv_time>\d{2}\/[A-Za-z]{3}\/\d{4}:\d{2}:\d{2}:\d{2})\s+[+\-]\d{4}\]\s+"(?P<http_request>[^"]*)"\s+(?P<status>\d{3})\s+(?P<digit>\d+)\s+"(?P<chars>[^"]*)"\s+"(?P<http_agent>[^"]*)"\s+"[^"]*"\s*$'
)
.status = to_int!(.status)
.digit = to_int!(.digit)
del(.log)
del(.message)
Logstash470 字符
filter {
  json {
    source => "message"
  }

  dissect {
    mapping => {
      "log" => '%{sip} - - [%{recv_time} %{+recv_time}] "%{http_request}" %{status} %{digit} "%{chars}" "%{http_agent}" "%{ignore_tail}"'
    }
    tag_on_failure => ["nginx_dissect_failure"]
  }

  mutate {
    convert => {
      "status" => "integer"
      "digit"  => "integer"
    }
  }

  mutate {
    remove_field => ["log", "message", "ignore_tail","@timestamp","@version","event"]
  }
}

OML - Object Modeling Language

声明式语法,自动重组数据字段为复杂的结构化业务模型

声明式建模

描述要什么,而不是如何做。只需定义最终输出的数据结构,无需编写底层处理逻辑。

精确数据处理

read(非破坏性读取)和 take(破坏性读取)模式,支持强类型安全与自动推断。

SQL 集成

原生 SQL 集成,在构建对象时直接查询数据库进行数据增强。

OML声明式
size : digit = take(size);
status : digit = take(status);
match_chars = match read(option:[wp_src_ip]) {
    ip(127.0.0.1) => chars(localhost);
    !ip(127.0.0.1) => chars(attack_ip);
};
str_status = match read(option:[status]) {
    digit(500) => chars(Internal Server Error);
    digit(404) => chars(Not Found);
};
* : auto = read();
VRL (Vector)命令式
.status = to_int!(parsed.status)
.size = to_int!(parsed.size)
if .host == "127.0.0.1" {
    .match_chars = "localhost"
} else if .host != "127.0.0.1" {
    .match_chars = "attack_ip"
}
if .status == 500 {
    .str_status = "Internal Server Error"
} else if .status == 404 {
    .str_status = "Not Found"
}

WpEditor

用于编写 WPL 解析和 OML 转换的工作台

连接器生态

基于 wp-connector-api,支持多种数据源和输出目标

K
Kafka
M
MySQL
E
Elasticsearch
V
VictoriaMetrics
L
VictoriaLog
D
Doris
+
更多开发中...

开始使用 WarpParse

立即体验高性能 ETL 引擎的强大能力