📅  最后修改于: 2023-12-03 14:56:18.884000             🧑  作者: Mango
颤振构建(Tremor)是一个用于Web和云原生环境下的高性能数据流编排引擎。它结合了实时流处理、数据摄取、数据转换和路由等功能,是一个可编程数据集成工具,提供了一种快速且灵活地构建和部署数据集成服务的方法。
颤振构建的目标是提供一个灵活、高性能、低延迟、分布式和高可用的数据集成引擎,以更好地满足现代应用的需求。
颤振构建可用于web和云原生环境下的多种场景,包括:
颤振构建由Rust编写,可以通过官方网站(https://www.tremor.rs)获取最新的安装和使用文档。下面以一个实例介绍如何使用颤振构建。
假设我们要从一个Twitter Feed中拉取数据并将其过滤为包含特定关键字的tweet。我们可以使用如下的颤振构建管道实现:
# 其中`[source]`和`[sink]`为占位符。(在实际例子中应该替换为具体的输入流和输出流)。
[example-pipeline]
auto = false
input = "[source]"
output = "[sink]"
# 使用Twitter输入
[[inputs]]
type = "twitter"
oauth_consumer_key = "consumer_key"
oauth_consumer_secret = "consumer_secret"
oauth_access_token = "access_token"
oauth_access_token_secret = "access_token_secret"
interval = "30s"
# 定义一个过滤器,使用`Lua`编写
[[processors]]
type = "lua"
operator = """
function process(x)
filter= "Tremor"
if string.find(x.data.text, filter) then
y=x
y['filt']=filter
return y
end
end
"""
# 输出到STDOUT
[[outputs]]
type = "stdout"
codec = "json"
这个颤振构建pipeline来自官方文档,其中[[inputs]]
定义了数据源(Twitter Feed),[[processors]]
定义了过滤器,并使用了Lua编写。最后一个[[outputs]]
是将结果输出到控制台。
颤振构建是一个用于Web和云原生环境下的高性能数据流编排引擎。它提供了灵活、高性能、低延迟、可编程、可扩展和易用的特点,用于数据摄取、数据转换、实时流处理和无线电分析等不同场景。通过简单的API,开发人员可以快速创建和管理管道,适应于不同的数据集成场景。