速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

Twitter 开源了其流处理框架 Summingbird

  • 2014-01-16
  • 本文字数:907 字

    阅读完需:约 3 分钟

Twitter开源了其MapReduce 流处理框架 Summingbird 。Summingbird 是一个大规模数据处理系统,支持开发者以批处理模式(基于 Hadoop/MapReduce)或流处理模式(基于 Storm )或混合模式(即组合前两种模式)以统一的方式执行代码。它基于 Apache 2 许可发布。

现在的软件栈需要手工集成 MapReduce (Pig/Scalding) 和基于流(Storm)的代码,为了处理 5 亿的 Tweet 并能持续成长,Twitter 必须寻找一个替代品。关于创建 Summingbird 的主要动机,Twitter 的工程师提到,在于他们意识到,由于以下原因,在 Storm 上运行一个完全实时的系统非常困难:

  • 要重新计算数月的历史日志,必须与 Hadoop 进行协作,或者是通过某种定制的日志加载机制形成通过 Storm 的流。
  • Storm 专注的是消息传递,随机写入数据库很难维护。

正是这一洞见推动了 Summingbird 这一灵活而通用的方案的出现,它用于解决工程师使用现有方法遇到的实际问题:

  • 两个不同系统中的两组聚合逻辑必须保持同步
  • 在每个系统和客户端之间,键和值必须一致地进行序列化
  • 客户端要负责从两个数据存储读取数据、执行最后的聚合并提供合并结果

Summingbird 也是第一批可以公开获得的 Lambda 架构兼容系统中的一个。类似的项目包括Yahoo 的 Storm-YARN 和一家西班牙创业公司即将发布的 Lambdoop 。Lambdoop 是一个 Java 框架,用于以与 Lambda 架构一致的方式开发大数据应用。Lambda 架构的特色是有一个不可修改、只能追加数据的主数据库,并组合了批处理、服务和加速等不同的层。这些特色支持开发者构建健壮的、可以进行批处理和流处理的大规模数据处理系统,其使用案例涉及从物联网(智能城市、可穿戴设备和制造业)之上的社交媒体平台(比如 Twitter、LinkedIn 等)到金融行业(欺诈检测和推荐)等。

Summingbird 的主要设计者 Oscar Boykin、Sam Ritchie(计算机科学界的传奇人物 Dennis Ritchie 的侄子)和 Ashutosh Singhal 进一步透露了该框架的路线图:

  • 支持 Apache Spark 和列式数据存储格式 Parquet
  • 在 Summingbird 的 Producer 原语之上的高层数学库和机器学习代码
  • 相关开源项目(比如 Algebird 和 Storehaus)更深度的集成

查看英文原文: Twitter Open-Sources its MapReduce Streaming Framework Summingbird

2014-01-16 06:169724
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 135.1 次阅读, 收获喜欢 35 次。

关注

评论

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

leetcode 91. Decode Ways 解码方法(中等)

okokabcd

LeetCode 动态规划 算法与数据结构

Android 11适配指南之系统相机拍照、打开相册

yechaoa

android 适配 6月月更 11.0

K8S学习笔记--安装Docker环境

IT蜗壳-Tango

IT蜗壳 6月月更

Java Core 「15」J.U.C Executor 框架

Samson

学习笔记 Java core 6月月更

Java基础:反射机制详解

百思不得小赵

javase 反射机制 6月月更

flutter系列之:flutter中的Wrap

程序那些事

flutter 程序那些事 6月月更

Linux开发_摄像头编程(实现拍照、网页监控功能)

DS小龙哥

6月月更

【云舟说直播间】-数字安全专场明天下午正式上线

云计算

Angular 服务器端渲染应用一个常见的内存泄漏问题

汪子熙

typescript 前端开发 angular Spartacus 6月月更

什么是元数据

奔向架构师

数据仓库 元数据 6月月更

在线文本过滤小于指定长度工具

入门小站

工具

NodeJS 防止xss攻击

德育处主任

Node 6月月更

quarkus+saas多租户动态数据源切换实现简单完美

weir威尔

SaaS 多租户 Quarkus 动态数据源

元素的常用事件

Jason199

js 事件 6月月更

【愚公系列】2022年06月 Java教学课程 01-Java语言背景介绍

愚公搬代码

6月月更

mysql存储引擎之Myisam和Innodb的区别

乌龟哥哥

6月月更

高效的远程办公经验 | 社区征文

远程办公 6月月更 初夏征文

在线JSON转CSharp(C#)Class工具

入门小站

工具

怎样能在小程序中实现视频通话及互动直播功能?

Geek_99967b

小程序 小程序容器 小程序营销

JSON入门教程

倔强的牛角

json Fastjson 6月月更

实战监听Eureka client的缓存更新

程序员欣宸

Java SpringCloud 6月月更

电商如何借助小程序发力

Geek_99967b

小程序 电商

APM 工具 SkyWalking 是什么

耳东@Erdong

监控 Skywalking 6月月更

JVM调优简要思想及简单案例-为什么需要JVM调优?

zarmnosaj

6月月更

使用Mycat进行MySQL单库分表

迷彩

架构 运维 mycat 分布式数据库中间件 6月月更

为 Serverless Devs 插上 Terraform 的翅膀,解耦代码和基础设施,实现企业级多环境部署(下)

阿里巴巴云原生

阿里云 开源 云原生 Serverless Devs

一篇文章带你对Java对象创建过程解密

派大星

JVM

redis 精讲系列介绍八 - 淘汰策略

Nick

Redis 核心技术与实战 6月月更 redis 底层原理 redis 淘汰策略 redis 精讲

大一学生课设c——服装管理系统

工程师日月

6月月更

一篇文章学会er图绘制

工程师日月

6月月更

linux之git入门命令

入门小站

Linux

Twitter开源了其流处理框架Summingbird_大数据_Michael Hausenblas_InfoQ精选文章