Hadoop和Spark学习日记1

来源:互联网 发布:打开文件的软件 编辑:程序博客网 时间:2024/06/05 01:06

1. Mahout

解析:

(1)Collaborative Filtering

(2)Classification

(3)Clustering

(4)Dimensionality Reduction

(5)Topic Models


2. k-Means

解析:

bin/mahout kmeans \    -i <input vectors directory> \    -c <input clusters directory> \    -o <output working directory> \    -k <optional number of initial clusters to sample from input vectors> \    -dm <DistanceMeasure> \    -x <maximum number of iterations> \    -cd <optional convergence delta. Default is 0.5> \    -ow <overwrite output directory if present>    -cl <run input vector clustering after computing Canopies>    -xm <execution method: sequential or mapreduce>


3. Mahout math(向量)

解析:

(1)public interface Vector extends Cloneable:The basic interface including numerous convenience functions.

(2)public class DenseVector extends AbstractVector:Implements vector as an array of doubles.

(3)public class SequentialAccessSparseVector extends AbstractVector:Implements vector that only stores non-

zero doubles as a pair of parallel arrays (OrderedIntDoubleMapping), one int[], one double[].

(4)public class RandomAccessSparseVector extends AbstractVector:Implements vector that only stores non-

zero doubles.


4. Mahout math(矩阵)

解析:

(1)public interface Matrix extends Cloneable, VectorIterable:The basic interface including numerous 

convenience functions.

(2)public class DenseMatrix extends AbstractMatrix:Matrix of doubles implemented using a 2-d array.

(3)public class SparseMatrix extends AbstractMatrix:Doubly sparse matrix. Implemented as a Map of 

RandomAccessSparseVector rows.

(4)public class SparseRowMatrix extends AbstractMatrix:sparse matrix with general element values whose 

rows are accessible quickly. Implemented as a row array of either SequentialAccessSparseVectors or 

RandomAccessSparseVectors.

(5)public class SparseColumnMatrix extends AbstractMatrix:sparse matrix with general element values whose 

columns are accessible quickly. Implemented as a column array of SparseVectors.


5. Mahout math(序列化)

解析:Mahout math中的Vector和Matrix没有扩展Writable,但在Mahout核心模块中,VectorWritable和MatrixWritable

分别实现了Vector和Matrix的Writable接口。


6. MaxCompute提供的SDK包

解析:

(1)odps-sdk-core:MaxCompute的基础功能,例如对表,Project的操作,以及Tunnel均在此包中。

(2)odps-sdk-commons:一些Util封装。

(3)odps-sdk-udf:UDF功能的主体接口。

(4)odps-sdk-mapred:MapReduce功能。

(5)odps-sdk-graph:Graph Java SDK。


7. 项目空间(Projects)   

解析:项目空间(Project)是MaxCompute的基本组织单元,它类似于传统数据库的Database或Schema的概念,是

进行多用户隔离和访问控制的主要边界。一个用户可以同时拥有多个项目空间的权限。通过安全授权,可以在一个项

目空间中访问另一个项目空间中的对象,例如:表(Table),资源(Resource),函数(Function),实例

(Instance)。


8. 表(Tables) 

解析:表是MaxCompute的数据存储单元,它在逻辑上也是由行和列组成的二维结构,每行代表一条记录,每列表示

相同数据类型的一个字段,一条记录可以包含一个或多个列,各个列的名称和类型构成这张表的Schema。阿里云数

加平台的数据管理模块可以对MaxCompute表进行新建、收藏、修改数据生命周期管理、修改表结构和数据表/资源/

函数权限管理审批等操作。


9. 资源(Resources)

解析:资源(Resource)是MaxCompute的特有概念。用户如果想使用MaxCompute的自定义函数(UDF)或

MapReduce功能需要依赖资源来完成。MaxCompute资源的类型包括:File类型;Table类型,即MaxCompute中的

表;Jar类型,即编译好的Java Jar包;Archive类型,即通过资源名称中的后缀识别压缩类型,支持的压缩文件类型

