这是我在Coursea上学习加州大学圣地亚哥大学系列课程BigData整理的笔记,都是英文很难受,不过讲的是真好,我会保持每天一篇或者两篇的速度整理笔记。Coursea地址欢迎交流。
1、 When to reconsider Hadoop
何时用考虑Hadoop?Hadoop生态系统正在快速增长。这意味着很多有困难或不支持的东西正在成为可能。
Hadoop真的对你的具体问题有意义吗?
首先让我们来看看Hadoop的关键功能。
如果您看到数据量的大幅增长,可能使用Hadoop是有意义的。
当您想要快速访问旧的数据,否则将在磁带驱动器上进行归档存储时,Hadoop可能会提供一个很好的选择。Hadoop友好功能包括在同一数据存储中使用多个应用程序时的场景。大容量或高品质也是Hadoop作为平台选择的重要指标。
Hadoop对数据并行有好处。如您所知,数据并行性是在数据集的元素上的多个节点上同时执行相同的功能。
任务并行性,是在相同或不同的数据集上的多个节点上同时执行许多不同的功能。如果您的问题具有任务级并行性,则必须对从Hadoop生态系统部署的工具进行进一步分析。
这些工具提供的确切好处是什么?
并不是所有的算法都可以在Hadoop中进行扩展,也可以简化为YARN支持的编程模型之一。因此,如果您正在寻求部署高度耦合的数据处理算法,请谨慎行事,在使用Hadoop之前进行彻底的分析。您是否考虑扔掉现有的数据库解决方案并用Hadoop替换它们?再想一想。
Hadoop可能是一个很好的平台,您的各种数据集可以着陆并被处理成与数据库可消化的形式。Hadoop可能也不是您的业务案例的最佳数据存储解决方案。要评估和谨慎。
HTFS以64兆字节或更大的数据块存储数据,因此您可能必须读取整个文件才能选择一个数据条目。这使得执行随机数据访问更难。Hadoop生态系统的发展速度比以往任何时候都快。Hadoop生态系统中的一些移动目标,以及必须通过Hadoop生态系统的新工具来解决的其他需求。主要是先进的分析查询,
延迟敏感的任务和敏感数据的网络安全。在这里,希望先进一步了解这些需求工具所面临的挑战的工具。
综上所述,虽然Hadoop具有许多算法的可扩展性,但它只是一个模型,并没有解决管理和处理大数据的所有问题。虽然可以找到反例,但我们通常可以说,Hadoop框架不是最适合使用小数据集,需要特定硬件类型的高级算法,任务级并行性,基础架构替换或随机数据访问。
2 、Cloud Computing
这个词耳熟能详,云计算是指重要的大数据驱动器。云是大数据时代推出的两个影响之一。我们称之为按需计算,我们表示,它使我们能随时随地计算任何时间。
云计算的主要思想是将计算基础设施转变为商品。因此,应用程序开发人员可以专注于解决应用程序特定的挑战,而不是尝试构建运行的基础架构。那么这是如何发生的呢?我们可以简单地定义云计算服务,作为计算的租赁服务。你租用你想要的,并在使用后返回。
想想这一点,每次你必须移动一件家具,你不会买,甚至建立一辆卡车。你会简单地租。为什么要租一台计算机集群?特别是如果你一直没有使用它。同样,您可以在度假时租一辆汽车或一辆自行车。所以你可以随时随地骑自行车。我们来研究这个问题。当您为自己或客户开发解决方案时,您会考虑什么因素?
- 您应该自行构建硬件和软件资源吗?
- 还是应该从云端租这些资源?
我们先来看看内部的硬件和软件资源建设。如果您选择开发内部功能,则必须雇用人员并购买符合您要求的硬件。这些包括但不限于购买网络硬件,存储磁盘,当其变得过时时升级硬件,等等。不要忘记,保持硬件的房地产成本。
您如何估计硬件需求的大小?你估计五年,还是十年?
在当今快速变化的世界中,越来越难估计未来的需求。获得符合您需求的软件同样具有挑战性。大多数软件安装需要大量的调整和手动干预,需要很多技能。您将需要您的工程师来做到这一点。兼容性问题带来难以预见的问题。大多数软件每天更新一次。您必须确保更新。这确保您避免安全风险并获得最佳效果。
总而言之,建立自己的数据中心或计算机房可能是昂贵的。它可能是耗时的,维护它本身就是一项任务。这需要高额的初始资本投资和您业务中若干部门的有效运作,如果您是创业公司,您可能不会拥有这些投资。大多数人忘记包括处理旧硬件的费用。
云可以为我们做什么?
云的好处与您从租车公司获得的收益相似。你支付你所用的,这意味着低资本投资。你不需要去经销商,做谈判,得到银行贷款,得到保险。这意味着快速实施项目。就像您不需要购买汽车,如果您只需要一辆有限使用的汽车,将部署您的应用程序在地理上更接近您的客户端的服务器可以给您快速的服务和愉快的客户。
对于创业和小企业来说,这样做是很困难的。云可以让您点击一下。
由于云端,您可以坐在咖啡店或家中,开始您的互联网业务,无需巨额的资金投入。而您不需要有五年或十年的资源估算计划。如果您的业务增长速度比您想象的要快,则可以更快地适应您的需求,云可以让您忘记资源管理问题,并以最低的成本让您专注于业务的产品或领域专业知识。就像您可以在租车公司租用卡车或敞篷车一样,您可以在云端构建自己的定制机器。
使用自定义机器,我们的意思是由您的应用程序的正确类型的计算节点组成的商品集群。您不仅可以选择CPU或GPU,还可以从计算,内存和存储选项的整个菜单中选择。这是云端的自助餐。设计机器,以满足您的应用需求,数据大小和分析。
得到你想要的,并支付你使用的东西。与购买和维护所有可能使用的硬件组合进行比较。这是非常昂贵的,不可能在任何时候。由于所有这些优势,今天有许多云服务器供应商。数字在增长。
3、Cloud Service Models
云服务模式:探索选择。
您可以从云提供商获得许多级别的服务。任何云计算讨论都将涉及诸如应用程序即服务,平台即服务以及基础设施即服务等术语。所有这些都是指使用与租赁协议类似的不同级别的参与和服务的云的商业模式。
IaaS,基础设施即服务,可以定义为最低租赁服务。
这就像从一家可以承担硬件的公司租一辆卡车,你做家具的包装,并开车到你的新房子。您作为服务的用户安装和维护操作系统,以及基础架构中的其他应用程序作为服务模型。亚马逊EC2云是这个模型的一个很好的例子。
PaaS,平台即服务,是用户提供整个计算平台的模式。这可能包括您需要的操作系统和编程语言。
它可以扩展到包括您选择的数据库,甚至包括Web服务器。您可以在这些图层之上开发和运行自己的应用软件。Google App引擎和Microsoft Azure是此模型的两个示例。
作为服务模式的软件SaaS是云服务提供商对操作系统和应用软件等硬件和软件环境负责的模式。
这意味着您可以使用应用程序来解决您的问题。Dropbox是一个非常受欢迎的软件即服务平台。
最终,您想要探索哪个服务的决定是几个变量的函数。这取决于您的团队处理计算环境,开发和维护的技能水平。它还取决于您可能需要如何使用该服务。
您需要根据长期目标选择最适合您的正确服务模式。最后,当您部署云服务时,您还必须了解所有安全风险,因为您的数据位于第三方服务。
安全是当今信息数字化日益增长的世界中非常重要的一个方面。
您必须将客户的数据安全性作为首要任务,因此这是您决定的重要标准。必须了解和评估所有安全风险,因为您的数据位于第三方服务器上。我们正在看到其他形式的服务被添加到云服务系列中。基础架构,平台和软件即服务的逻辑正在进一步扩大。
XaaS是一个总括术语,表示对您想要租用的计算资源进行更细粒度的控制。例如,作为服务的存储,作为服务的通信,作为服务的营销等。
作为一个总结,基础设施即服务,平台即服务,应用程序即服务是成功使用的三大类服务模式。
4、Value From Hadoop and Pre-built Hadoop Images
从Hadoop和预制Hadoop产生的价值来自现货产品。
从头开始组装自己的软件堆栈可能会凌乱,为初学者工作很多。设置整个堆栈的任务可以消耗很多项目时间和人力,减少部署时间。获得预制图像类似于购买预组装的家具。您可以获得一个随时可用的软件堆栈,其中包含预安装的操作系统,所需的库和应用软件。
它可以节省您将不同部件放在正确方向上的麻烦。您可以立即开始使用家具。这些预构建的软件映像的打包由使用虚拟化软件的虚拟机启用。没有太多的细节,虚拟化软件的好处之一是它可以在几分钟内运行一个现成的软件堆栈。您的软件堆栈作为一个大文件。虚拟化软件提供了一个可以运行堆栈的平台。
许多公司为他们的Hadoop平台版本提供图像,包括他们选择的一些工具。Hortonworks是为Mac和Windows平台提供预构建的软件堆栈的公司之一。
Cloudera是另一家提供预安装和组装的软件堆栈映像的公司。我也在用很方便
此外,许多用于初学者的在线教程是供应商网站,用于使用这些图像的用户进行自我培训,以及包含的开源工具。一旦您选择供应商,您可以查看他们的网站,了解如何快速入门的教程。网上有很多资源。
您可以通过云部署预构建的图像。这将进一步加快您的应用程序部署过程。总是最好评估哪种方法对您的业务模式和组织最具成本效益。Cloudera,Hortonworks等公司提供了有关如何在Cloud上设置预构建映像的分步指南。
总而言之,使用预构建的软件包具有许多好处,可以显着加速您的大数据项目。
即使小团队也可以快速原型,部署和验证他们的项目想法。开发的分析解决方案可以扩展到更大的数量,并在数小时内提高数据的速度。这些公司还为大型,成熟的应用程序提供企业级解决方案。
另外一个好处是有很多公司提供现成的解决方案。这意味着您可以选择最适合您的项目的选择。选择一个将取决于公司目标的变量数量。这三种模式启发了许多类似的模型,围绕云计算出现。