#互联网 #查询 #文档 #触发 #标准 #内容 #监控

bin+lib ieql

一个用于监控互联网内容的开放标准和实现

16 个版本

使用旧的 Rust 2015

0.3.0 2020 年 2 月 13 日
0.2.8 2020 年 1 月 6 日
0.2.7 2019 年 6 月 14 日
0.2.6 2019 年 1 月 29 日
0.1.2 2018 年 12 月 28 日

#2209命令行工具

42 每月下载量

GPL-3.0 许可证

115KB
1.5K SLoC

一个用于监控互联网内容的开放标准


此仓库包含 IEQL (Internet Extensible Query Language,发音为 equal) 的规范和参考实现。IEQL 是一个用于监控和查询互联网内容的开放标准,旨在快速、高效和可扩展。

查询由什么组成?

IEQL 查询有两个部分:触发器和阈值。

触发器 是单个查询,通常是正则表达式模式。触发器可以配置为仅匹配互联网文档的某些元素(如 正文文本HTTP 头部),也可以匹配特定位置的互联网文档(例如,来自域 nytimes.com 的每个文档)。

阈值 是触发器的组合,是查询匹配所必需的。例如,IEQL 可能有三个不同的触发器:触发器 A、触发器 B 和触发器 C。IEQL 查询可以定义为任何时间触发器 A 触发且 任一 触发器 B 或触发器 C 触发即为匹配。或者,IEQL 查询的匹配阈值可以是 任意两个触发器。这些触发器组合是使 IEQL 强大的重要部分。

为什么 IEQL 查询很棒?

IEQL 查询提供了三个主要功能

  • 速度 — IEQL 查询可以 编译 以扫描每秒数百万份文档。它们是 闪电般快速 的。
  • 分组 — 您可以将数千个 IEQL 查询组合在一起,同时使用它们进行扫描,而不会出现严重的性能权衡。
  • 开放性 — IEQL 是一个开放标准,这意味着您可以按自己的意愿实现它。
  • 可扩展性 — 由于 IEQL 是基于 RON 构建的,因此它具有可扩展性——同时向后兼容。

我如何自己使用IEQL?

要开始使用IEQL,您可以参考Rust实现,或者基于开放规范自行创建。

许可协议

本文件采用CC-BY-SA许可协议,© R. Miles McCain 2018。Rust参考实现根据LICENSE文件进行许可。

依赖项

~7–17MB
~230K SLoC