Hadoop

虚拟机上安装centos8.0

天涯浪子 提交于 2021-02-15 16:52:37
一、准备宿主机 为了培训Hadoop生态的部署和调优技术,需要准备3台虚拟机部署Hadoop集群环境,能够保证HA,即主要服务没有单点故障,可执行基本功能,完成小内存模式的参数调整。 1.1、准备安装包 宿主机操作系统为Win7 SP1,内存16G,磁盘为256G的SSD盘 1)虚拟机:VMware® Workstation 15 Pro 15.5.0 build-14665864 中文版 2)Linux系统:CentOS-8-x86_64-1905-dvd1.iso (Centos 8.0) 1.2、配置网络 安装VMware后,宿主机除了无线网络外共有3个网卡,分别是: 1) 本地网卡,192.168.3.127,掩码 255.255.255.0 2) Vmnet1(用于支持host only模式),192.168.121.1,掩码 255.255.255.0 3) Vmnet8(用于支持NAT [1] 模式),192.168.154.1,掩码 255.255.255.0 在本次实验中,我们部署的虚拟机采用NAT模式网络。 启动VMware Workstation Pro,点击 编辑->虚拟网络编辑器… 1.2.1 查看NAT设置 点击“NAT设置(S) …”,可以查看NAT设置 即NAT的网关为192.168.154.2,在虚拟机中将IP设置为192.168.154段

【大数据】Hive学习笔记

依然范特西╮ 提交于 2021-02-15 09:58:28
第 1 章 Hive 基本概念 1.1 什么是 Hive Hive :由 Facebook 开源用于解决海量结构化日志的数据统计。 Hive 是基于 Hadoop 的一个 数据仓库工具 ,可以将 结构化的数据文件映射为一张表 ,并提供 类 SQL 查询功能。 本质是:将 HQL 转化成 MapReduce 程序 1 ) Hive 处理的数据存储在 HDFS 2 ) Hive 分析数据底层的实现是 MapReduce 3 )执行程序运行在 Yarn 上 1.2 Hive 的优缺点 1.2.1 优点 1) 操作接口采用类 SQL 语法,提供快速开发的能力(简单、容易上手) 。 2) 避免了去写 MapReduce ,减少开发人员的学习成本 。 3) Hive 的执行延迟比较高,因此 Hive 常用于数据分析,对实时性要求不高的场合 。 4) Hive 优势在于处理大数据,对于处理小数据没有优势,因为 Hive 的执行延迟比较高 。 5) Hive 支持用户自定义函数,用户可以根据自己的需求来实现自己的函数 。 1.2.2 缺点 1.Hive 的 HQL 表达能力有限 ( 1 )迭代式算法无法表达 ( 2 )数据挖掘方面不擅长 , 由于 MapReduce 数据处理流程的限制,效率更高的算法却无法实现。 2.Hive 的效率比较低 ( 1 ) Hive 自动生成的 MapReduce

Hive数据导入导出的几种方式