包括.zip/.tgz/.tar.gz/.tar/jar。


10. 函数(Functions) 

解析:MaxCompute为用户提供了SQL计算功能,用户可以在MaxCompute SQL中使用系统的内建函数完成一定的计

算和计数功能。但当内建函数无法满足要求时,用户可以使用MaxCompute提供的Java编程接口开发自定义函数

(User Defined Function,简称UDF)。自定义函数(UDF)又可以进一步分为标量值函数(UDF),自定义聚合函

数(UDAF)和自定义表值函数(UDTF)三种。用户在开发完成UDF代码后,需要将代码编译成jar包,并将此jar包

以jar资源的形式上传到MaxCompute,最后在MaxCompute中注册此UDF。在使用UDF时,只需要在SQL中指明UDF

的函数名及输入参数即可,使用方式与MaxCompute提供的内建函数相同。


11. 任务实例(Instances)

解析:在MaxCompute中,部分任务(Task)在执行时会被实例化,以MaxCompute实例(下文简称实例或

Instance)的形式存在。实例会经历运行(Running)及结束(Terminated)两个阶段。运行阶段的状态为

Running(运行中),而结束阶段的状态将会是Success(成功),Failed(失败)或Canceled(被取消)。用户可

以根据运行任务时MaxCompute给出的实例ID查询、改变任务的状态。


12. MaxCompute Studio [3]

解析:MaxCompute Studio是一套基于流行的集成开发平台IntelliJ IDEA的开发插件,让用户在集成开发环境(IDE)

中更方便地进行数据开发。它支持MaxCompute项目浏览、SQL脚本、用户自定义函数(UDF)、MapReduce程序

的开发和智能提示、作业执行状态展示等功能。


13. PyODPS [4][5]

解析:PyODPS支持用Python来对MaxCompute对象进行操作,它提供了DataFrame API来用类似pandas的接口进行

大规模数据分析以及预处理,并且可以用ML模块来执行机器学习算法。 


14. DataX

解析:DataX是一个在异构的数据库/文件系统之间高速交换数据的工具,实现了在任意的数据处理系统

(RDBMS/Hdfs/Local filesystem)之间的数据交换。    


15. Logview

解析:Logview是一个在ODPS Job提交后查看和Debug任务的工具。可看到的内容有:任务的运行状态;任务的运行

结果;任务的细节和每个步骤的进度。在用odpscmd提交任务时,会自动生成Logview的链接。生成的链接中的最后

一部分是token,这是用户打开该页面并查看job信息的钥匙,Logview页面的有效期为一周。


16. Caused by: java.net.NoRouteToHostException: No route to host

解析:

(1)systemctl stop firewalld.service #停止firewall

(2)systemctl disable firewalld.service #禁止firewall开机启动

(3)firewall-cmd --state #查看默认防火墙状态


17. HDFS和ResourceManager的Web接口

解析:

(1)HDFS的Web接口:http://Master:50070

(2)ResourceManager的Web接口:http://Master:8088

说明:Mahout只需要在Hadoop的NameNode节点安装即可,不需要在DataNode节点安装。


参考文献:

[1] Mahout:http://mahout.apache.org/

[2] aliyun-odps-console:https://github.com/aliyun/aliyun-odps-console

[3] 使用MaxCompute Studio开发大数据应用:https://yq.aliyun.com/articles/61561?spm=5176.100239.blogcont61558.30.E3iQQN

[4] PyODPS:ODPS Python SDK and data analysis framework:https://pyodps.readthedocs.io/zh_CN/latest/

[5] aliyun-odps-python-sdk:https://github.com/aliyun/aliyun-odps-python-sdk?spm=5176.100239.blogcont138752.20.1ZKfbD

[6] MaxCompute文章索引:https://yq.aliyun.com/articles/61808?spm=5176.100244.teamhomeleft.203.6ioi12

[7] MaxCompute:https://help.aliyun.com/product/27797.html?spm=5176.750001.2.13.eYqrzo

原创粉丝点击