大数据道场(HDP SandBox) 初探

简介: 版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。 https://blog.csdn.net/wireless_com/article/details/52684463

这里的大数据道场是以HDP sandbox 为基础的,安装好了virtual box,导入了sandbox镜像之后,启动虚拟机,来看看我们的大数据道场吧。

访问方式

通过SSH的终端访问是不二之选

ssh root@127.0.0.1 -p 2222

输入用户名/密码后就可以进入我们的道场主机了,命令交互与在一台ubantu linux 主机上没什么不同。

如果不喜欢ssh,或者是windows的用户,也可以使用WEB Shell。 在浏览器中输入:

http://127.0.0.1:4200

如下图所示,与SSH 没有什么大的区别。

web shell

当然了,还可以从VM 的终端登录,按fn + alt +f5进入即可。

文件传输

在本机和sandbox 之间主要是通过SCP进行的。

本地文件复制到sandbox 中:

scp -P 2222 ~/Downloads/x.y.z root@127.0.0.1:/root

sandbox 文件复制到本地:

scp -P 2222 root@127.0.0.1:/sandbox-dir-path/xyz  /localpath

还可以通过虚拟机的共享目录实现,甚至在sandbox 上搭一个ftp server。

道场中的基础设施

Hadoop 发布版中比较有名的是CDH和HDP,两者的主要区别是CDH 通过Cloudera和hue 来管理集群及节点中的组件,而HDP是通过Ambri 完成的。

一般的,通过访问 http://127.0.0.1:8080 就可以通过Ambri 来浏览和管理。但是为了管理服务,需要以管理员的身份登录ambri。Sandbox 2.4 中需要通过执行脚本来重置ambri的管理员密码。


Abel-Mac-Pro:~ abel$ ssh root@127.0.0.1 -p 2222   

root@127.0.0.1's password: 

Last login: Mon Sep 26 01:47:03 2016   

[root@sandbox ~]# ambari-admin-password-reset  

Please set the password for admin:  
Please retype the password for admin: 

The admin password has been set.
Restarting ambari-server to make the password change effective...

Using python  /usr/bin/python2  
Restarting ambari-server   
Using python  /usr/bin/python2  
Stopping ambari-server   
Ambari Server stopped   
Using python  /usr/bin/python2  
Starting ambari-server   
Ambari Server running with administrator privileges.   
Organizing resource files at /var/lib/ambari-server/resources...   
Server PID at: /var/run/ambari-server/ambari-server.pid   
Server out at: /var/log/ambari-server/ambari-server.out   
Server log at: /var/log/ambari-server/ambari-server.log   
Waiting for server start....................   
Ambari Server 'start' completed successfully.   
[root@sandbox ~]# 

现在,就可以用ambri的admin帐号登录,看看道场中的基础设施了。
ambri-admin

HDFS

HDFS 是Hadoop集群中数据存储的头等公民。数据在集群数据节点中自动复制。

MapReduce2

众所周知,mapreduce分为两个阶段,Map阶段:首先将输入数据进行分片,然后对每一片数据执行Mapper程序,计算出每个词的个数,之后对计算结果进行分组,每一组由一个Reducer程序进行处理,到此Map阶段完成。
Reduce阶段:每个Reduce程序从Map的结果中拉取自己要处理的分组(叫做Shuffling过程),进行汇总和排序(桶排序),对排序后的结果运行Reducer程序,最后所有的Reducer结果进行规约写入HDFS。
MapReduce2 是运行在YARN上的。

YARN

YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度。YARN的基本思想是将JobTracker的两个主要功能(资源管理和作业调度/监控)分离,主要方法是创建一个全局的ResourceManager(RM)和若干个针对应用程序的ApplicationMaster(AM)。

Tez

Tez是Apache最新的支持DAG作业的开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能。Tez并不直接面向最终用户——事实上它允许开发者为最终用户构建性能更快、扩展性更好的应用程序。Tez产生的主要原因是绕开MapReduce所施加的限制。

Hive

Hive以类SQL方式简单而又强大地从HDFS中查询数据. 在用Java写了10行代码的MapReduce地方,在Hive中, 只需要一条 SQL 查询语句.

HBase

HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”,是Google Bigtable的开源实现,利用Hadoop HDFS作为其文件存储系统。

Pig

Pig是一种数据流语言和运行环境,用于检索非常大的数据集。为大型数据集的处理提供了一个更高层次的抽象。Pig包括两部分:一是用于描述数据流的语言,称为Pig Latin;二是用于运行Pig Latin程序的执行环境。Pig 适合于使用 Hadoop 和 MapReduce 平台来查询大型半结构化数据集。通过允许对分布式数据集进行类似 SQL 的查询,Pig 可以简化 Hadoop 的使用。

Sqoop

Sqoop是一个从结构化数据库传说大量数据到HDFS. 使用它,既可以从一个外部的关系型数据库将数据导入到HDFS, Hive, 或者 HBase, 也可以Hadoop 集群导出到一个关系型数据库或者数据仓库.

Oozie

Oozie是一种Java Web应用程序,它运行在Java servlet容器——即Tomcat——中,并使用数据库来存储工作流定义和当前运行的工作流实例,包括实例的状态和变量。Oozie工作流是放置在控制依赖DAG(有向无环图 Direct Acyclic Graph)中的一组动作(例如,Hadoop的Map/Reduce作业、Pig作业等),其中指定了动作执行的顺序。

Zookeeper

Zookeeper 分布式服务框架主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。

Falcon

