大数据笔记 October 31, 2018

Flume的简单安装和使用

Words count 15k Reading time 14 mins.

版本说明:

Flume:1.8.0

Java:1.8.0

官网地址:http://flume.apache.org/

在安装Flume之前,确保已经安装过Java JDK 1.8以上。

1.1 下...

Read article

大数据笔记 October 31, 2018

Flume的简单安装和使用

Words count 15k Reading time 14 mins.

版本说明:

Flume:1.8.0

Java:1.8.0

官网地址:http://flume.apache.org/

在安装Flume之前,确保已经安装过Java JDK 1.8以上。

1.1 下载安装包

从Flume官网下载安装包,下载地址:http://mirror.bit.edu.cn/apache/flume/1.8.0/apache-flume-1.8.0-bin.tar.gz

wget http://mirror.bit.edu.cn/apache/flume/1.8.0/apache...
Read article

大数据笔记 October 26, 2018

CDH Manager API 操作Yarn资源池

Words count 38k Reading time 34 mins.

版本说明:CDH 5.11.0

API版本:v16

在使用REST API 访问 CDH Manager 提供的相关接口的时候,需要进行权限认证。认证的类型是 Basic Auth。在java编程中将如下所示生成authorization,然后将该认证信息添加到请求头信息中即可。

private static String generateAuth(String userName, String password) {
    return "Basic " + new...
Read article

大数据笔记 October 13, 2018

Hadoop文件路径支持的通配符

Words count 6.3k Reading time 6 mins.

摘自《Hadoop权威指南》

在单个操作中处理一批文件,这是一个常见要求,举例来说,处理日志的MapReduce作业可能需要分析一个月内包含在大量目录中的日志文件。在一个表达式中使用通配符来匹配多个文件是比较方便的,无需列举每个文件和目录来指定输入,该操作称为“通配符”(globbing)。Spark读取文件时,也可以使用通配符去匹配文件,直接在文件路径里使用通配符表达式即可。Hadoop 为执行统配提供了两个FileSystem方法:

public FileStatus[] globStatus...
Read article

LINUX October 12, 2018

linux常用命令及技巧

Words count 4.5k Reading time 4 mins.

删除某个目录下,所有子目录中包含指定字符的文件或者文件夹

例如删除 包含“index”的文件或目录

find * | grep index* | xargs rm

查看yum已安装的软件模糊查询

yum list | grep 关键字*

建立软链接

ln -s 连接地址 目录名

shell远程登录另一台主机,并执行命令

#!/bin/bash
echo "================集群启动……====================="
echo "启...
Read article

JAVA October 09, 2018

基于Netty的http server实现

Words count 40k Reading time 36 mins.

版本说明:

netty:4.1.17.Final

项目地址:https://github.com/shirukai/netty-http-server-demo.git

最近在看Spark源码的RPC框架实现的代码的时候,接触到Netty。在Spark1.6之后,Spark中RPC通信的框架由Netty逐渐代替了Akka。

为什么Netty可以取代Akka?首先毋庸置疑的是Akka可以做到的,Netty也可以做到,但是Netty可以做到,Akka却无法做到,原因是啥?在软件栈中,Akka相比...

Read article

JAVA September 30, 2018

Java Socket 基础以及NIO Socket

Words count 21k Reading time 19 mins.

网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。

关于Socket的介绍:https://blog.csdn.net/httpdrestart/article/details/80670388

下面记录一下,基于java实现Socket通讯,主要包括Socket服务端和Socket客户端两部分。

2.1 基于TCP的Socket服务端

服务端的实现主要有一下几步:

第一步:创建socket服务,并绑定监听端口

第二步:调用accept()方法开始监听,等待...

Read article

SPARK September 28, 2018

Spark优化

Words count 3k Reading time 3 mins.

官网地址:http://spark.apache.org/docs/latest/monitoring.html

1.1 开启HistoryServer

要想开启spark的HistoryServer只需要修改$SPARK_HOME/conf/spark-defaults.conf文件,将spark.eventLog.enabled设置为true。

首先将spark-defaults.conf.template 重名为 spark-defaults.conf

cp spark-defaults.conf...
Read article

SPARK September 13, 2018

SparkSQL操作hive表

Words count 6.2k Reading time 6 mins.

版本说明:

Hadoop: 2.7.6

Spark: 2.3.0

Hive: 3.0.0

要想SparkSQL能后读到hive的元数据,需要将hive的配置文件hive-site.xml拷贝到Spark的conf目录下。另外,需要将mysql的jar包分别拷到hive的lib目录下和spark的jars目录下。简易下载高版本的jar包,避免不必要的错误。

进入hive命令行。创建一个以”,”作为分隔符的表,表名为hive_people,分别包含name、age、phone字段。建表语句如下所...

Read article

SPARK September 13, 2018

Spark DataFrame列的合并和拆分

Words count 11k Reading time 10 mins.

版本说明:Spark-2.3.0

使用Spark SQL在对数据进行处理的过程中,可能会遇到对一列数据拆分为多列,或者把多列数据合并为一列。这里记录一下目前想到的对DataFrame列数据进行合并和拆分的几种方法。

例如:我们有如下数据,想要将三列数据合并为一列,并以“,”分割

+----+---+-----------+
|name|age|      phone|
+----+---+-----------+
|Ming| 20|15552211521|
|hong| 19|13287994007...
Read article
Load more
0%