2015-10-15 2015-10-15 开源大数据 在Facebook与Dropbox的实践 邵铮 前Dropbox/Facebook研发经理 Apache Hadoop PMC成员 关于我自己 时间:职业经历 [开源软件] 2005-2008:Senior Software Engineer, Yahoo Web Search [Hadoop] 2008-2014:Senior Engineering Manager, Facebook 2008-2010:Staff Software Engineer, Data Infrastructure [Hive] 2010-2012:Engineering Manager, Data Freeway [Scribe] 2012-2014:Senior Eng Manager, Database Engineering [MySQL, RocksDB] 2014-2015:Engineering Manager, Dropbox [MySQL, Hive, Presto, Scribe, RocksDB] 2015-Now: Senior Engineering Manager, Data Infra, Uber [a lot more] 关于我自己 (2) 2008-2012: Hive创始团队成员 2009-Now: Apache Hive PMC Member Apache Hadoop PMC Member HDFS, Map-Reduce的Committer 2013-2014: Now: 支持我的团队开发和开源RocksDB 关注开源项目的社区、生态、与创业 关于我自己 (3) 开源软件的受益者 开源软件的贡献者 开源软件的信徒 开源软件的作用 对个人: 增强Impact, Influence 促进职业发展,有机会直接成为创始人 对公司: 最大化投资回报率(ROI) 招聘与长期维护 对社会: 提高生产效率,减少重复的轮子 增进优胜劣汰 下面的章节 数据仓库 流数据处理 NoSQL Dropbox的开源大数据策略 展望未来 数据仓库 Hadoop的诞生 2006年,Yahoo 为什么投资开发Hadoop? 与Google的搜索引擎大战 薄弱的基础架构急需更新 Yahoo为什么用开源的方式来开发Hadoop? Doug Cutting 行业第二的最优策略是联合所有人来挑战行业第一 12 Hadoop的先天缺陷 接口:底层接口优先 Map-Reduce功能强大但是不容易使用 Cascading, Pig是为engineer和scientist设计的 性能:为Big Job而优化,忽略了Small Job的overhead Schedule时间, JVM启动时间, 1秒/数秒一次的heartbeat 可扩展性大大优于性能 Facebook的数据处理需求 2007-2008年的状况 原始数据量急速上升 Oracle RAC 超大规模数据仓库的需求 长期可以支持Facebook 2008年数据量的1000x 使用对象是engineer, scientist, 和analyst (both technical and non-technical) 商用数据仓库无法满足如此庞大的scale TeraData, Netezza (IBM), Aster Data (TeraData), GreenPlum (EMC) Hive的诞生 为什么Facebook要开发Hive? CTO Adam D’Angelo非常重视data-based decision 决不能让系统的scalability限制了业务的发展 为什么基于Hadoop开发Hive? 站在巨人的肩膀上,直接解决了scalability的问题 Hadoop的开源社区非常强大 Hive最大的创新在哪里? SQL on Hadoop Hive与Pig之争 Pig Team: Hive Team: 你们的代码性能太差,我们等不及。 “Does it really matter to reinvent the wheel?” 我们早就有计划要做SQL。你们为什么不在Pig基础上做SQL? No! As long as your project wins. “The best way to work in open-source is to compete to death.” – a senior leader in the Hadoop ecosystem Hive发展过程中的重要决定 发行 推广 作为Hadoop的子项目发行 升级为Apache顶级项目 各大会议的演讲 (Hadoop Summit, Hadoop World, Hadoop in China) Papers – 获得学校和研究院的支持 (Berkeley, Yale, OSU, 中科院计算所等等) Meetup,各大公司的合作 (AWS, Netflix, Taobao, etc) 即装即用 内置Derby数据库 邮件列表/JIRA的支持 Hive简要架构 HDFS Map-Reduce Tachyon Tez Spark Hive CLI / Beeline Web UI Browse / Query / DDL Management Hive QL Parser/Planner Optimizer/Execution FileFormat /SerDe RC/ORC/Parqu et Hive Metastore Server Thrift Hive Metastore Derby / MySQL Hadoop数据仓库图解 Business intelligence [Tableau, Microstrategy] Web UI / CLI / Queries [Hive/Spark/Zeppelin] Analytics for users [HighCharts, D3] Data Mart [Vertica, MemSQL] Hadoop Data Lake Database Workflow Management [Oozie, AirFlow, Pinball] Log / Streaming Data [Kafka, Flume] Web/Mobile Servers 新一代开源大数据架构 [开源软件] 商业分析平台 产品分析平台 工程分析平台 公司仪表盘 A/B Test平台 推荐系统 商业智能 BI 多维度分析平台 [Kylin, Presto] 机器学习 [MLLib, H2O, Weka] SQL分析平台 社交、位置分析 [Giraph, Hadoop-GIS] Tableau, Microstrategy 数据超市Data Mart Vertica, [MemSQL] 工作流 数据建模 [AirPal, Zeppelin, HUE] [Airflow, Chronos, Pinball, Oozie] 商业、产品、工程的数据定义,如Revenue, MAU, CTR 元数据 库/表/列/注释/静动态关系/负责人等,存储于[Hive Metastore] 数据湖 [Hive, Spark, Impala, Pig, Cascading, Tez] + [HDFS + YARN/Mesos] 数据导入 数据源 [Gubblin/Camus, Sqoop, etc] Log [Kafka/Flume, ActiveMQ] Database [MySQL, NoSQL etc] Hive使用中出现的三大问题 数据延迟太大 查询延迟太大 流数据处理 交互式查询 Map-Reduce框架影响了性能 新的框架:Spark RDD,Apache Tez
2015-《开源大数据在Facebook与Dropbox的实践-邵铮》
温馨提示:如果当前文档出现乱码或未能正常浏览,请先下载原文档进行浏览。
本文档由 张玉竹 于 2022-04-08 10:49:44上传分享