Falcon 是一个面向Hadoop的、新的数据处理和管理平台,设计用于数据移动、数据管道协调、生命周期管理和数据发现。它使终端用户可以快速地将他们的数据及其相关的处理和管理任务“上载(onboard)”到Hadoop集群,可以减少应用程序开发和管理人员编写和管理复杂数据管理和处理应用程序的痛苦。

Storm

Storm是一个分布式高容错的实时计算系统。Storm令持续不断的流计算变得容易,弥补了Hadoop批处理所不能满足的实时要求。Storm经常用于在实时分析、在线机器学习、持续计算、分布式远程调用和ETL等领域。

Flume

当查看生成的摄取日志的时候,可以使用Apache Flume; 它是稳定且高可用的,提供了一个简单,灵活和基于流数据的可感知编程模型。基本上,仅通过配置管理不需要写一行代码就可以陪着一个数据流水线。

Ambri Metrics

Ambari Metrics System 简称为 AMS,它主要为系统管理员提供了集群性能的监察功能。Metrics 一般分为 Cluster、Host 以及 Service 三个层级。Cluster 和 Host 级主要负责监察集群机器相关的性能,而 Service 级别则负责 Host Component 的性能。

Atlas

Atlas 是一个可伸缩和可扩展的核心功能治理服务。企业可以利用它高效的管理 Hadoop 以及整个企业数据生态的集成。核心功能包括:数据分类、集中审计、搜索、安全和策略引擎。

Kafka

Apache Kafka 是一个由Linkedin开发的订阅-发布消息的分布式应用。是一个持久化消息的高吞吐量系统 , 支持队列和话题语意, 使用 ZooKeeper形成集群节点。 详情参见kafka.apache.org.

Knox

knox是一个访问hadoop集群的restapi网关,它为所有rest访问提供了一个简单的访问接口点,能完成3A认证(Authentication,Authorization,Auditing)和SSO(单点登录)等。

Ranger

Ranger是一个hadoop集群权限框架,提供操作、监控、管理复杂的数据权限,它提供一个集中的管理机制,管理基于yarn的hadoop生态圈的所有数据权限。

Slider

Slider 是一个 Yarn 应用,它可以用来在 Yarn 上部署并监控分布式应用。Slider 可以在应用运行期随意扩展或者收缩应用。Slider工具是一个Java的命令行应用,它会把信息持久化为JSON文档并存储到HDFS。当集群启动后,我们可以使用命令扩展或者收缩集群。集群也可以被停止或者重启。

Spark

Spark是一个围绕速度、易用性和复杂分析构建的大数据处理框架。Spark为我们提供了一个全面、统一的框架用于管理各种有着不同性质(文本数据、图表数据等)的数据集和数据源(批量数据或实时的流数据)的大数据处理的需求。Spark则允许程序开发者使用有向无环图(DAG)开发复杂的多步数据管道。而且还支持跨有向无环图的内存数据共享,以便不同的作业可以共同处理同一个数据。

Spark运行在现有的Hadoop分布式文件系统基础之上(HDFS)提供额外的增强功能。它支持将Spark应用部署到现存的Hadoop v1集群(with SIMR – Spark-Inside-MapReduce)或Hadoop v2 YARN集群甚至是Apache Mesos之中。

Zeppelin Notebook

Zeppelin提供了web版的类似ipython的notebook,用于做数据分析和可视化。背后可以接入不同的数据处理引擎,包括spark, hive, tajo等,原生支持scala, java, shell, markdown等。Zeppelin 提供了内置的 Apache Spark 集成。Zeppelin的Spark集成提供了:

  • 自动引入SparkContext 和 SQLContext
  • 从本地文件系统或maven库载入运行时依赖的jar包。更多关于依赖载入器
  • 可取消job 和 展示job进度

HDP Sandbox 默认为我们提供了如此多的组件服务,几乎涵盖了hadoop 生态系统,完了么?没有,还可以用管理员的身份来增加/启动/关闭 服务,例如Accumulo,Mahout,NiFi,Ranger KMS,SmartSense等,甚至可以自定义服务的。

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
分布式计算 大数据 Apache
|
2月前
|
分布式计算 DataWorks IDE
MaxCompute数据问题之忽略脏数据如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
47 0
|
2月前
|
SQL 存储 分布式计算
MaxCompute问题之下载数据如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
38 0
|
2月前
|
分布式计算 关系型数据库 MySQL
MaxCompute问题之数据归属分区如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
36 0
|
3月前
|
机器学习/深度学习 存储 分布式计算
机器学习PAI关于maxcompute上用protobuf 处理数据,比较方便的方式
机器学习PAI关于maxcompute上用protobuf 处理数据,比较方便的方式
|
2月前
|
分布式计算 DataWorks BI
MaxCompute数据问题之运行报错如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
38 1
|
4月前
|
存储 SQL 大数据
dataCompare大数据对比之异源数据对比
dataCompare大数据对比之异源数据对比
110 0
|
2月前
|
分布式计算 关系型数据库 数据库连接
MaxCompute数据问题之数据迁移如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
35 0
|
2月前
|
分布式计算 Cloud Native MaxCompute
MaxCompute数据问题之没有访问权限如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
38 0
|
11天前
|
数据采集 搜索推荐 大数据
大数据中的人为数据
【4月更文挑战第11天】人为数据,源于人类活动,如在线行为和社交互动,是大数据的关键部分,用于理解人类行为、预测趋势和策略制定。数据具多样性、实时性和动态性,广泛应用于市场营销和社交媒体分析。然而,数据真实性、用户隐私和处理复杂性构成挑战。解决策略包括数据质量控制、采用先进技术、强化数据安全和培养专业人才,以充分发挥其潜力。
14 3

热门文章

最新文章