写点什么

事件流处理:数据仓库的可伸缩替代品

  • 2008-11-09
  • 本文字数:834 字

    阅读完需:约 3 分钟

Dan Pritchett 在博客上提出了一种数据仓库应用的替代方案。虽然厌恶“只能单一位置及单一存储空间上实现的方案”,他也承认有时候必须先聚合数据才能作分析。他所说的正是数据仓库应用的功能——沿着某些变量轴聚合信息并转化数据间的关系。而在 Pritchett 看来,数据仓库应用在使用中有许多缺点。数据仓库应用不仅非常昂贵,“比较小的组织一般难以企及”,而且 ETL(Extract, Transform and Load,提取、转换、装载)软件的工作方式意味着要付出可伸缩性和反应能力的代价:

首先,ETL 给生产数据库增加了明显的负担。如果你的业务有空窗期可以做 ETL,那是最好的;如果没有,管理可伸缩性就是很大的挑战。第二,数据仓库里的数据新鲜度一般滞后 24 小时或更长,随着业务增长,滞后时间会越来越长。

Dan Pritchett 相信有一种方案更便宜,也更可伸缩:用 ESP( Event Stream Processor )处理事件流。

ESP 用类似 SQL 的语言处理各种事件流。与数据库和数据仓库通过 SQL 分析数据表类似,ESP 用它们的查询语言分析事件流。要想理解 ESP,可以把事件类比成数据库表中的行,而事件的属性则对应数据库表的列。每一种事件类型就等于是一张表。 […]

[ESP 分析] 数据的变化,而且就在变化发生的当时分析。我们不再进行批量的 ETL,而是把业务事件变成一连串的数据状态变化。这就创造出一种更易于管理的生产系统的伸缩模型。

[…]

ESP 可以做水平伸缩,因此可以达至一种更具成本效益的业务方案。而且由于 ESP 执行分析是实时的,因此得到的业务指标更加应时,并且不受业务增长的影响。

Dan 也特别指出这种方法的弱点,就是不能进行历史性的分析,不能从当前以外的角度去观察业务活动。Pritchett 提出用一种捕捉并重演事务的框架去克服此弱点,不过该方案相当昂贵。Tahir Akhtar 在帖子的留言中提出另一种弥补方法:用 ESP 替代 ETL,但在享用 ESP 的可伸缩性和反应能力优势的同时,继续使用数据仓库应用以保留历史分析能力。

查看英文原文: Event Stream Processing: Scalable Alternative to Data Warehouses?

2008-11-09 19:321486
用户头像

发布了 225 篇内容, 共 72.2 次阅读, 收获喜欢 52 次。

关注

评论

发布
暂无评论
发现更多内容

第1周作业提交

cqyanbo

Go error 的四种处理方式

Rayjun

Go Error

架构实战营模块九作业

Geek_d18264

架构实战营

架构实战营,第一周作业

Jude

架构实战营

Prometheus Exporter (十七)JMX Exporter

耳东@Erdong

JMX Prometheus 28天写作 exporter 12月日更

华为中国大学生ICT大赛2021实践赛网络赛道晋级赛试题解析(答案版)

小韩

华为 网络 ICT

JavaScript 数据结构之 Set

devpoint

set ES6 内容合集 签约计划第二季

左耳听风,右手敲码

homber

成长 感悟 竞争力 签约计划第二季

架构实战营毕业总结

Geek_d18264

架构实战营

Go并不需要Java风格的GC

Robert Lu

Go 垃圾回收

JavaScript 数据结构之 Number

devpoint

ES6 math 内容合集 签约计划第二季

音视频实战(2)- 如何在网页端给视频添加硬水印

liuzhen007

签约计划第二季

斯诺克

Tiger

28天写作

什么是QA

homber

QA 测试开发 职场新人 签约计划第二季

关于研发效能推进提升的一点感受

homber

DevOps 研发效能 签约计划第二季

Camtasia添加光标效果教程

淋雨

Camtasia

实用机器学习笔记四:数据标注

打工人!

机器学习 学习笔记 12月日更 实用机器学习

netty系列之:手持framecodec神器,创建多路复用http2客户端

程序那些事

Netty HTTP 程序那些事 http2 12月日更

音视频理论(2)- 音视频传输协议之 RTMP

liuzhen007

签约计划第二季

JavaScript 数据结构之 Object

devpoint

ES6 Object 内容合集 签约计划第二季

如何通过Kubernetes事件来报告错误

Robert Lu

#Kubernetes#

idea-如何解决代码合并冲突?

Java个体户

IDEA

从0到1普及前端知识 | 内容合集

你好bk

内容合集 签约计划第二季

音视频实战(3)- Mac 系统 MediaInfo 多实例媒体信息分析

liuzhen007

签约计划第二季

http协议

en

HTTP

勿拖延

Nydia

JavaScript数据结构实用集

devpoint

JavaScript 数据结构 内容合集 签约计划第二季

4.《重学 JAVA》—基础语法

杨鹏Geek

Java 25 周年 28天写作 12月日更

从一个乙方视角聊聊敏捷项目

Bruce Talk

Scrum 敏捷 随笔 Agile

搭建基本Jest测试框架,解读覆盖率实现原理

梁龙先森

签约计划第二季

JavaScript 数据结构之 Map

devpoint

set map ES6 内容合集 签约计划第二季

事件流处理:数据仓库的可伸缩替代品_架构_Sadek Drobi_InfoQ精选文章