对于Twitter来说,要弄清楚自己堆积如山的用户数据是一个大问题,以至于它购买了另一家公司,只是为了帮助完成这项工作。
Twitter的成功完全取决于它如何利用用户产生的数据。而且它有很多数据要处理:它托管着2亿多个账户,每天产生2.3亿条Twitter消息。
去年7月,这家社交网络巨头收购了BackType公司,该公司拥有一款名为Storm的软件,可以解析实时数据流,比如数百万条Twitter消息。收购后,Twitter发布源代码对产品本身的商业化没有兴趣。
Storm对于Twitter自身的运营非常有价值,因为它可以在公司服务上实时识别正在出现的新话题。例如,Twitter使用该软件实时计算多个Twitter用户之间的网址共享范围。
Storm的Twitter首席工程师Nathan Marz在12月由大数据软件供应商DataStax在纽约举行的一次会议上解释了这项技术,他说,这样的工作“是一项非常高强度的计算,可能涉及数千个数据库呼叫和数百万条跟踪记录。”
使用一台机器,计算一个网址的覆盖范围可能需要10分钟。但在10台机器上,Marz解释说,它可以在短短几秒钟内执行。对于一家靠针对新兴趋势销售广告赚钱的公司来说,更快的运营速度可能是至关重要的。
像Twitter一样,组织发现他们手头有大量的数据,如果他们能够足够快地组织和分析这些数据,这些数据有可能被用来最大化利润和提高效率。许多新技术(大多是开源的)使这种追求成为可能,这种追求通常被称为大数据。
“这绝对给了我们一个竞争优势如果我们能更好地了解人们关心和更好的使用数据,我们必须创造更多的相关经验,”亚伦Batalion说,首席技术官网上购物服务LivingSocial,使用技术,如Apache Hadoop数据处理平台,收集更多的信息关于他们的用户想要什么。
Batalion说:“当你只开发一次产品,它就能工作的日子已经过去了。”“为了获得成功,你必须采纳想法,测试它们,迭代它们,使用数据和分析来理解哪些可行,哪些不可行。”这就是我们使用大数据基础设施的方式。”
大数据越来越大
去年5月,咨询公司麦肯锡(McKinsey and Company)发布了一份报告,预计未来几年企业将会被大量数据淹没。他们还预测,许多行业——包括医疗保健、公共部门、零售和制造业——将通过分析它们快速增长的海量数据而受益。
收集和分析事务性数据将使组织更深入地了解客户的偏好。它可以用来更好地为产品和服务的创建提供信息,并允许组织更快地解决出现的问题。
该报告总结称:“大数据的使用将成为个体企业竞争和增长的关键基础。”“大数据的使用将为新一轮生产率增长和消费者过剩奠定基础。”
当然,Teradata、IBM和Oracle,以及其他许多公司,在十多年来一直在提供tb级的数据仓库。然而,如今数据往往以更广泛的格式收集和存储,并且可以跨多个服务器并行处理,考虑到所分析的信息量,这是必要的。除了从数据库中精心维护的事务性数据和存储在数据仓库中的精心挑选的数据外,组织还从服务器、机器生成的数据、来自内部和外部社交网络的客户评论和其他松散、非结构化数据来源获得不计其数的日志数据。
“传统数据系统不处理大数据很好,要么因为他们不能处理的各种数据,今天的数据结构化的发展非常迅速,因为它要少得多,因为(这些系统)就不能规模速度必须摄取数据,”Eric Baldeschwieler说雅虎剥离公司Hortonworks首席技术官提供Hadoop分布。
莫纳什研究所的柯特•莫纳什指出,多亏了摩尔定律,这些数据正以指数速度增长。摩尔定律指出,可以放置在处理器晶片上的晶体管数量大约每18个月翻一番。每一代新处理器的性能都是其最新一代处理器的两倍。而且,毫不奇怪,新服务器的能力每18个月就会翻一番,这意味着它们的活动也会相应地产生更大的数据集。
MapR负责营销的副总裁杰克·诺里斯(Jack Norris)说,大数据方法代表着数据处理方式的一个重大转变。以前,经过仔细挑选的数据通过管道通过网络传输到数据仓库,在那里可以对其进行进一步检查。然而,随着数据量的增加,“网络成为了瓶颈,”他说。Hadoop等分布式系统允许在数据驻留的地方进行分析。
而不是创建一个干净的用户数据的子集,在数据仓库中查询与有限数量的预定方式,大数据的软件只是一个组织收集的所有数据生成,并允许管理员和分析师担心如何使用数据。从这个意义上说,它们比传统的数据库和数据仓库更具可伸缩性。
互联网是如何刺激大数据的
在许多方面,谷歌、亚马逊(Amazon)、雅虎(Yahoo)、Facebook和Twitter等大型在线服务提供商一直处于学习如何最大限度利用此类大型数据集的前沿。谷歌和雅虎等公司都参与了Hadoop的开发。Facebook工程师首先开发了Apache Cassandra分布式数据库,也是开源的。
Hadoop从2004年的谷歌开始起步白皮书,描述了谷歌构建的基础设施,它使用一个名为Bigtable的索引系统分析跨许多不同服务器的数据。谷歌保留了Bigtable供内部使用,但是已经创建了Lucene/Solr开源搜索引擎的开发人员Doug Cutting创建了一个开源版本,并以他儿子的玩具大象命名了这项技术。
Hadoop的早期采用者之一是雅虎(Yahoo)。2006年前后,该公司雇佣了切割人员,并开始致力于大量的工程工作来改进这项技术。“雅虎公司有很多有趣的数据,这些数据可以以各种方式相互关联,但它们存在于独立的系统中,”卡廷说,他现在为Hadoop分布提供商Cloudera工作。
雅虎现在是Hadoop最大的用户之一,将Hadoop部署在4万多台服务器上。该公司以多种方式使用这项技术。Hadoop集群保存了大量的日志文件,记录用户点击了哪些故事和章节。广告活动也存储在Hadoop集群中,以及雅虎发布的所有内容和文章的列表。
“Hadoop是一个很棒的工具,可以在将大量数据放入关系数据库之前对其进行组织和压缩,”莫纳什说。该技术特别适合在大型文本集中搜索模式。
另一项始于在线服务提供商的大数据技术是Cassandra数据库。卡桑德拉能够存储200万列在单行中,便于将更多数据附加到现有用户帐户上,而无需事先知道数据应该如何格式化。
使用Cassandra数据库的好处还在于,它可以跨多个服务器分布,这有助于组织轻松地扩展数据库,使其超越单个服务器,甚至一个小服务器集群。
Apache Cassandra项目的主席和DataStax的联合创始人Jonathan Ellis说,Cassandra是由社交网络巨头Facebook开发的,Facebook需要一个庞大的分布式数据库来支持收件箱搜索。DataStax现在为Cassandra提供专业支持。
与雅虎一样,Facebook希望使用谷歌Bigtable架构,它可以提供面向列和行的数据库结构,可以跨大量节点分布。Bigtable的限制是它是面向主节点的设计。整个操作依赖于单个节点来协调跨所有其他节点的读写活动。换句话说,如果头节点坏了,整个系统就没用了。
“这不是最好的设计。你想要的是,如果一台机器坏了,其他的继续工作,”埃利斯说。
所以Ellis和他的同事用亚马逊开发的分布式架构建造了Cassandra,叫做Dynamo亚马逊工程师在2007年的一篇论文中这样描述。亚马逊首先开发了Dynamo来跟踪数百万在线客户在购物车里放了什么东西。
发电机设计不依赖于任何一个主节点。任何节点都可以接受整个系统的数据,并回答查询。数据在多台主机之间复制。
到企业
好消息是,许多最初由这些在线服务提供商开发的工具正越来越多地作为开源软件提供给企业。如今,除了大型在线服务提供商,更广泛的组织正在测试大数据工具。Baldeschwieler指出,金融机构、电信、政府机构、公用事业公司、零售和能源公司都在测试大数据系统。
Hadoop和大数据的实现“有一种不可避免的氛围”,他说。“它适用于各种各样的客户。”
那么,一个组织如何开始使用成堆的机器生成和社交网络数据呢?
也许令人惊讶的是,建立基础设施将不是CIO面临的最大挑战。Cloudera、Hortonworks、MapR等供应商正在将大数据技术商业化,使其更容易部署和管理。
弗雷斯特研究公司(Forrester Research)分析师詹姆斯•科皮鲁斯(James Kobielus)表示,找到合适的人才来分析数据将是最大的障碍。
Kobielus说,各组织将“不得不关注数据科学”。“他们必须聘请统计建模师、文本挖掘专业人士以及专门从事情绪分析的人。”
大数据依赖于可靠的数据建模,Kobielus说。“统计预测模型和测试分析模型将是你做大数据所需要的核心应用,”他说。
许多人预测,大数据将催生一种全新的专业人才——数据科学家。这个人必须对数学和统计学有深刻的理解,并且知道如何使用大数据技术。
这些人可能供不应求。据麦肯锡公司估计,到2012020欧洲杯夺冠热门8年,仅美国就将面临14万到19万具有深度分析技能的人才短缺,以及150万懂得如何利用大数据分析做出有效决策的管理人员和分析师的短缺。
MapR的诺里斯说,尽管存在这些限制,企业仍需要继续前进,以保持竞争力和效率。他以谷歌为例,谷歌在竞争结束数年后才进入互联网搜索领域,却在两年内占据了市场主导地位。
“这主要是由于谷歌的后端架构的优势,”Norris说。大数据“是一种巨大的范式转变,有可能改变行业。”
约押·杰克逊报道企业软件和通用技术的突发新闻IDG新闻服务。在推特上关注约押@Joab_Jackson。约押的电子邮件地址是Joab_Jackson@idg.com