1. 程式人生 > >spark部分json從檔案讀取資料【java純程式碼】

spark部分json從檔案讀取資料【java純程式碼】

package com.bjsxt;

import org.apache.hadoop.hdfs.server.namenode.dfsclusterhealth_jsp;
import org.apache.spark.SparkConf;
import org.apache.spark.SparkContext;

import org.apache.spark.sql.DataFrame;

import org.apache.spark.sql.SQLContext;

public class JavaRdd {
    public static <Row> void main(String[] args) {
        SparkConf conf=new SparkConf().setAppName("test").setMaster("local");
        SparkContext sc=new SparkContext(conf);
        SQLContext SQLContext=new SQLContext(sc);
        //DataFrame df = SQLContext.read().format("json").load("./json");
        DataFrame df = SQLContext.read().json("./json");
        df.show(100);
        System.out.println("+++++++++++++++++++++++++++");
        df.printSchema();
        System.out.println("+++++++++++++++++++++++++++");
        //JavaRDD<Row> javaRDD = df.javaRDD();
        df.select("name").show();
        System.out.println("___________________");
        df.select(df.col("name"),df.col("age").plus(10).alias("asa")).show();
        System.out.println("*********************************");
        df.select(df.col("name"),df.col("age")).where(df.col("age").gt(19)).show();
        System.out.println("????????????????????????//");
        df.groupBy(df.col("age")).count().show();
        System.out.println("PPPPPPPPPPPPPPPPPPPPP");
        df.registerTempTable("jtb");
        DataFrame sql = SQLContext.sql("select name,age,count(*) as gg from jtb group by age");
        sql.show();
        sc.stop();        
    }
}