一.序言
这里介绍用idea 跑程序去连接spark-sql->hive-metastore 的小例子,关于服务器上得保证spark-sql/spark-shell 正确执行,然后再用本地的程序去实现,我这里版本用的spark1.4.1+hive1.2.1+hadoop 2.7.1.
二.连接代码
结合笔记1的代码
2.1 maven 配置:
<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.10</artifactId> <version>1.4.1</version> </dependency> <!-- 这里如果用hadoop1.2.1 版本,必须引入,上面最好忽略h2 版本 --> <!--<dependency>--> <!--<groupId>org.apache.hadoop</groupId>--> <!--<artifactId>hadoop-client</artifactId>--> <!--<version>1.2.1</version>--> <!--</dependency>--> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-hive_2.10</artifactId> <version>1.4.1</version> </dependency>
2.java 代码
public static final String master = "spark://master:7077"; public static void main(String[] args) { SparkConf conf = new SparkConf().setAppName("demo1").setMaster(master); conf.set("spark.executor.memory", "256M"); JavaSparkContext sc = new JavaSparkContext(conf); HiveContext sqlContext = new org.apache.spark.sql.hive.HiveContext(sc.sc()); DataFrame df = sqlContext.sql("select * from data_center.shop limit 10"); Row[] rows = df.collect(); for(Row row : rows){ System.out.println(row); } }
3.scala 代码
object hello extends App { var master = "spark://master:7077"; val conf = new org.apache.spark.SparkConf().setAppName("demo").setMaster(master) conf.set("spark.executor.memory", "128M").set("worker_max_heapsize", "64M") val sc = new org.apache.spark.SparkContext(conf) val sqlContext = new org.apache.spark.sql.hive.HiveContext(sc) sqlContext.sql("use data_center") var df = sqlContext.sql("select * from orderinfo limit 10"); var dd = df.collect(); }
4.hive-site.xml 文件配置:
这里我就不贴出来了,从服务器上拷贝下来的,然后改了些 文件存放的路径就行了。项目目录是:
三.常见异常:
3.1 服务器内存不够
WARN TaskSchedulerImpl: Initial job has not accepted any resources; check your cluster UI to ensure that workers are registered and have sufficient resources
设置小点就行了:
conf.set("spark.executor.memory", "128M")
3.2 版本问题:这里一般是服务器上的版本和本地版本有不一致造成的,看着改吧!
Server IPC version 9 cannot communicate with client version 4
3.3 版本或者 hosts 地址没配对
Failed on local exception: java.io.IOException: Connection reset by peer; Host Details : local host is: "xxx/10.1.50.190"; destination host is: "xxx":9000;
3.4还有其他权限,路径 等乱起八糟的问题,看着改就行了
小结:
1.我们数据库数据放到hdfs 上,然后利用spark-sql 进行查询的方式,这里仅仅是简单连接,挺方便的
2.中途遇到的问题大多是版本问题,如果不用maven 最好把saprk/lib 下面的和 hive/lib hadoop/lib 等下面的文件弄到本地,不容易冲突。
3.纠结纠结,总会好的~。~
相关推荐
cmd = "ssh root@10.195.11.200 \"/usr/local/spark-3.1.2-bin-hadoop2.7/bin/spark-sql --master spark://gpmaster:7077 --executor-memory 2G --total-executor-cores 2 --conf spark.sql.storeAssignmentPolicy=...
spark-streamispark-streaming和spark-sql笔记文档。spark-streaming和spark-sql笔记文档。ng和spark-sql笔记文档。
spark学习笔记,包含spark SQL 在spark-shell的操作笔记
此应用程序(CSJB)是Spark应用程序,它将在Spark SQL中自动将所有Cassandra表注册为架构RDD,并启动嵌入式Apache HiveThriftServer,以使这些RDD准备通过“ jdbc:hive2”协议使用。 使用此网桥/服务器,您可以...
Jupyter笔记本服务器准备在远程Spark主服务器上运行带有Scala内核的Spark 在/ 上查看使用自定义jar,SBT打包,集群HDFS,Scala以及在笔记本上进行数据可视化的Scala运行Spark / Scala Notebook的 查看 用法 创建...
介绍了spark sql的简单案例,和基本的语句命令,spark的基本组成等。
代码、SQL 查询、标记甚至 JavaScript。 Spark 的使用是开箱即用的,它只是由名为sparkContext的隐式变量启用。 您还应该检查网站,。 讨论 加油! 邮件列表 有两个不同的邮件列表,每个列表都针对特定的讨论: ...
Spark SQL、Spark Streaming、MLlib、GraphX、Spark R等核心组件解决了很多的大数据问题,其完美的框架日受欢迎。其相应的生态环境包括zepplin等可视化方面,正日益壮大。大型公司争相实用spark来代替原有hadoop上...
主要介绍了Spark学习笔记之Spark SQL的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
IT十八掌第三期大数据配套学习笔记!...2.Spark部署和运行 3.Spark程序开发 4. Spark编程模型 5.作业执行解析 6.Spark SQL与DataFrame 7.深入Spark Streaming 8.Spark MLlib与机器学习 9.GraphX与SparkR 10.mahout
It covers Spark core and its add-on libraries, including Spark SQL, Spark Streaming, GraphX, and MLlib. Big Data Analytics with Spark is therefore written for busy professionals who prefer learning a...
系列博客是学习厦门大学林子雨老师spark编程基础课程的笔记,方便回顾... Spark SQL目前支持Scala、Java、Python三种语言,支持SQL-92规范 •DataFrame的推出,让Spark具备了处理大规模结构化数据的能力,不仅比原有的
SQL相关官方文档笔记,见SparkSQLDoc.md Spark Streaming 相关, 见SparkStreaming.md 奇淫巧技 IDEA,按住ALT,并按住左键进行框选也能实现多行编辑 Linux的vi编辑。 使用A进入输入模式,再进行复制。如果使用a进入...
另外,在$PATH包括$SPARK_HOME/bin ,这样您就不必为这些独立应用程序SPARK_HOME/bin/spark-submit前缀。 对于所有其他章节,我们在文件夹中提供了。 在上述各章中,我们还包括了一些独立Spark应用程序的笔记本等效...
RoadOfStudySparkspark学习之路,包含spark core,spark sql,spark streaming,spark mlib学习笔记
您随时可以在GitHub上找到最新版本https://github.com/dimajix/spark-training内容存储库包含不同类型的文档Spark / Scala的源代码适用于PySpark的Jupyter笔记本Zeppelin笔记本用于Spark / Scala Hive SQL脚本猪...
Spark Core学习 对最近在看的赵星老师Spark视频中关于SparkCore的几个...//创建spark配置,设置应用程序名字 //val conf=new SparkConf().setAppName(ScalaWordCount) //设置本地调试 val conf=new SparkConf().setAp
产品特点通过Livy对任何远程Spark集群以多种语言运行Spark代码自动创建SparkContext( sc )和HiveContext( sqlContext ) 使用%%sql魔术轻松执行SparkSQL查询在PySpark,Spark和SparkR内核中自动可视化SQL查询;...
Spark的一些笔记,包含Spark SQL的使用和一些函数的使用
Spark Notebook是面向企业环境的开源笔记本,为数据科学家和数据工程师提供了一个基于Web的交互式编辑器,该编辑器可以以协作的方式结合Scala代码,SQL查询,标记和JavaScript,以探索,分析和学习大量内容。...