RisingWave 1.3 功能亮点

我们很高兴地宣布,RisingWave 1.3 版本现已正式发布!此版本引入了许多有益的新功能和特性,涵盖数据源、sink 和 SQL 函数。同时,我们还重点优化了多项功能,例如对正则表达式的高级支持、支持将 RisingWave 中的数据 sink 到更多下游系统、以及新增的 WITH ORDINALITY 子句等。

欢迎大家体验!完整的功能更新列表请参阅发布说明

1. 支持新的数组函数

该版本新增多个数组函数,包括array_minarray_maxarray_sortarray_sum。数组函数与聚合函数不同,数组函数接受数组类型作为输入,对数组中的值执行聚合操作。

有关新函数的详细信息以及示例,请参阅文档

2. 对正则表达式函数的高级支持

对包括regexp_countregexp_matchregexp_matchesregexp_replace在内的正则表达式函数,RisingWave 支持对它们执行反向引用(backreference)、正向先行(positive lookahead)、负向先行(negative lookahead)、正向回顾(positive lookbehind)和负向回顾(negative lookbehind)等操作。

3. 引入WITH ORDINALITY子句

该版本支持了WITH ORDINALITY子句。在使用集合返回函数(set-returning functions)时,可在SELECT语句的FROM子句末尾使用该子句。它会在查询结果中添加一个新列,从 1 开始对该函数返回的行进行编号。

sql 复制代码
SELECT * FROM
unnest(array[0,1,2])
WITH ORDINALITY;

有关WITH ORDINALITY的更多详细信息,请参阅文档

4. 创建 Kafka、Kinesis 和 Pulsar sink 的句法更新

在以前的版本中,创建 sink(CREATE SINK)时是通过 WITH 选项和type参数指定数据接收器的类型的。例如,下方的 SQL 语句创建了一个append-only的 Kafka sink。

sql 复制代码
CREATE SINK s1 FROM mv WITH (
  connector = 'kafka',
  properties.bootstrap.server = 'localhost:9092',
  topic = 'test_topic',
  type = 'append-only');

现在,sink 的类型和数据格式可以使用FORMAT...ENCODE...指定,以与CREATE SOURCE保持一致。目前仅支持 JSON 格式。下方的 SQL 语句创建了一个append-only的 Kafka sink,需注意已将类型从append-only更改为PLAIN。此句法变更仅适用于 Kafka、Kinesis 和 Pulsar sink。

sql 复制代码
CREATE SINK s1 FROM mv WITH (
  connector = 'kafka',
  properties.bootstrap.server = 'localhost:9092',
  topic = 'test_topic')
FORMAT PLAIN ENCODE JSON;

有关 sink 句法更新的更多详细信息,请参阅文档

5. 一系列新的 sink 连接器

此版本引入了多个新的 sink 连接器,在 RisingWave 中处理的数据可以传送到更多系统。RisingWave 将支持把数据传输到更多的主流系统中去,请查看我们的集成页面以获取支持的系统列表。您还可以投票以表明对特定集成的支持,我们将优先开发。

(1)Cassandra / ScyllaDB sink 连接器

Cassandra 和 ScyllaDB 是能够处理大型工作负载的开源 NoSQL 数据库管理系统。由于 ScyllaDB 是作为 Cassandra 的替代品开发的,因此两者的 RisingWave 数据接收器连接器是相同的。更多细节,请查看 Cassandra数据接收器指南

(2)Doris sink 连接器

Apache Doris 是一款用于大数据即席分析的开源分布式分析数据库。想了解如何将数据从 RisingWave 传送到 Doris,请查看这份指南

(3)Elasticsearch sink 连接器

Elasticsearch 是一款用于实时处理大型数据的开源分布式搜索和分析引擎。想要了解如何在 RisingWave 中创建 Elasticsearch 数据接收器,请查看这份指南

(4)NATS 消息系统 sink 连接器

NATS 是一款开源消息系统,遵循发布-订阅和请求-响应消息模式,非常适用于实时应用。欲了解如何将数据传送到 NATS,请查看这份文档,。

(5)Pulsar sink 连接器

Apache Pulsar 是一款用于开发实时事件驱动应用程序的开源分布式消息系统。通过 RisingWave,您现在可以从 Pulsar 摄取数据并传送处理后的数据至 Pulsar。欲了解如何创建数据接收器以传送数据到 Pulsar,请查看这份指南

结论

这些只是 RisingWave 1.3 版本中的部分功能亮点,完整的功能更新列表请参阅发布说明。您可关注 RisingWave 的 GitHub repo,了解最新的开发动向和发布计划。

如果您希望及时获取 RisingWave 的最新动态,可以订阅我们的月度邮件,关注官方 TwitterLinkedIn,或加入我们的 Slack 社区,与 RisingWave 工程师和全球的流处理爱好者一同交流。

关于 RisingWave

RisingWave 是一款分布式 SQL 流处理数据库,旨在帮助用户降低实时应用的的开发成本。作为专为云上分布式流处理而设计的系统,RisingWave 为用户提供了与 PostgreSQL 类似的使用体验,并且具备比 Flink 高出 10 倍的性能以及更低的成本。了解更多:

GitHub: risingwave.com/github

官网: risingwave.com

公众号: RisingWave 中文开源社区

相关推荐
ღ᭄ꦿ࿐Never say never꧂7 分钟前
微服务架构中的负载均衡与服务注册中心(Nacos)
java·spring boot·后端·spring cloud·微服务·架构·负载均衡
工业甲酰苯胺15 分钟前
分享3款开源、免费的Avalonia UI控件库
ui·开源
.生产的驴16 分钟前
SpringBoot 消息队列RabbitMQ 消息确认机制确保消息发送成功和失败 生产者确认
java·javascript·spring boot·后端·rabbitmq·负载均衡·java-rabbitmq
海里真的有鱼24 分钟前
Spring Boot 中整合 Kafka
后端
布瑞泽的童话30 分钟前
无需切换平台?TuneFree如何搜罗所有你爱的音乐
前端·vue.js·后端·开源
写bug写bug40 分钟前
6 种服务限流的实现方式
java·后端·微服务
后端小张1 小时前
Redis 执行 Lua,能保证原子性吗?
数据库·redis·缓存
离开地球表面_991 小时前
索引失效?查询结果不正确?原来都是隐式转换惹的祸
数据库·后端·mysql
Victor3561 小时前
Oracle(138)如何监控数据库性能?
后端
lipviolet1 小时前
Redis系列---Redission分布式锁
数据库·redis·分布式