常用Dockerfile
命令汇总。
Docker-1-Docker基础
docker简介
什么是docker
Docker
最初是dotCloud
公司创始人Solomon Hykes
在法国期间发起的一个公司内部项目,它是基于 dotCloud
公司多年云服务技术的一次革新,并于2013年3月
以 Apache 2.0
授权协议开源,主要项目代码在 GitHub
上进行维护。Docker
项目后来还加入了Linux
基金会,并成立推动开放容器联盟(OCI
)。
Docker
使用 Google
公司推出的Go
语言进行开发实现,基于Linux
内核的cgroup
,namespace
,以及OverlayFS
类的Union FS
等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。最初实现是基于LXC
,从 0.7
版本以后开始去除 LXC
,转而使用自行开发的libcontainer
,从 1.11
开始,则进一步演进为使用runC
和containerd
。
Docker
在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。使得 Docker
技术比虚拟机技术更为轻便、快捷。
使用百度网盘不占用额外硬盘空间同步文件
Hadoop-19-Hive4分区表、分桶表与函数
Hadoop-18-Hive3查询操作
基础语法及执行顺序
查询语句语法
1 | SELECT [ALL | DISTINCT] select_expr, select_expr, ... |
书写次序和执行次序
顺序 | 书写次序 | 书写次序说明 | 执行次序 | 执行次序说明 |
---|---|---|---|---|
1 | select |
查询 | from |
先执行表与表直接的关系 |
2 | from |
先执行表与表直接的关系 | on |
|
3 | join on |
join |
||
4 | where |
where |
过滤 | |
5 | group by |
分组 | group by |
分组 |
6 | having |
分组后再过滤 | having |
分组后再过滤 |
7 | distribute by cluster by |
4个by | select |
查询 |
8 | sort by |
distinct |
去重 | |
9 | order by |
distribute by cluster by |
4个by | |
10 | limit |
限制输出的行数 | sort by |
|
11 | union/union all |
合并 | order by |
|
12 | limit |
限制输出的行数 | ||
13 | union /union all |
合并 |
Hadoop-17-Hive2
Hive数据类型
在Hive
种数据类型分为两种:
- 基本数据类型
- 集合数据类型
基本数据类型
Hive数据类型 | Java数据类型 | 长度 | 例子 |
---|---|---|---|
TINYINT |
byte |
1byte 有符号整数 |
20 |
SMALINT |
short |
2byte 有符号整数 |
20 |
INT | int |
4byte 有符号整数 |
20 |
BIGINT | long |
8byte 有符号整数 |
20 |
BOOLEAN |
boolean |
布尔类型,true 或者false |
TRUE FALSE |
FLOAT |
float |
单精度浮点数 | 3.14159 |
DOUBLE | double |
双精度浮点数 | 3.14159 |
STRING | string |
字符系列。可以指定字符集。 可以使用单引号或者双引号。 |
Hello world! |
TIMESTAMP |
时间类型 | ||
BINARY |
字节数组 |
对于
Hive
的String
类型相当于数据库的varchar
类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以存储2GB
的字符数。
Hadoop-16-Hive1
Hadoop-15-HA
HA概述
- 所谓
HA
(High Availablity
),即高可用(7 * 24
小时不中断服务)。 - 实现高可用最关键的策略是消除单点故障。
HA
严格来说应该分成各个组件的HA
机制:HDFS
的HA
和YARN
的HA
。 NameNode
主要在以下两个方面影响HDFS
集群NameNode
机器发生意外,如宕机,集群将无法使用,直到管理员重启。NameNode
机器需要升级,包括软件、硬件升级,此时集群也将无法使用。
HDFS HA
功能通过配置多个NameNodes(Active/Standby)
实现在集群中对NameNode
的热备来解决上述问题。如果出现故障,如机器崩溃或机器需要升级维护,这时可通过此种方式将NameNode
很快的切换到另外一台机器。