- 博客(62)
- 资源 (1)
- 收藏
- 关注
原创 【十四】hive 表生成函数Table-Generating Functions
Table-Generating Functions官网介绍 Row-set columns types Name(Signature) Description int,T posexplode(ARRAY<T> a) Explodes an array to multiple rows with ad...
2018-07-31 23:35:49 648
原创 【十三】hive 子查询
子查询SELECT colFROM ( SELECT a+b AS col FROM t1) t2SELECT t3.colFROM ( SELECT a+b AS col FROM t1 UNION ALL SELECT c+d AS col FROM t2) t3SELECT *FROM AWHERE A.a IN (SELECT fo...
2018-07-31 22:52:28 476
原创 【十一】hive窗口函数、分析函数Windowing and Analytics Functions
窗口函数是最后执行,仅在order by之前。创建表用于测试USE sid;CREATE TABLE buy_record(id INT COMMENT'购买记录id',user_name STRING COMMENT'用户名',buy_date STRING COMMENT'购买日期',goods_id INT COMMENT'商品id',price DOUBLE COM...
2018-07-31 22:21:07 484
原创 【十】hive DQL之join、union
joinjoin_table: table_reference [INNER] JOIN table_factor [join_condition] | table_reference {LEFT|RIGHT|FULL} [OUTER] JOIN table_reference join_condition | table_reference LEFT SEMI JOIN t...
2018-07-31 17:56:32 311
原创 【九】hive DQL之SELECT、WHERE、ALL 、DISTINCT、GROUP BY | HAVING、LIMIT 、ORDER BY、SORT BY
selectSELECT [ALL | DISTINCT] select_expr, select_expr, ... FROM table_reference [WHERE where_condition] [GROUP BY col_list] [ORDER BY col_list] [CLUSTER BY col_list | [DISTRIBUTE BY ...
2018-07-31 17:39:09 468
原创 【八】hive DML之import/export
export可以把hive表或分区中的数据随着元数据一起导出到指定的路径下。导出的数据可以被移动到其他的hadoop、hive中去。在其他的hadoop、hive中想要用export出的数据,就要使用import命令。导出一个表的分区,原始数据能够被加载到不同的HDFS中。也可以导出/导入一个分区的子集。导出/导入的元数据库可以不一样,比如derby到mysql。EXPORT...
2018-07-31 16:13:13 246
原创 【七】hive DML之load/insert/update/delete/merge
Load把文件中的数据加载到表中。LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)] LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE t...
2018-07-31 15:58:33 902
原创 【六】hive DDL之Show
Show DatabasesSHOW (DATABASES|SCHEMAS) [LIKE 'identifier_with_wildcards'];Show Tables/Views/Partitions/IndexesShow TablesSHOW TABLES [IN database_name] ['identifier_with_wildcards'];Show V...
2018-07-31 01:58:45 1796
原创 【五】hive DDL之Alter Table/Partition/Column
Alter Table允许修改已有表的表结构,例如添加、删除列、改变SerDe、重命名表名。重命名表明ALTER TABLE table_name RENAME TO new_table_name;修改表的属性可以用这个命令增加表的元数据。last_modified_user, last_modified_time properties这三个数据是Hive自动管理创建的。...
2018-07-31 01:42:36 9238
原创 【三】hive DDL之create/drop/alter databases/schema
创建CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name [COMMENT database_comment] [LOCATION hdfs_path] [WITH DBPROPERTIES (property_name=property_value, ...)];删除DROP (DATABASE|SCHEMA)...
2018-07-31 00:48:08 1103
原创 【十六】SparkSQL常用性能优化
一、代码优化1.在数据统计的时候选择高性能算子。例如Dataframe使用foreachPartitions将数据写入数据库,不要每个record都去拿一次数据库连接。通常写法是每个partition拿一次数据库连接。 /** * 将统计结果写入MySQL中 * 代码优化: * 在进行数据库操作的时候,不要每个record都去...
2018-07-30 21:41:09 16060
原创 FastDateFormat时间日期格式转化的使用(Scala语言)
package com.sid.com.projectimport java.text.SimpleDateFormatimport java.util.{Date, Locale}import org.apache.commons.lang3.time.FastDateFormat/** * 日期时间转化工具 * */object DateUtils { // 10...
2018-07-30 18:54:41 5147
原创 【十五】SparkSQL访问日志分析:数据清洗、数据分析(分组、排序、窗口函数)、入库(MySQL)、性能优化
概述:1.第一次数据清洗:从原始日志中抽取出需要的列的数据,按照需要的格式。2.第二步数据清洗:解析第一步清洗后的数据, 处理时间,提出URL中的产品编号、得到产品类型, 由IP得到城市信息(用到开源社区的解析代码,该部分具体介绍:ipdatabase解析出IP地址所属城市) ,按照天分区进行存储 (用parquet格式)。3.统计分析(分组、排序、窗口函数)。4.结果写入MyS...
2018-07-30 18:52:06 3023
原创 【二十】Spark on YARN
Spark部署(standalone模式)--master官网介绍在Spark中支持4种运行模式:1.Local:通常在开发时使用,可以直接在IDEA中运行,本机电脑不用部署环境。--master("local[2]")。2.Standalone:这是Spark自带的,如果一个集群是Standalone,需要在多台机器上同时部署Spark环境。改一个机器的配置要把所有机器都同步...
2018-07-30 03:08:55 243
原创 IP地址解析之github中ipdatabase项目的使用
使用gitbub上的ipdatabase项目做IP地址解析得到该IP是什么城市的。流程:1.下载项目 2.编译 3.添加到maven库中(这里演示的是本地maven库) 4.在idea项目的pom.xml中引入依赖ipdatabase项目地址https://github.com/wzhe06/ipdatabase.git下载git clone https://github.co...
2018-07-29 23:05:37 4220 3
原创 【零】SparkSQL特性与优化
SparkSQL特性之:代码量少,可读性高。计算平均数的功能,左是hadoop写MapReduce的代码量,太繁琐。右是用Spark Core RDD API写,代码量少但可读性不好。同样是计算平均数,用Spark SQL或者DataFrame,代码可读性比RDD好很多。SparkSQL特性之:统一访问操作接口。在SparkSQL中read/write不同格式的数据都是有统...
2018-07-27 22:43:25 1244
原创 【十四】SparkSQL外部数据源操作之Mysql
SparkMysql.scala代码package com.sid.comimport org.apache.spark.sql.SparkSessionimport java.util.Properties/** * 操作mysql的数据 * */object SparkMysql { def main(args: Array[String]): Unit = ...
2018-07-27 19:19:31 628
原创 【十三】Spark外部数据源操作实现ETL功能(json => parquet)
Spark有统一个外部数据源API,可以轻松实现ETL功能。pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/...
2018-07-27 18:40:35 1053
原创 【十二】Spark SQL DataSets概述
DataSet是一个分布式的数据集,是spark1.6版本才出来的。它提供RDD中的有点(强类型、lambda表达式、优化SparkSQL执行引擎)。DataFrame中能用的东西大部分在DataSet都能用。DataSet能够通过JVM对象构建出来。DataSet能使用函数表达式(map、flatmap、filter等等)。DataSet API能在Java和Scala中使用。python暂不支...
2018-07-27 03:06:35 284
原创 【十一】Spark SQL DataFrames和RDD互操作
官网介绍一、用反射机制的方式DataFrames和RDD互操作(能推导出schema信息,代码更加简介,运行效果更加好,前提是已经准确知道schema构成)Spark SQL 提供的scala接口能够自动把一个包含case class(类似于java中的一个bean)信息的RDD转换成DataFrame。case class定义的是表的schema信息。二、用编程的方式DataFr...
2018-07-27 02:07:42 429
原创 【十】Spark SQL DataFrames概述及基本API操作
DataFrames不是Spark SQL提出的,它早期在R、Python中就有了。原来数据R语言中的DataFrame可以快速转到Spark SQL中来。Spark RDD API是通过函数式编程模式把大数据中的数据转换成分布式数据集RDD再进行编程。DataFrames概述官网介绍DataSet是一个分布式数据集,它是spark1.6后新增的。DataFrame是一个以列(...
2018-07-27 01:16:14 569
原创 【九】Spark SQL用JDBC代码访问ThriftServer
1.启动ThriftServer 默认端口在10000 可修改cd /app/spark/spark-2.2.0-bin-2.9.0./sbin/start-thriftserver.sh --master local[3] --jars /app/mysql-connector-java-5.1.46.jar查看是否启动成功jps -m2.项目目录3.pom.xm...
2018-07-27 00:30:31 2309
原创 【八】thriftserver和beeline的使用
thriftserver和spark-shell/spark sql的区别:1.每次启动一个spark-shell/spark sql它都是一个spark application,每次都要重新启动申请资源。2.用thriftserver,无论启动多少个客户端(beeline),只要是连在一个thriftserver上,它都是一个spark application,后面不用在重新申请资源。能...
2018-07-26 23:39:15 1031
原创 【七】Spark SQL命令和Spark shell命令操作hive中的表
1.把hive的配置文件hive-site.xml复制到spark/conf下。2.启动的时候带上MySQL的连接驱动Spark-shell命令使用spark-shell是通过得到sparksession然后调用sql方法执行hive的sql。cd /app/spark/spark-2.2.0-bin-2.9.0/bin./spark-shell --master local[...
2018-07-26 20:22:39 23086 2
原创 【六】Spark SQL中SparkSession的使用
Spark2.X中Spark SQL的入口点:SparkSession。项目目录pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apa...
2018-07-25 00:48:12 12426
原创 【五】Spark SQL中HiveContext的使用(操作hive中的表)(提交到服务器上执行)(Hadoop HA)
HiveContext在基本的SQLContext上有了一些新的特性,可以用Hive QL写查询,可以读取Hive表中的数据,支持Hive的UDF。要把hive/conf/hive-site.xml文件拷贝到spark/conf下。cd /app/hive/confscp hive-site.xml root@node1:/app/spark/spark-2.2.0-bin-2.9.0...
2018-07-25 00:31:06 13092
原创 【四】hive DDL之create/drop/truncate table
中括号是必填,方括号是选填。官网介绍创建CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name -- (Note: TEMPORARY available in Hive 0.14.0 and later) [(col_name data_type [COMMENT col_comme...
2018-07-24 23:34:50 608
原创 【四】Spark SQL中SQLContext的使用(从json文件中加载数据)
SQLContext是Spark1.X中Spark SQL的入口点。项目目录pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apa...
2018-07-24 21:42:02 3981
原创 【三】SparkSQL概述
概述官网介绍SparkSQL是Spark的一个模块,用来处理结构化数据的。SparkSQL能够运行SQL/Hive SQL包括UDF、UDAF、序列化和反序列化。SparkSQL能够通过JDBC的方式连接到已经存在的BI工具上。它能够支持Python、Java、Scala、R语言。Spark SQL可以在Spark程序中查询结构化数据,也能使用DataFrame API...
2018-07-24 21:04:35 327
原创 【十九】Spark安装(standalone模式)
【一】基于Ubuntu16.04环境编译Spark源码及安装先确定已经编译好了源码,并且安装好了local模式。(每台机器都要安装)node1 Master node2 worker node3 worker node4 worker cd /app/spark/spark-2.2.0-bin-2.9.0/confcp spark-env.sh....
2018-07-24 18:56:20 1016
原创 【二】hive概述
Hive由Facebook开源,最初用于解决海量结构化的日志数据统计问题。它是构建在Hadoop之上的一个数据仓库,它的数据放在HDFS之上,最初计算框架用的MapReduce,现在支持多种计算引擎如Spark、Tez。它定义了一种类SQL查询语言简称HQL。Hive通常用来进行离线数据处理的。支持多种不同的压缩格式(GZIP、LZO、Snappy、BZIP2...)、存储格式(Tex...
2018-07-24 05:07:27 328
原创 Spring Boot+Echarts+HBase绘制动态数据饼图(Spring Boot打包提交到服务器上运行)
echarts官网Spring Boot整合Echarts绘制静态数据柱状图、饼图项目目录需要echarts.min.js和jquery.jspom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=...
2018-07-23 04:57:08 3715 1
原创 Spring Boot整合Echarts绘制静态数据柱状图、饼图
Echarts官网idea创建spring boot项目下载echarts把echarts.min.js文件放到项目中。项目目录 pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmln...
2018-07-23 03:45:40 13789 5
原创 【十八Spark Streaming实战】日志分析之Flume+Kafka+Spark Streaming+Hbase
【十七Spark Streaming实战】日志分析之用python生成日志对接Python日志产生器输出的日志到Flume1.编写flume agent的配置文件在node1上进入flume目录cd /app/flume/flume/conf创建flume的agent配置文件vi test-streaming-project.conf#streaming-projec...
2018-07-23 02:56:17 1950
原创 【二】HBase安装(基于hadoop2.9HA的搭建)(分布式)
先安装分布式Zookeeperhadoop分布式配置(HA高可用) NN DN ZK ZKFC JN RM NM HM RS Node1 Y Y ...
2018-07-21 22:49:14 1902
原创 Ubuntu使用Crontab
环境Ubuntu16.04Ubuntu自带Crontab,不用安装。1.开启Crontab日志vi /etc/rsyslog.d/50-default.conf把#cron.*前面的#号去掉重启rsyslog服务service rsyslog restart然后再重启crontab服务service cron restart创建接收crontab输出的文件...
2018-07-20 21:37:04 5436
原创 【十七Spark Streaming实战】日志分析之用python生成日志
用python模拟访问日志的生成。将生成的日志写入一个文件中,后续Flume会从该日志文件采集数据。1.在服务器中创建日志文件cd /app/flume/testDatatouch generateLog.log2.代码cd /app/flume/testDatavi sparkStreamingGenerateLog.py#coding=UTF-8import ...
2018-07-20 17:38:52 1819
原创 【十六】Log4j+Flume+Kafka+Spark Streaming(使用Scala语言)
项目目录pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apach...
2018-07-19 06:02:01 528
原创 【十五】Spark Streaming整合Kafka使用Direct方式(使用Scala语言)
官网介绍Kafka提供了新的consumer api 在0.8版本和0.10版本之间。0.8的集成是兼容0.9和0.10的。但是0.10的集成不兼容以前的版本。这里使用的集成是spark-streaming-kafka-0-8。官方文档配置SparkStreaming接收从kafka来的数据有两种方式。老的方式要使用Receiver,新的方式是Spark1.3后引进的不用Recei...
2018-07-19 03:25:50 3907
hadoop-eclipse-plugin-2.9.0套装
2018-05-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人