首页 文章 精选 留言 我的
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/202065

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

Yelp的实时流技术之四:流处理器PaaStorm

这是关于Yelp的实时流数据基础设施系列文章的第四篇。这个系列会深度讲解我们如何用“确保只有一次”的方式把MySQL数据库中的改动实时地以流的方式传输出去,我们如何自动跟踪表模式变化、如何处理和转换流,以及最终如何把这些数据存储到Redshift或Salesforce之类的数据仓库中去。 在2010年时,Yelp开源了一个名叫MRJob的框架,是用来在AWS基础设施上运行大MapReduce Job的。Yelp的工程师们用MRJob实现了很多功能,从广告推送到翻译,比比皆是。事实证明,MRJob是一个非常强大的工具,可以在我们当时丰富的数据集合上完成计算和聚集操作。 不幸的是,随着使用MRJob的服务数量巨增,运行和调度任务开始变得越来越复杂。由于很多任务都是要依赖上游任务的,所以就要好好地安排整个系统的拓扑。MapReduce任务并不是用于实时处理的,所以任务的拓扑要每天调度一次。更糟的是,万一上游的任务失败了,下游的也会失败,最终会输出错误的结果。因此就要有非常专业的能力来判断应该从哪个任务开始、以什么顺序重新运行,最终输出正确的结果。 爱思考的人就会问了:我们有没有什么办法来更高...

为何HDFS是大数据分析的软肋

分布式文件系统是大型分析非常重要的一环。即使你是在使用Spark,你仍然需要将大量的数据快速的存入内存,所以文件系统一定要可以是高速率的。但是,HDFS并不像它标榜的那样好,它是大数据分析的薄弱环节。 什么是分布式文件系统?普通的文件系统是基于块来存储文件的。查找文件时,要去磁盘中匹配每一个块。一般是有文件分配表或多种FAT的。但是,分布式文件系统的物理存储资源是不一定直接连接在本地节点上的,而是通过计算机网络与节点相连。另外,像RAID或SAN系统,块是会复制的,因此,网络节点丢失并不会造成数据丢失。 HDFS存在的缺陷 HDFS中的文件分配表的核心是NameNode。客户端主要通过NameNode执行数据操作,DataNode会与其他DataNode进行通信并复制数据块以实现冗余,这样单一的DataNode损坏不会导致集群的数据丢失。但是NameNode一旦发生故障,后果会非常严重。虽然NameNode可以故障转移,但是需要花费大量的时间。这也意味着序列中会有更多的等待时间。HDFS的垃圾回收,尤其是Java垃圾回收是需要占用大量的内存,一般是本机有效内存的10倍。 因为HDFS的...

相关文章

发表评论

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。