- 博客(31)
- 收藏
- 关注
原创 Flume监控之Ganglia部署与使用
部署环境 CentOS 7.6 Flume 1.6.0-cdh5.15.1前置准备 1)安装httpd服务与php[js@bigdata001 flume]$ sudo yum -y install httpd php 2)安装其他依赖[js@bigdata001 flume]$ sudo yum -y install ...
2019-05-29 16:47:47
433
原创 Spark:理解闭包
什么是闭包? 闭包就是一个函数,这个函数可能会访问到函数外部的变量。 简单闭包(就是函数):def addOne = (i:Int) => 1 + i 访问外部变量的闭包,如 :var factor = 1def addOne = (i:Int) => factor + i 以上函数应用到函数外...
2019-05-28 11:32:20
384
原创 Redis 3.2.13 部署
目录部署环境前置准备开始部署 1、解压安装包 2、进入安装目录 ,并执行make命令 3、提示以下内容,则make完成: 4、执行make install 5、安装完成, 默认安装目录 : usr/local/bin 6、启动服务 7、启动客户端 8、关闭客户端 REmote ...
2019-05-22 10:49:27
1801
原创 Scala :类型、控制结构和函数
目录标识符声明值和变量常用类型:Array伴生类对象中的两个方法option类型Symbol类型if/eleswhile循环for循环函数的定义过程(方法)懒值异常标识符 首字符为字母,后续字符任意字母和数字,美元符号,可后接下划线_ 首字符为操作符,后续字符为任意操作符 用反引号`....`包括的任意字符串,...
2019-05-05 09:56:56
494
原创 使用ScalikeJDBC操作MySQL
目录构建工程连接池Transaction1) readOnly2)autoCommit3)localTx查询API更新API(增删改)执行API(增删改)批处理API(batch) ScalikeJDBC是为Scala开发人员所打造的一款基于访问数据库的工具。提供易于使用且非常灵活的API。 ScalikeJDBC是一个实用且适合生...
2019-04-25 17:29:08
824
原创 Scala Loan Pattern 借贷模式
生产中会遇到需要 密集资源型对象, 即资源集中在一个对象中,那么用户代码就不能一直保持着获得的所有资源,而应该在需要时就向资源供给方进行借贷,使用完毕之后立即归还。 对于具有GC的程序设计语言,它仅仅实现了内存资源的自动回收,而对于诸如文件IO,数据库连接,Socket连接等资源需要程序员自行实现资源的回收。 这样就很容易出现一些 人为的错误 (human...
2019-04-25 15:00:15
213
原创 Hadoop 源码编译(CDH版)
本文使用的hadoop版本为 hadoop-2.6.0-cdh5.7.0为什么要源码编译? 直接使用的hadoop-2.6.0-cdh5.7.0.tar.gz包部署的hadoop集群对于许多的压缩格式都是不支持的(如下图),生产上是不可接受的,故需要重新编译hadoop使之支持压缩。源码包下载地址 : http://archive.cloudera.com/cdh5/cd...
2019-04-17 16:59:08
1174
原创 Hadoop HA原理及架构
什么是HA?1)所谓HA(high available),即高可用(7*24小时不中断服务)。2)实现高可用最关键的策略是消除单点故障。Hadoop HA严格来说应该分成各个组件的HA机制:HDFS的HA和YARN的HA。HDFS HA官网:http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.15.1/hadoop-p...
2019-04-11 11:26:12
757
原创 大数据压缩与存储
压缩为什么要压缩? 1)减少磁盘的存储空间 2)减少网络和磁盘的IO 3)加快数据在磁盘和网络中的传输速度,从而提高系统的处理速度压缩的局限性每次使用数据时需要先将数据解压,加重CPU负荷。压缩格式 压缩格式 工具 算法 文件扩展名 ...
2019-04-09 15:26:27
1952
原创 HIve:元数据表结构
Hive中的元数据信息默认是存储在derby中的,但是derby是单session的,一般都会修改成mysql。在mysql中的metastore库中存放着hive所有元数据信息的表(如下图)。本文将分别介绍他们各自的用途。VERSION表存储Hive版本的元数据表,如果该表出现问题,根本进入不了Hive-Cli,会报错”Table ‘hive.version’ doesn’t e...
2019-04-08 17:20:45
298
原创 Hive:分区&分桶
分区表 在Hive查询中一般会扫描整个表内容,当数据量比较大的时候,机器的负担是很重的,而且有时候只需要扫描表中关心的一部分数据,因此就引入了分区概念。 分区表实际上就是对应一个HDFS上独立的文件夹,该文件夹下是该分区所有的数据文件。Hive中的分区就是分目录,把一个大的数据集根据业务需要分割成小的数据集。在查询时通过WHERE子句中的表达式选择查询所需要的指...
2019-04-08 15:55:01
579
1
原创 HIve:DDL&DML
官网:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL基本数据类型 Hive数据类型(红色为常用) 长度 说明 TINYINT 1byte有符号整数 用INT替代 SMALINT ...
2019-04-06 19:10:15
186
原创 joda-time详解
在工作中经常会碰到需要对时间进行处理的情况。SimpleDateFormat被大量使用于处理时间格式化过程,由于时间转换过程遇到的多线程并发的使用场景并不多见,所以很难发现在该类的隐患,事实上,该类并非是线程安全的,在多线程使用format()和parse()方法时可能会遇到问题。 也就是说,使用同一个SimpleDateFormat实例,开若干线程做日期转换操作,得...
2019-04-02 10:23:28
3113
原创 Git常用命令总结
命令 说明 git clone <url> 克隆远程仓库 git init 初始化本地版本库 git status 查看状态 git diff 查看变更内容 git add . 工作区所有内容添加到暂存区 ...
2019-03-21 14:50:27
112
原创 Hive概述
产生背景 1、MR编程不便性 2、传统的RDBMS人员的需求Hive是什么? Hive:由Facebook开源用于解决海量结构化日志的数据统计。 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。本质是:将HQL转化成MapReduce程序。 Hive处理的数据存储在H...
2019-03-20 14:04:07
223
原创 Hadoop系列深入优化
1、 操作系统调优 1)增大打开文件数据和网络连接上限,调整内核参数net.core.somaxconn,提高读写速度和网络带宽使用率 2)适当调整epoll的文件描述符上限,提高Hadoop RPC并发 3)关闭swap。如果进程内存不足,系统会将内存中的部分数据暂时写入磁盘,当需要时再将磁盘上的数据动态换置到内存中,这样会降低进程执行效率...
2019-03-18 16:51:20
255
原创 Yarn 调优 (内存、CPU)
在YARN集群中,平衡内存、CPU、磁盘的资源的很重要的。根据经验,每两个container使用一块磁盘以及一个CPU核的时候可以使集群的资源得到一个比较好的利用。内存配置YARN所有可用的内存资源应该要减去系统预留内存、各个进程内存的经验值。即:总共保留的内存=系统内存+各个进程内存的经验值。Hbase 、系统需要的内存(一般留总内存的20%左右)参考:每台...
2019-03-18 16:44:35
1332
原创 Yarn 详解
Yarn(Yet Another Resource Negotiator 另一种资源协商者)它作为 Hadoop的一个组件,负责整个集群资源的管理和调度。 在Hadoop2.0的第一个版本2.0.0-alpha,Yarn 作为一个正式组件加入。 在hadoop 1.x时,JobTracker存在单点故障、节点压力大不容易扩展、不能够支持多种计算框架。Yarn...
2019-03-13 17:31:07
832
原创 MapReduce详解
MapReduce源于Google一篇论文,它充分借鉴了“分而治之”的思想,将一个数据处理过程拆分为主要的Map(映射)与Reduce(归约)两步。简单地说,MapReduce就是"任务的分解与结果的汇总"。 MapReduce (MR) 是一个基于磁盘运算的框架,贼慢,慢的主要原因:1)MR是进程级别的,一个MR任务会创建多个进程(map task和reduce t...
2019-03-05 16:35:01
951
原创 HDFS 读写流程与副本放置策略
HDFS写数据流程1)客户端调用Distributed FileSystem模块的create方法,与NameNode进行RPC通信,请求上传文件,NameNode检查目标路径的文件是否已存在,以及有没有权限创建该文件。假如OK,直接先将操作写入edits文件(WAL),创建一个新文件,但是不关联任何的block。2)NameNode返回是否可以上传。3)客户端请求第一个 b...
2019-02-28 17:30:57
606
原创 HDFS:NN、SNN、DN剖析
namenode被格式化之后,将在HADOOP_HOME/tmp/dfs/name/current (默认)产生以下文件: 参数:core-site.xml : hadoop.tmp.dir 指定hadoop运行时产生文件的存储目录 参数: hdfs-site.xml : dfs.namenode.name.dir 指定namenode...
2019-02-27 15:16:00
969
原创 HDFS概述与架构
概述HDFS即Hadoop分布式文件系统。源自GFS论文。有以下特点: 1、高容错性的分布式文件系统。 2、可构建在廉价机器上,通过多副本机制,提高可靠性。 3、易扩展、为用户提供性能不错的文件存储服务。缺点: 1、不适合低延时数据访问,比如毫秒级的存储数据,是做不到的。 2、无法高效的对大量...
2019-02-25 14:09:48
464
原创 jps命令详解
jps概述 jps是JDK提供的一个显示当前所有 java 进程 pid 的命令。 注: jps只能查看当前运行的Java进程 ,其他进程需要通过ps命令查看 jps使用usage: jps [-help] jps [-q] [-mlvV] [<hostid>]Definitions: <host...
2019-02-20 17:20:37
550
原创 使用ssh-copy-id命令轻松实现ssh多台机器免密
为什么要实现多台机器ssh免密? 配置分布式集群时, 不同的节点靠ssh互相通信,如果不配置免密, 无法完成通信。 多台机器ssh免密原理: 在每台机器的认证授信文件中, 都有其他机器(包括自己)的公钥。 假设有三台机器 (hostname如下)hadoop000hadoop001hadoop002 ssh-keygen ...
2019-02-18 17:08:26
1300
原创 Hadoop伪分布式环境搭建
版本 :hadoop-2.6.0-cdh5.7.0HDFS伪分布式搭建1)创建hadoop用户与app文件夹[root@hadoop001 ~]# useradd hadoop[root@hadoop001 ~]# su - hadoop[hadoop@hadoop001 ~]$ mkdir app[hadoop@hadoop001 ~]$ cd app/上传jar包到...
2019-02-18 16:16:49
131
原创 MySQL命令总结
一、用户管理:(1)登录:mysql-uroot-p (2)查看现有用户(mysql8.0.1)mysql> select host,user,authentication_string from mysql.user; +-----------+------------------+---------------------------------------...
2019-02-18 15:01:26
132
原创 MySQL基础(二)
部门表 dept : create table dept ( deptno numeric(2), dname varchar(14), loc varchar(13));工资等级表:create table salgrade ( grade numeric, losal numeric, hisal numeric);...
2019-02-13 15:37:24
223
原创 MySQL基础(一)
Database操作1、查看当前databasesmysql> show databases;2、创建databasemysql> create database bigdata; //创建bigdata数据库3、查看当前数据库用户信息mysql> use mysql;mysql> select * from user;4、创建数据库...
2019-02-13 11:53:12
152
原创 MySQL-5.6部署
1、RPM安装(简单,但无法定制)yum install -y mysql-server.x86_64yum install -y mysql.x86_64service mysqld start卸载:[root@hadoop001 ~]# rpm -qa | grep mysqlmysql-libs-5.1.73-8.el6_8.x86_64mysql-server-5....
2019-01-29 15:44:05
231
原创 Linux常用命令总结 二
目录1、 vi2、权限3、查看文件/文件夹大小4、软连接5、上传下载(window)6、top7、free -m8、查看硬盘挂载状态9、压缩,解压10、定时任务11、后台执行命令 1、 vi vi 有三种模式: 1) 命令行模式(command mode) 控制屏幕光标的移动,字符、字或行的删除。...
2019-01-29 14:39:59
404
原创 Linux常用命令总结 一
目录1、查看当前路径:2、切换目录:3、清空屏幕4、查看当前目录的所有文件夹和文件的名称5、查看ip6、创建目录7、移动文件或文件夹8、复制文件或文件夹9、查看帮助10、创建一个空文件11、查看文件内容12、13、别名14、环境变量15、删除16、设置变量17、查看历史命令18、用户、用户组19、管道符20、查看进程、...
2019-01-23 16:31:43
433
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人