作者 Ron Bodkin 译者 张龙
来自LinkedIn的Jay Kreps在近日举办的Hadoop峰会上详细介绍了LinkedIn对数据的处理方式。Kreps介绍了LinkedIn每天是如何处理1.2千亿个关系并通过高容量、低延迟的站点服务来混合大量的数据计算的。
LinkedIn的很多重要数据都是离线的,移动起来相当慢。因此,他们将每天对Hadoop的批处理作为计算的重要组成部分。比如说,他们采用这种方式对其“People You May Know”产品数据进行预计算,这么做每天会在mapreduce管道(拥有82个Hadoop job)中产生1.2千亿个关系,需要16TB的临时数据。这个job使用了一个统计模型来预测两个人认识的概率。有趣的是,他们使用布隆过滤器(bloom filters)来加速巨大的连接关系,这提升了10倍的性能。
LinkedIn有两个工程师从事这个管道开发,他们每周可以测试5个新算法。为了实现这种变化率,他们使用A/B测试来比较新旧方法,使用“fly by instruments”方法来优化结果。为了提升性能,他们还需要操纵大范围数据:使用大范围集群处理。为了实现这个目标,他们从客户化的图处理代码迁移到了Hadoop mapreduce代码上:这需要一些周全的设计,因为很多图算法无法直接转换为mapreduce。
LinkedIn对开源项目投入巨大,希望构建出一流的组件并号召社区参与进来。其中两个开源项目构成了其数据基础设施的中心。Azkaban是个面向Hadoop的开源工作流系统,提供了类似于cron的调度,类似于make的依赖分析,还包含了重启。它用于控制ETL job,该job可以将数据库与事件日志推送到边缘服务器存储(Voldemort)中。
Voldemort是LinkedIn的NoSQL 键/值存储引擎。它每天都会向其站点推送出几十亿的边缘概率关系图,用于渲染网页时查询所用。这种数据是只读的:它是通过这些集群job计算出来的,但之后会实时通过搜索进行过滤,这么做会限定到用户感兴趣的某些公司,或是排除掉用户已经表明不认识的那些人。这个方法来源于使用数据库解决这个问题时所遇到的障碍,后者需要分片并迁移至完全依靠手工移动数据的系统。Voldemort完全是分布式且去中心化的,支持分区与容错。
LinkedIn通过同时获取Hadoop与Voldemort大范围的结果来更新服务器,预热缓存,然后分别在每个服务器上针对新一天的数据建立原子转换。他们会将前一天的数据保持在服务器上,这样一旦新一天的数据集出现了问题就可以立刻恢复过来。LinkedIn在其Hadoop管道上构建了一个索引结构:这会产生几个TB的查找结构,该结构完美地使用了散列(每个键只需要2.5个位)。这种处理权衡了集群计算资源以实现更快的服务器响应;LinkedIn大约需要90分钟时间在45个结点集群上构建900GB的数据。他们使用Hadoop来处理大块的批数据,这样其Hadoop集群就需要周期性地进行升级,但Voldemort则永远不需要。
感兴趣的读者可以查看演讲的幻灯片以进一步了解详情。
查看英文原文:LinkedIn's Data Infrastructure
from : http://www.infoq.com/cn/news/2010/08/linkedin-data-infrastructure
分享到:
相关推荐
在数据基础设施解决方案(LinkedIn Data Infrastructure Solutions)中,LinkedIn构建了一套复杂的数据处理框架,以满足这些需求。核心在于其“数据总线”(Data Bus)系统,该系统负责确保数据的一致性和实时性。...
LinkedIn 的后端基础设施能够处理大量的数据,包括日志数据、用户行为数据和实验数据等。这种基础设施使得数据处理和分析更加高效、可靠和安全。 技术挑战 在大数据驱动的过程中,LinkedIn 遇到了许多技术挑战,...
LinkedIn 推荐系统存储基础设施...LinkedIn 的推荐系统存储基础设施是基于分布式键值存储系统 Voldemort 和 Hadoop 的大规模数据处理技术的。它具有高性能、高可用性和高扩展性,能够满足 LinkedIn 大规模用户的需求。
数据处理架构:LinkedIn的数据基础设施解决方案 在探讨数据处理架构时,我们聚焦于LinkedIn这一全球领先的职场社交平台,其数据处理架构不仅支持了庞大的用户群,还确保了数据的实时性、一致性和可用性。LinkedIn的...
LinkedIn的基础设施选择了 Solaris操作系统,既支持x86平台也支持Sparc架构。应用服务器采用了轻量级的Tomcat和Jetty,以确保高效且灵活的web服务。 **数据库** LinkedIn的数据库系统由Oracle和MySQL共同支撑,分别...
在这篇文章中,我们将对 LinkedIn 的存储基础设施进行深入探讨,了解 LinkedIn 的推荐系统是如何工作的,以及其存储基础设施的架构和实现细节。 首先,让我们了解一下 LinkedIn 的高层次 Web 架构。LinkedIn 的 Web...
为了解决这个挑战,LinkedIn 采用了分布式的后端基础设施,能够处理大量的数据并提供实时的监控和分析能力。 大数据分析与实时监控在 LinkedIn 中扮演着非常重要的角色,帮助公司更好地理解用户行为、保持竞争优势...
据TalkingData University的访谈,大部分企业在数据基础设施和数据源的投资远超于专业数据人才培养,而行业共识是,企业在数据人才上的投入应与基础设施等其他投入相当,甚至更多。 此外,CSDN的报告指出,人才短缺...
3. 数据基础设施建设:构建强大的数据基础设施是数据团队的基础,包括数据仓库、大数据平台、数据湖等,以及相应的数据治理策略,确保数据的质量和安全。 4. 数据文化与组织变革:数据驱动的企业文化对于数据团队的...
报告提出了组件化和标准化的理念,包括共享基础设施、下沉公共服务、隔离业务模块等,这些措施有助于降低项目的复杂度,提升代码的复用率,并且有助于线上性能问题和Crash率的降低。 在性能监控体系方面,LinkedIn...
张溪梦在演讲中提到了四个关键的现代化进程,即生态化、产品化、规模化和基础设施化,这些都是大数据分析革新的必经之路。 首先,张溪梦提出了“分析”的概念,指出分析是一种可以借鉴过去,了解当前,预测未来,...
数据运营DataOps,全称Data Operations,是一种新兴的、以数据为...结合云技术,DataOps能够帮助企业构建高效、可靠且具有弹性的数据基础设施,从而推动创新,优化业务流程,并在竞争激烈的市场环境中获得持久的优势。
3. 优化云计算服务成本和控制:苹果对于第三方云服务提供商因扩大数据中心而提出增加费用感到不满,其希望自主建设基础设施以实现更可控的成本和服务质量。 4. 与Microsoft的互动:微软员工的建议导致苹果公司需要...
x.509是由国际电信联盟(ITU-T)制定的一套标准,定义了公钥基础设施(PKI)中的数字证书格式。这种证书包含了一个主体的公开密钥以及与该密钥相关的身份信息,如组织名称、地理位置等。通过x.509证书,接收者可以...
内容简介 · · · · · · 书中包含以下内容: ...在此之前他曾是软件工程师和企业家,在 Linkedin 和 Rapportive 工作过,从事大规模数据基础设施相关的工作。Martin 经常在大会做演讲,写博客,也是开源贡献者。
数据工程师则专注于数据基础设施的建设和维护,确保数据的可用性与质量;数据分析师则将数据转化为可操作的见解,支持业务决策。 报告还涵盖了数据团队的组织架构,探讨了集中式、分散式和混合式等不同模式的优缺点...
HDFS是大数据处理的基础设施,广泛应用于数据仓库、数据挖掘和机器学习等领域。 在大数据处理中,Kafka、Flume和HDFS是三个紧密相关的组件。Kafka作为消息队列,负责接收和处理数据流;Flume作为数据采集工具,负责...
Kafka是一个消息系统,原本开发自LinkedIn,用作LinkedIn的活动流(activity ...近年来,活动和运营数据处理已经成为了网站软件产品特性中一个至关重要的组成部分,这就需要一套稍微更加复杂的基础设施对其提供支持。
LinkedIn商业分析部资深主管张溪梦带来的专题名称为“如何利用‘数据科学与大分析’催生产业革命”,期间他为我们分享了大数据分析革新路程的四个现代化:基础设施化、规模化、产品化和生态化。