千家信息网

Spark SQL怎么用

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要介绍"Spark SQL怎么用",在日常操作中,相信很多人在Spark SQL怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Spark SQL怎么用"
千家信息网最后更新 2026年11月04日Spark SQL怎么用

这篇文章主要介绍"Spark SQL怎么用",在日常操作中,相信很多人在Spark SQL怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Spark SQL怎么用"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

pom.xml


  1. org.apache.spark

  2. spark-core_2.10

  3. 2.1.0



  4. org.apache.spark

  5. spark-sql_2.10

  6. 2.1.0


Java:

  1. import java.io.Serializable;

  2. import java.util.Arrays;


  3. import org.apache.spark.SparkConf;

  4. import org.apache.spark.api.java.JavaRDD;

  5. import org.apache.spark.api.java.JavaSparkContext;

  6. import org.apache.spark.sql.Dataset;

  7. import org.apache.spark.sql.Row;

  8. import org.apache.spark.sql.SQLContext;

  9. import org.apache.spark.sql.SparkSession;


  10. public class SparkSqlTest {

  11. public static class Person implements Serializable {

  12. private static final long serialVersionUID = -6259413972682177507L;

  13. private String name;

  14. private int age;


  15. public Person(String name, int age) {

  16. this.name = name;

  17. this.age = age;

  18. }

  19. public String toString() {

  20. return name + ": " + age;

  21. }

  22. public String getName() {

  23. return name;

  24. }

  25. public void setName(String name) {

  26. this.name = name;

  27. }

  28. public int getAge() {

  29. return age;

  30. }

  31. public void setAge(int age) {

  32. this.age = age;

  33. }

  34. }


  35. public static void main(String[] args) {

  36. SparkConf conf = new SparkConf().setAppName("Test").setMaster("local");

  37. JavaSparkContext sc = new JavaSparkContext(conf);


  38. SparkSession spark = SparkSession.builder().appName("Test").getOrCreate();

  39. JavaRDD input = sc.parallelize(Arrays.asList("abc,1", "test,2"));

  40. JavaRDD persons = input.map(s -> s.split(",")).map(s -> new Person(s[0], Integer.parseInt(s[1])));

  41. //[abc: 1, test: 2]

  42. System.out.println(persons.collect());


  43. Dataset df = spark.createDataFrame(persons, Person.class);


  44. /*

  45. +---+----+

  46. |age|name|

  47. +---+----+

  48. | 1| abc|

  49. | 2|test|

  50. +---+----+

  51. */

  52. df.show();


  53. /*

  54. root

  55. |-- age: integer (nullable = false)

  56. |-- name: string (nullable = true)

  57. */

  58. df.printSchema();


  59. SQLContext sql = new SQLContext(spark);

  60. sql.registerDataFrameAsTable(df, "person");


  61. /*

  62. +---+----+

  63. |age|name|

  64. +---+----+

  65. | 2|test|

  66. +---+----+

  67. */

  68. sql.sql("SELECT * FROM person WHERE age>1").show();


  69. sc.close();

  70. }


  71. }

到此,关于"Spark SQL怎么用"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

学习 更多 帮助 实用 接下来 文章 方法 理论 知识 篇文章 网站 资料 跟着 问题 好用 实践 解答 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 金融科技创新监管互联网金融 互联网 科技 互联网 科技公司 科技服务与互联网 互联网 科技创新 卓越科技(互联网 ) 中正互联网科技招聘 汉立互联网科技有限公司联系电话 成都玖崟互联网科技有限公司乐商圈怎么样 昭通云南众福互联网科技有限公司 世界互联网科技公司市值排名 世界互联网领先科技成果获奖 云鲸互联网络科技有限公司 互联网科技接地气 互联网科技企业商标注意事项 北京天晋互联网科技有限公司 科技互联网专业工作会议发言稿 北京品多多互联网科技有限公司 银川新华互联网科技学校招聘 山东亿川互联网科技有限责任公司 江苏根荣互联网科技 互联网高科技企业 知域互联网科技有限公司大骗子 浙南科技城互联网大厦建设工程 世界互联网领先科技成果获奖 互联网与数字科技关系 江苏互联网科技小贷 深圳互联网科技园地址 广东猫王互联网科技有限公司电话 颐高云石互联网科技
0