微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sparksql系列(一)环境搭建

以前公司用的是spark-core,但是换工作后用的多是spark-sql
最近学习了很多spark-sql,在此做一个有spark经验的sparksql快速入门的教程。 JDK安装包 1.8版本:https://pan.baidu.com/s/1pLW3jyKv3N_FhQ7vvE4U2g    
SCALA安装包:https://pan.baidu.com/s/17f8AiS2n_g5kiQhxf7XIlA
hadoop安装包:https://pan.baidu.com/s/1YNM2_eTV8Zf_2SxamfMrSQ
Spark安装包:https://pan.baidu.com/s/17mf2_DMiNy7OdlFwygekhg
IDE安装包:https://pan.baidu.com/s/1caaKufvSuHBX1xEFXvcwpw

一:JDK环境搭建

其中重要的就是两个安装路径JDK路径和JRE路径,三个环境变量:JAVA_HOME、PATH、CLAsspATH

我本地的是   JDK路径(D:\JAVA\JDK\)      JRE路径(D:\JAVA\JRE)     

JAVA_HOME(D:\JAVA\JDK)   

PATH(%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;)  

CLAsspATH(.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;)

验证方案:java -version

二:SCALA环境搭建

下载后,解压即可。配置一个环境变量即可。

重要环境变量,加上即可:SCALA_HOME(D:\JAVA\scala)      PATH(%sCALA_HOME%\bin;%sCALA_HOME%\jre\bin;)  

验证方法:scala -version

三:hadoop环境搭建

    下载后,解压即可。配置两个环境变量即可。

    HADOOP_HOME(D:\JAVA\hadoop)      PATH($HADOOP_HOME/bin;)

    其中需要将bin下面的东西替换成window版本,因为是window版本。上面链接中的已经替换过。        

四:运行的jar包

    spark 解压的路径中jars目录中的东西,添加进IDE的classpath就行了

五:IDE解压开就行

    打开后新建一个scala项目。和JAVA的IDE操作一模一样,在此不详细描述。

六:sparksql 你好,世界

    spark 解压的路径中jars目录中的东西,添加进IDE的classpath

    

 

            import java.util.Arrays
            import org.apache.spark.SparkConf
            import org.apache.spark.api.java.JavaSparkContext
            import org.apache.spark.sql.{DataFrame, Row, SparkSession, functions}
            import org.apache.spark.sql.functions.{col, countdistinct, desc, length, row_number, sum, trim, when,count}
            import org.apache.spark.sql.types.{LongType, StringType, StructField, StructType}
            import org.apache.spark.sql.expressions.Window
            import org.apache.spark.storage.StorageLevel
            import org.apache.spark.sql.SaveMode

            object WordCount {
                        def main(args: Array[String]): Unit = {
                                    System.setProperty("hadoop.home.dir", "D:\\JAVA\\hadoop");

                                    val sparkSession= SparkSession.builder().master("local").appName("AppName").getorCreate()
                                    val javasc = new JavaSparkContext(sparkSession.sparkContext)

                                    val nameRDD = javasc.parallelize(Arrays.asList("{'name':'wangwu','age':'18','vip':'t'}",
                                                "{'name':'sunliu','age':'19','vip':'t'}","{'name':'zhangsan','age':'18','vip':'f'}"));
                                    val namedf = sparkSession.read.json(nameRDD)

                                    namedf.select(col("name")).show(100)

                        }
            }

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