伯克利开源 Confluo,吞吐量是 Kafka 的 4 到 10 倍

来源: OSCHINA
编辑: h4cd
2018-12-18 08:25:00

近日伯克利 RISE Lab 开源了一个多数据流实时分布式分析系统 Confluo,它既是一个网络监控和诊断框架,也可以作为时序数据库和发布订阅消息系统。


源码地址:https://github.com/ucbrise/confluo

    当下,类似基于终端主机的网络监控系统、IoT 设备传感器程序等应用,其后端的服务器每秒都可以捕获数千万个数据点。这些数据被用于在线查询,实现可视化与监控,或者用于离线查询,进行故障分析和系统优化。这样的使用场景下,就需要实时监控和分析工具支持,这些工具通常支持高吞吐量数据提取、低延迟在线查询和低开销的离线查询。

    虽然目前已经存在一些用于高吞吐量数据提取的数据结构,它们可以支持丰富的在线和离线查询,但是高吞吐量与查询能力目前来看还是互斥的。在从多个数据流提取数据时,查询需要更新多个数据结构,包括原始数据、聚合统计信息和物化视图。但是用于支持这些查询的数据结构往往具有较高的更新开销,而且无法维持大多数应用程序所需的数据提取速率。而另一方面,可以维持高数据提取速率的数据结构往往只支持非常简单的查询。


    Confluo 正是为了应对这种情况而产生的,它是一个致力于同时实现高吞吐量数据提取和富有表现力的离线/在线查询的系统。

    Confluo 性能强悍,支持:

    • 来自多个数据流的数百万个数据点的高吞吐量并发写入

    • 毫秒级的在线查询

    • 使用最少 CPU 资源的 ad-hoc 查询

    不同场景下对 Confluo 进行性能测试,结果显示:

    • 作为一个网络监控和诊断框架,Confluo 能够在单核上以线路速率(10Gbps 链路)执行数千个触发器和数十个过滤器。

    • 作为一个时序数据库,与其它诸如 CorfuDB、TimescaleDB 和 BTrDB 等先进的时序数据库相比,Confluo 的吞吐量提高了 2 到 20 倍,写入延迟降低了 2 至 10 倍,时间区间查询延迟降低了 5 至 20 倍。

    • 作为一个发布订阅消息系统,Confluo 的吐量是 Kafka 的 4 到 10 倍。


    更详细的分析:https://rise.cs.berkeley.edu/blog/confluo-millisecond-level-queries-on-large-scale-streaming-data

    展开阅读全文
    点击加入讨论🔥(103) 发布并加入讨论🔥
    本篇精彩评论
    一楼键盘侠无疑
    2018-12-18 09:10
    10
    举报
    看他的demo 我基本看懂了他的基本原理。因为这个东西我写过

    1,输入的数据 他可以定义Trigger去触发一些事件(聚合函数)
    2,这些事件在一定时间条件下回触发聚合函数(他的事件可能是存放在他自己实现的时序数据库中的)



    设计上这应该是最高性能的模式了。
    比较牛逼的是它的吞吐量也很高。我当时写的比较低。里面还有大量的吞吐量优化的技术细节——这些才是最有技术含量的东西,但是文章里没提,代码里我也没找。
    回头有时间研究一下。


    另外,这个不是啥“实时分布式分析系统”,而是“分布式实时统计系统”
    核心问题也不是并发性(虽然他这个模式可以造就最高的并发能力),国内关注啥框架都是只能看懂性能,其解决问题得核心模型根本忽视了。
    2018-12-18 18:00
    5
    举报

    引用来自“luckCheng”的评论

    一楼键盘侠无疑
    我们只适合做应用层:水浅王八多(做底层融资氛围不好)
    2018-12-19 01:57
    4
    举报
    还好我是垃圾大学出来的,利益无关
    2018-12-19 19:52
    3
    举报

    引用来自“这波天秀”的评论

    pgsql好像也是伯克利出的吧,忽然感觉国内的公司和大学都好垃圾,什么都做不出来,但是吹牛逼,指点江山确一个比一个猛

    引用来自“风吹过的绿洲”的评论

    你不是国内的么?你他妈做一个啊!别他妈瞎指点

    引用来自“酸奶瓶盖儿”的评论

    赞,他自己可能忘了自己在这里指点江山的事实。

    引用来自“Outshine”的评论

    吐槽和指点江山你都分不清么?另外,即使自己菜,也应该是有权利吐槽别人也菜的吧!

    引用来自“银杏果果”的评论

    他这种吐槽就是无端指责吧,指责国内都垃圾,做不出好产品,别人理解他身在国内,不仅自己做不出好东西还指责国内,说实在的,就算吐槽,你也得有资格吧,比如自己做个牛逼的东西出来,再指责或者吐槽别人,我想没人会喷他的。我是开源作者,虽然没做出享誉世界的好产品,但我一直在努力,而且已经致力于开源。请各位有时间喷国内,还不如自己努力做一款开源产品出来!

    引用来自“一个大土豆”的评论

    没做出来好产品就低调一点呗,一楼说的没错啊。你要是想反驳要拿出数据来。在这发一堆牢骚,说一堆委屈,等着我们哄你玩呢啊?

    引用来自“银杏果果”的评论

    发牢骚的是你们吧,没事把精力用在吐槽上,有本事你们做个东西出来?我可没说什么委屈,你语文白学了,哪句是委屈?你们要是有本事就自己做出好产品,有什么资格吐槽?当做路人甲、旁观者说三道四,这就是中国的小民思想,有你们,难以发展!

    引用来自“一个大土豆”的评论

    做不出来出来硬喊得被指指点点的很正常。做不出来的人就低头好好干。谁都不知道你当然不会说你。
    怕的就是,本身啥也没做出来,但是今天灭这个,明天骂那个,后天说这个不行的人。
    这个道理是前提,你要觉得分歧太大,就别回复我了,我也不听你的。你也不听我的。一会就吵架了。

    引用来自“银杏果果”的评论

    你真有意思,请问一楼做出什么了?你这么支持?况且我也没骂人,一楼没做出什么就指国内公司和大学都垃圾,这就是你认为该有的好思想?我还做了个开源产品出来,请问你们做出什么了?只会指责别人垃圾?二楼虽然语言过激,但也是有道理的,自己没啥本事说别人公司大学垃圾,跟那些吹牛逼瞎指点的有啥区别?再说我首先说的又不是针对你的言论,你既然不认同还回复什么?

    引用来自“Keygen”的评论

    原来在开源中国里只有做个开源产品,才能发评论啊。。
    真会抓毛病,我错了,不谈了,观念不同而已,但是我认为哪怕美国也不是所有大学都能搞出什么好的学术研究,我国还是有几所大学能在世界排得上号的,我只是不喜欢别人“一竿子打翻一船人”,骂国内公司、大学都是垃圾的。这不是发表评论的问题,而是这种无端指责和谩骂引人愤慨,既然垃圾做不出好产品,那总比那些什么都不做的好!做开源产品只是附带言论,只是讽刺那些空口说白话还带上“垃圾”言论的人,如果损伤到你,我表示道歉!
    2018-12-19 16:39
    3
    举报
    103 评论
    240 收藏
    分享
    返回顶部
    顶部