大数据-06-Spark之读写Hive数据】的更多相关文章

简介 Hive中的表是纯逻辑表,就只是表的定义等,即表的元数据.Hive本身不存储数据,它完全依赖HDFS和MapReduce.这样就可以将结构化的数据文件映射为为一张数据库表,并提供完整的SQL查询功能,并将SQL语句最终转换为MapReduce任务进行运行. 而HBase表是物理表,适合存放非结构化的数据. 两者分别是什么? Apache Hive是数据仓库.通过Hive可以使用HQL语言查询存放在HDFS上的数据.HQL是一种类SQL语言,这种语言最终被转化为Map/Reduce. 虽然H…
由于预处理的数据都存储在cassandra里面,所以想要用spark进行数据分析的话,需要读取cassandra数据,并把分析结果也一并存回到cassandra:因此需要研究一下spark如何读写cassandra. 话说这个单词敲起来好累,说是spark,其实就是看你开发语言是否有对应的driver了. 因为cassandra是datastax主打的,所以该公司也提供了spark的对应的driver了,见这里. 我就参考它的demo,使用scala语言来测试一把. 1.执行代码 //Cassa…
原文引自:http://blog.csdn.net/zongzhiyuan/article/details/78076842 hive数据表建立可以在hive上建立,或者使用hiveContext.sql(“create table ....") 1) 写入hive表 case class Person(name:String,col1:Int,col2:String) val sc = new org.apache.spark.SparkContext val hiveContext = ne…
Exception: Caused by: org.datanucleus.exceptions.NucleusException: Attempt to invoke the "BoneCP" plugin to create a ConnectionPool gave an error : The specified datastore driver ("com.mysql.jdbc.Driver") was not found in the CLASSPATH…
Spark 2.0以前版本:val sparkConf = new SparkConf().setAppName("soyo")    val spark = new SparkContext(sparkConf) Spark 2.0以后版本:(上面的写法兼容)直接用SparkSession:val spark = SparkSession      .builder      .appName("soyo")      .getOrCreate()    var…
我尝试着在classpath中加n入mysql的驱动仍不行 解决方法:在启动的时候加入参数--driver-class中加入mysql 驱动 [hadoop@master spark-1.0.1-bin-hadoop2]$ bin/spark-shell --driver-class-path lib/mysql-connector-java-5.1.30-bin.jar 总结:1.spark的版本必须编译的时候加上了hive 1.0.0预编译版没有加入hive  1.0.1是含有hive的2.…
首先给出原文链接: 原文链接 大数据本身是一个很宽泛的概念,Hadoop生态圈(或者泛生态圈)基本上都是为了处理超过单机尺度的数据处理而诞生的.你能够把它比作一个厨房所以须要的各种工具. 锅碗瓢盆,各有各的用处.互相之间又有重合.你能够用汤锅直接当碗吃饭喝汤,你能够用小刀或者刨子去皮. 可是每一个工具有自己的特性,尽管奇怪的组合也能工作,可是未必是最佳选择. 大数据,首先你要能存的下大数据. 传统的文件系统是单机的,不能横跨不同的机器. HDFS(Hadoop Distributed File…
引言 在之前的大数据学习系列中,搭建了Hadoop+Spark+HBase+Hive 环境以及一些测试.其实要说的话,我开始学习大数据的时候,搭建的就是集群,并不是单机模式和伪分布式.至于为什么先写单机的搭建,是因为作为个人学习的话,单机已足以,好吧,说实话是自己的电脑不行,使用虚拟机实在太卡了... 整个的集群搭建是在公司的测试服务搭建的,在搭建的时候遇到各种各样的坑,当然也收获颇多.在成功搭建大数据集群之后,零零散散的做了写笔记,然后重新将这些笔记整理了下来.于是就有了本篇博文. 其实我在搭…
前言 在之前的大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 中介绍了集群的环境搭建,但是在使用hive进行数据查询的时候会非常的慢,因为hive默认使用的引擎是MapReduce.因此就将spark作为hive的引擎来对hbase进行查询,在成功的整合之后,我将如何整合的过程写成本篇博文.具体如下! 事前准备 在进行整合之前,首先确保Hive.HBase.Spark的环境已经搭建成功!如果没有成功搭建,具体可以看我之前写的大数据学习系…
1.简答说一下hadoop的map-reduce编程模型 首先map task会从本地文件系统读取数据,转换成key-value形式的键值对集合 使用的是hadoop内置的数据类型,比如longwritable.text等 将键值对集合输入mapper进行业务处理过程,将其转换成需要的key-value在输出 之后会进行一个partition分区操作,默认使用的是hashpartitioner,可以通过重写hashpartitioner的getpartition方法来自定义分区规则 之后会对ke…
变量的定义 val a: Int = 1 var b = 2 方法和函数 区别:函数可以作为参数传递给方法 方法: def test(arg: Int): Int=>Int ={ 方法体 } val fun = (test _: Int =>(Int=>Int))=>函数体 逻辑执行语句 val a = if(条件){ 执行逻辑 返回值 }else{ 执行逻辑 } while(条件){ 执行逻辑 } val arr = Array(1,2,3,4,5) for(i <- 0…
Hive作为大数据环境下的数据仓库工具,支持基于hadoop以sql的方式执行mapreduce的任务,非常适合对大量的数据进行全量的查询分析. 本文主要讲述下hive载cli中如何导入导出数据: 导入数据 第一种方式,直接从本地文件系统导入数据 我的本机有一个test1.txt文件,这个文件中有三列数据,并且每列都是以'\t'为分隔 [root@localhost conf]# cat /usr/tmp/test1.txt 1 a1 b1 2 a2 b2 3 a3 b3 4 a4 b 创建数据…
1.究竟什么是RDD呢? 有人可能会回答是:Resilient Distributed Dataset.没错,的确是如此.但是我们问这个实际上是想知道RDD到底是个什么东西?以及它到底能干嘛?好的,有了问题,那么我们带着问题往下看,总会有答案的.2.hadoop的计算模型&spark的计算模型 (1)首先我们可以看一下hadoop的计算模型:在这幅图中,每一次job的运行都需要对数据进行磁盘的读写操作.…
第一章 Spark 性能调优 1.1 常规性能调优 1.1.1 常规性能调优一:最优资源配置 Spark性能调优的第一步,就是为任务分配更多的资源,在一定范围内,增加资源的分配与性能的提升是成正比的,实现了最优的资源配置后,在此基础上再考虑进行后面论述的性能调优策略. 资源的分配在使用脚本提交Spark任务时进行指定,标准的Spark任务提交脚本如代码清单2-1所示: 代码清单2-1 标准Spark提交脚本 /usr/opt/modules/spark/bin/spark-submit \ --…
1. Spark 内核概述 Spark内核泛指Spark的核心运行机制,包括Spark核心组件的运行机制.Spark任务调度机制.Spark内存管理机制.Spark核心功能的运行原理等,熟练掌握Spark内核原理,能够帮助我们更好地完成Spark代码设计,并能够帮助我们准确锁定项目运行过程中出现的问题的症结所在. 1.1 Spark核心组件回顾 1.1.1 Driver Spark驱动器节点,用于执行Spark任务中的main方法,负责实际代码的执行工作.Driver在Spark作业执行时主要负…
第1章 Spark概述 1.1 什么是Spark 1.2 Spark内置模块 Spark Core:实现了Spark的基本功能,包含任务调度.内存管理.错误恢复.与存储系统交互等模块.Spark Core中还包含了对弹性分布式数据集(Resilient Distributed DataSet,简称RDD)的API定义. Spark SQL:是Spark用来操作结构化数据的程序包.通过Spark SQL,我们可以使用 SQL或者Apache Hive版本的SQL方言(HQL)来查询数据.Spark…
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础软件的安装 CentOS6安装各种大数据软件 第四章:Hadoop分布式集群配置 CentOS6安装各种大数据软件 第五章:Kafka集群的配置 CentOS6安装各种大数据软件 第六章:HBase分布式集群的配置 CentOS6安装各种大数据软件 第七章:Flume安装与配置 CentOS6安装各…
一 .Spark概述 官网:http://spark.apache.org 1.        什么是spark Spark是一种快速.通用.可扩展的大数据分析引擎,2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目.项目是用Scala进行编写. 目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL.Spark Streaming.GraphX.MLib.SparkR等子…
1.连接mysql --driver-class-path mysql-connector-java-5.1.21.jar 在数据库中,SET GLOBAL binlog_format=mixed; 2.Spark中 使用Hive的udf 同样使用-jars 才行 3.Spark jupyter使用 https://www.jb51.net/article/163641.htm https://my.oschina.net/albert2011/blog/754174 使用jupyter-not…
前面提到了Hive的知识点非常零散,我不知道该怎么把这些知识点分类,跟SQL关系没那么大的就放在这一篇吧. Hive Serde 参考Hive Serde Serde是啥 Serde是序列化和反序列化的简称.为啥这么说?序列化是Serializer,反序列化是Deserializer,各取前几个字母一拼就成了.Hive里的序列化和反序列化干嘛用的?简单的说,就是在HDFS文件和表数据之间做转换. Hive使用Serde(还有文件格式化)来读写表记录. 读数据:HDFS文件->输入文件格式->键…
Linux就这个范儿 第15章 七种武器  linux 同步IO: sync.fsync与fdatasync   Linux中的内存大页面huge page/large page  David Cutler  Linux读写内存数据的三种方式 台湾作家林清玄在接受记者采访的时候,如此评价自己30多年写作生涯:“第一个十年我才华横溢,‘贼光闪现’,令周边黯然失色:第二个十年,我终于‘宝光现形’,不再去抢风头,反而与身边的美丽相得益彰:进入第三个十年,繁华落尽见真醇,我进入了‘醇光初现’的阶段,真正…
"决胜云计算大数据时代" Spark亚太研究院100期公益大讲堂 [第15期互动问答分享] Q1:AppClient和worker.master之间的关系是什么? AppClient是在StandAlone模式下SparkContext.runJob的时候在Client机器上应       用程序的代表.要完毕程序的registerApplication等功能. 当程序完毕注冊后Master会通过Akka发送消息给client来启动Driver: 在Driver中管理Task和控制Wo…
一.背景介绍 最近几天,接到公司的一个将当前大数据平台数据全部迁移到阿里云ODPS平台上的任务.而申请的这个ODPS平台是属于政务内网的,因考虑到安全问题当前的大数据平台与阿里云ODPS的网络是不通的,所以不能使用数据采集工作流模板. 然而,考虑到原大数据平台数据量并不是很大,可以通过将原大数据平台数据导出到CSV文件,然后再将CSV文件导入到ODPS平台.在这个过程中踩的坑有点多,所以想写篇文档作为记录. 二.大数据平台Hive数据导出到本地 编写export_data.sh脚本如下: #!/…
hive通过外部表读写elasticsearch数据,和读写hbase数据差不多,差别是需要下载elasticsearch-hadoop-hive-6.6.2.jar,然后使用其中的EsStorageHandler: Connect the massive data storage and deep processing power of Hadoop with the real-time search and analytics of Elasticsearch. The Elasticsea…
在hive中创建外部表: CREATE EXTERNAL TABLE hive_hbase_table(key string, name string,desc string) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES("hbase.columns.mapping" = ":key,columfamily:name,columnfamily:desc&qu…
一.基本操作 1.DDL 官网的DDL语法教程:点击查看 建表语句 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment], ...)] [COMMENT table_comment] [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)] [CLUSTERED BY (col_name, c…
一.基本概念 1.什么是hive The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Structure can be projected onto data already in storage. A command line tool and JDBC driv…
Spark支持多种的编程语言 对比scala和Java编程上节课的计数程序.相比之下,scala简洁明了. Hadoop的IO开销大导致了延迟高,也就是说任务和任务之间涉及到I/O操作.前一个任务完成之前没有写入硬盘,下一个任务无法从硬盘当中获取数据,从而导致了这个高延迟. Spark与Hadoop的对比:Spark也是MapReduce,但是它的编程模式比Hadoop的MapReduce更灵活,而且会支持多种数据集的操作.其次呢,它不是从磁盘中读取数据,它是从内存中读取数据.我把结果中间结果写…
“决胜云计算大数据时代” Spark亚太研究院100期公益大讲堂 [第13期互动问答分享] Q1:tachyon+spark框架现在有很多大公司在使用吧? Yahoo!已经在长期大规模使用: 国内也有公司在使用: Q2:impala和spark sql如何选择呢? Impala已经被官方宣布“安乐死”,被官方温柔的放弃: Spark SQL是Spark的核心子框架,同时能够和图计算.机器学习框架无缝集成,强烈推荐使用! Q3:如果有程序采用流式不停往tachyon集群写数据,但tachyon内存…
“决胜云计算大数据时代” Spark亚太研究院100期公益大讲堂 [第10期互动问答分享] Q1:Spark on Yarn的运行方式是什么? Spark on Yarn的运行方式有两种:Client和Cluster模 Client模式如下所示: Cluster模式如下所示: Q2:Yarn的框架内部是如何实现的? 公开课: 上海:9月26-28日,<决胜大数据时代:Hadoop.Yarn.Spark企业级最佳实践> 北京: 10月26-28日, <决胜大数据时代:Hadoop.Yarn…