KSQL事件流数据库 v7.2.0.470

KSQL事件流数据库

  • 源码大小:14.3MB
  • 源码语言:简体中文
  • 源码类型:国产软件
  • 源码授权:免费软件
  • 更新时间:2022-03-03 16:43:32
  • 源码类别:java源码
  • 源码官网:
  • 网友评分:源码评分
  • 应用平台:java
14.3MB
360通过 腾讯通过 金山通过
内容介绍热点排行相关文章下载地址↓

 ksqlDB是Apache Kafka的事件流数据库。它是分布式的,可伸缩的,可靠的和实时的。ksqlDB通过熟悉的轻量级SQL语法将实时流处理的功能与关系数据库的平易近人的感觉结合在一起。ksqlDB提供了以下核心原语:

1、流和表-通过Apache Kafka主题数据在架构上创建关系

2、物化视图-使用SQL在流上定义实时,增量更新的物化视图

3、推送查询-连续查询,可将增量结果实时推送到客户端

4、拉式查询-按需查询物化视图,非常类似于传统数据库

5、连接-完全从ksqlDB内部与任何Kafka Connect数据源或接收器集成

组合这些强大的原语,使您能够仅使用SQL语句来构建完整的流应用程序,从而最大程度地减少了复杂性和运营开销。ksqlDB支持广泛的操作,包括聚合,联接,窗口化,会话化等等。您可以在此处找到更多的ksqlDB教程和资源。

用例和范例

物化视图

ksqlDB允许您在流和表上定义实例化视图。物化视图由所谓的“持久查询”定义。这些查询被称为持久查询,因为它们使用表维护其增量更新的结果。

CREATE TABLE hourly_metrics AS
SELECT url, COUNT(*)
FROM page_views
WINDOW TUMBLING (SIZE 1 HOUR)
GROUP BY url EMIT CHANGES;

可以通过查询从需求的实现视图中“拉出”结果SELECT。以下查询将返回单行:

SELECT * FROM hourly_metrics
WHERE URL = 'http://myurl.com' AND WINDOWSTART = '2019-11-20T19:00' ;

结果也可以通过流查询连续地“推送”给客户端SELECT。以下流查询将向客户端推送对实例化视图所做的所有增量更改:

SELECT * FROM hourly_metrics EMIT CHANGES ;

流查询将永久运行,直到明确终止它们为止。

流式ETL

Apache Kafka是为数据管道提供动力的流行选择。ksqlDB使在管道内转换数据变得简单,从而使消息可以干净地降落在另一个系统中。

CREATE STREAM vip_actions AS
SELECT userid, page, action
FROM clickstream c
LEFT JOIN users u ON c.userid = u.user_id
WHERE u.level = 'Platinum' EMIT CHANGES;

异常检测

ksqlDB非常适合识别实时数据的模式或异常。通过在数据到达时处理流,您可以识别并适当地以毫秒级延迟掩盖异常事件。

CREATE TABLE possible_fraud AS
SELECT card_number, count(*)
FROM authorization_attempts
WINDOW TUMBLING (SIZE 5 SECONDS)
GROUP BY card_number
HAVING count(*) > 3 EMIT CHANGES;

监控方式

Kafka具有通过流处理提供可伸缩的有序消息的能力,使其成为日志数据监视和警报的通用解决方案。ksqlDB提供了一种熟悉的语法,用于跟踪,理解和管理警报。

CREATE TABLE error_counts AS
SELECT error_code, count(*)
FROM monitoring_stream
WINDOW TUMBLING (SIZE 1 MINUTE)
WHERE type = 'ERROR'
GROUP BY error_code EMIT CHANGES;

与外部数据源和接收器集成

ksqlDB包括与Kafka Connect数据源和接收器的本机集成,可有效地在各种外部系统上提供统一的SQL接口。

以下查询是一个简单的持久性流查询,它将所有输出产生到名为的主题中

CREATE STREAM clicks_transformed AS
SELECT userid, page, action
FROM clickstream c
LEFT JOIN users u ON c.userid = u.user_id EMIT CHANGES;

与其简单地将所有连续查询输出发送到Kafka主题,还不如将输出路由到另一个数据存储区非常有用。ksqlDB的Kafka Connect集成使此模式非常容易。

以下语句将创建一个Kafka Connect接收器连接器,该连接器将上述流式ETL查询的所有输出直接连续发送到Elasticsearch:

CREATE SINK CONNECTOR es_sink WITH (
'connector.class' = 'io.confluent.connect.elasticsearch.ElasticsearchSinkConnector',
'key.converter' = 'org.apache.kafka.connect.storage.StringConverter',
'topics' = 'clicks_transformed',
'key.ignore' = 'true',
'schema.ignore' = 'true',
'type.name' = '',
'connection.url' = 'http://elasticsearch:9200');


人气源码
下载地址
相关文章
网友评论
下载声明

☉ 解压密码:www.jb51.net 就是本站主域名,希望大家看清楚,[ 分享码的获取方法 ]可以参考这篇文章
☉ 推荐使用 [ 迅雷 ] 下载,使用 [ WinRAR v5 ] 以上版本解压本站软件。
☉ 如果这个软件总是不能下载的请在评论中留言,我们会尽快修复,谢谢!
☉ 下载本站资源,如果服务器暂不能下载请过一段时间重试!或者多试试几个下载地址
☉ 如果遇到什么问题,请评论留言,我们定会解决问题,谢谢大家支持!
☉ 本站提供的一些商业软件是供学习研究之用,如用于商业用途,请购买正版。
☉ 本站提供的KSQL事件流数据库 v7.2.0.470资源来源互联网,版权归该下载资源的合法拥有者所有。