人盡茶涼 提交于 2021-02-15 03:41:14
一,Hive数据导入的几种方式 首先列出讲述下面几种导入方式的数据和hive表。 导入: 本地文件导入到Hive表; Hive表导入到Hive表; HDFS文件导入到Hive表; 创建表的过程中从其他表导入; 通过sqoop将mysql库导入到Hive表;示例见《 通过sqoop进行mysql与hive的导入导出 》和《 定时从大数据平台同步HIVE数据到oracle 》 导出: Hive表导出到本地文件系统; Hive表导出到HDFS; 通过sqoop将Hive表导出到mysql库; Hive表: 创建testA: CREATE TABLE testA ( id INT , name string, area string ) PARTITIONED BY (create_time string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ' , ' STORED AS TEXTFILE; 创建testB: CREATE TABLE testB ( id INT , name string, area string, code string ) PARTITIONED BY (create_time string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ' , ' STORED AS

spark性能测试理论-Benchmark(转)

本小妞迷上赌 提交于 2021-02-15 01:56:33
一、Benchmark简介 Benchmark是一个评价方式,在整个计算机领域有着长期的应用。正如维基百科上的解释“As computer architecture advanced, it became more difficult to compare the performance of various computer systems simply by looking at their specifications.Therefore, tests were developed that allowed comparison of different architectures.”Benchmark在计算机领域应用最成功的就是性能测试,主要测试负载的执行时间、传输速度、吞吐量、资源占用率等。 性能调优的两大利器是Benchmark和profile工具。Benchmark用压力测试挖掘整个系统的性能状况,而profile工具最大限度地呈现系统的运行状态和性能指标,方便用户诊断性能问题和进行调优。 二、Benchmark的组成 Benchmark的核心由3部分组成:数据集、 工作负载、度量指标。 1、数据集 数据类型分为结构化数据、半结构化数据和非结构化数据。由于大数据环境下的数据类型复杂,负载多样,所以大数据Benchmark需要生成3种类型的数据和对应负载。 1

Phoenix查询hbase

扶醉桌前 提交于 2021-02-15 00:52:55
https://www.cnblogs.com/linbingdong/p/5832112.html 这个很全看这个 HBase,一个NoSQL数据库,可存储大量非关系型数据。 HBase,可以用HBase shell进行操作,也可以用HBase Java api进行操作。HBase虽然是一个数据库,但是它的查询语句,很不太好用。要是能像使用Mysql等关系型数据库一样用sql语句操作HBase,那就很Perfect了。 现有工具有很多Hive,Tez,Impala,Shark / Spark,Phoenix等。今天主要记录Phoenix。 phoenix,由saleforce.com开源的一个项目,后又捐给了Apache。它相当于一个Java中间件,帮助开发者,像使用jdbc访问关系型数据库一些,访问NoSql数据库HBase。 phoenix,操作的表及数据,存储在hbase上。phoenix只是需要和Hbase进行表关联起来。然后再用工具进行一些读或写操作。 其实,可以把Phoenix只看成一种代替HBase的语法的一个工具。虽然可以用java可以用jdbc来连接phoenix,然后操作HBase,但是在生产环境中,不可以用在OLTP中。在线事务处理的环境中,需要低延迟,而Phoenix在查询HBase时,虽然做了一些优化,但延迟还是不小。所以依然是用在OLAT中

Hbase JavaApi

寵の児 提交于 2021-02-14 22:58:22
package cn.itcast.hbase; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.* ; import org.apache.hadoop.hbase.client.* ; import org.apache.hadoop.hbase.filter.* ; import org.apache.hadoop.hbase.filter.CompareFilter.CompareOp; import org.apache.hadoop.hbase.filter.FilterList.Operator; import org.apache.hadoop.hbase.util.Bytes; import org.junit.Before; import org.junit.Test; import org.junit.experimental.theories.suppliers.TestedOn; import java.util.ArrayList; import java.util.Iterator; import java.util.List; // todo:Hbase Api操作 public class HbaseDemo { //

spark小文件合并

点点圈 提交于 2021-02-14 08:58:09
package spark99 import java.io.IOException import org.apache.hadoop.fs.{FileSystem, Path} import org.apache.log4j.Logger import org.apache.spark.sql.hive.HiveContext import org.apache.spark.{SparkConf, SparkContext} import org.apache.spark.sql.{SQLContext, SaveMode} /** * Created by hadoop on 下午11:54. */ object FilesManage { def main(args: Array[String]): Unit = { val sparkConf = new SparkConf().setMaster("local[2]").setAppName("mergefile") val sc = new SparkContext(sparkConf) val sqlContext = new HiveContext(sc) val logger = Logger.getLogger("org") val fileSystem = FileSystem.get(sc

大数据基本概念浅析及技术简介

时光怂恿深爱的人放手 提交于 2021-02-13 19:03:58
大数据是当前很热的一个词。这几年来,云计算、继而大数据,成了整个社会的热点,不管什么,都要带上“大数据”三个字才显得时髦。大数据究竟是什么东西?有哪些相关技术?对普通人的生活会有怎样的影响?我们来一步步弄清这些问题。 一、基本概念 在讲什么是大数据之前,我们首先需要厘清几个基本概念。 1.数据 关于数据的定义,大概没有一个权威版本。为方便,此处使用一个简单的工作定义:数据是可以获取和存储的信息。 直观而言,表达某种客观事实的数值是最容易被人们识别的数据(因为那是“数”)。但实际上,人类的一切语言文字、图形图画、音像记录,所有感官可以察觉的事物,只要能被记下来,能够查询到,就都是数据(data)。 不过数值是所有数据中最容易被处理的一种,许多和数据相关的概念,例如下面的数据可视化和数据分析,最早是立足于数值数据的。 传统意义上的数据一词,尤其是相对于今天的“大数据”的“小数据”,主要指的就是数值数据,甚至在很多情况下专指统计数值数据。这些数值数据用来描述某种客观事物的属性。 2.数据可视化 对应英语的data visulization(或可译为数据展示),指通过图表将若干数字以直观的方式呈现给读者。比如非常常见的饼图、柱状图、走势图、热点图、K线等等,目前以二维展示为主,不过越来越多的三维图像和动态图也被用来展示数据。 3.数据分析 这一概念狭义上,指统计分析,即通过统计学手段

Linkedin TonY

懵懂的女人 提交于 2021-02-13 16:43:50
背景说明:TensorFlowOnYARN开源时间较早,目前作者已经停止维护,业内推荐TonY系统; 安装环境:Centos 7.0或以上,物理机,Python-2.7.5虚拟环境(默认),tensorflow-1.13.1; 下载地址: https://github.com/linkedin/TonY ,git clone https://github.com/linkedin/TonY.git; 组件安装:apt-get update,apt-get install wget,apt-get install vim,apt-get install git,上传jdk,编辑.bashrc配置java环境; 代码编译:./gradlew build或./gradlew build -x test,前者构建并测试,后者只构建不测试,目标文件位于./tony-cli/build/libs/路径下; 目标文件: root@b9683a1b9302:~/TonY/tony-cli/build/libs# ll -h total 29M drwxr-xr-x 2 root root 4.0K Nov 4 03:17 ./ drwxr-xr-x 9 39040 staff 4.0K Nov 4 03:01 ../ -rw-r--r-- 1 root root 29M Nov 4 03:17

Hadoop介绍

假装没事ソ 提交于 2021-02-13 13:53:50
介绍Hadoop 大数据胜于好算法 如果数据足够多,可能产生意想之外的应用 无论算法好坏,更多的数据总能带来更好的推荐效果 大数据存储和分析遇到的问题 磁盘容量的增长远远大于磁盘读取速度 1TB的磁盘,数据传输速度100MB/s,读一遍2.5H 写数据就更慢了 解决之道 磁盘数据并行读写 分布式文件系统,冗余 MapReduce Hadoop Hadoop是一个由Apache基金会所开发的分布式系统基础架构。Hadoop提供了一个可靠的共享存储和分析系统。HDFS实现存储,MapReduce实现分析处理。 传统关系型数据库 vs MapReduce Hadoop生态圈 Hadoop支持多种语言,包括Java/C/Python/Ruby HDFS Hadoop Distributed File System HDFS是Hadoop的首选分布式文件系统,同时Hadoop也可以支持其他文件系统,例如本地文件和其他分布式系统。 超大文件->1024G->1T->1024T->1P HDFS是为大数据吞吐设计的,这可能会以时间延迟为代价 HDFS的block默认为64M,Map任务通常一次处理一个块的任务 nodename存储文件的元数据,nodename是放在内存中的,所以文件存储的节点受限于namenode的内存大小 显示分布式系统的数据块结构: # DEPRECATED hadoop