sparksql语法,读json
--样本
[hadoop@node1 resources]$ pwd
/home/hadoop/spark-1.5.2-bin-hadoop2.6/examples/src/main/resources[hadoop@node1 resources]$ cat people.json
{"name":"Michael"}
{"name":"Andy", "age":30}
{"name":"Justin", "age":19}[hadoop@node1 resources]$ cat people.txt
Michael, 29
Andy, 30
Justin, 19[hadoop@node1 resources]$ hadoop fs -put people* /test/input--技巧:
tab键会显示所有可执行的命令--测试
[hadoop@node1 spark-1.5.2-bin-hadoop2.6]$ spark-shell --读取json文件
scala> val df=sqlContext.read.json("hdfs://node1:8020/test/input/people.json")
df: org.apache.spark.sql.DataFrame = [age: bigint, name: string]scala> df.show
+----+-------+
| age|   name|
+----+-------+
|null|Michael|
|  30|   Andy|
|  19| Justin|
+----+-------+scala> df.printSchema()                   --desc xx
root|-- age: long (nullable = true)|-- name: string (nullable = true)scala> df.select("age").show()
+----+
| age|
+----+
|null|
|  30|
|  19|
+----+--下面等价scala> df.select("name","age").show() scala> df.select($"name",$"age").show()scala> df.select(df("name"),df("age")).show()          --字段可以用df()括号括起来,要带双引号
+-------+----+
|   name| age|
+-------+----+
|Michael|null|
|   Andy|  30|
| Justin|  19|
+-------+----+scala> df.selectExpr("name", "age as age_old", "abs(age) as age_abs").show+-------+-------+-------+
|   name|age_old|age_abs|
+-------+-------+-------+
|Michael|   null|   null|
|   Andy|     30|     30|
| Justin|     19|     19|
+-------+-------+-------+scala> df.count
res12: Long = 3scala> df.filter(df("age")>21).show         --show是返回字段和表数据
+---+----+
|age|name|
+---+----+
| 30|Andy|
+---+----+scala> df.filter(df("age")>21).collect      --collect是返回集合
res14: Array[org.apache.spark.sql.Row] = Array([30,Andy])       scala> df.groupBy("age").count().show()
+----+-----+
| age|count|
+----+-----+
|null|    1|
|  19|    1|
|  30|    1|
+----+-----+scala> df.agg(max("age"),sum("age"),min("age"),avg("age")).show+--------+--------+--------+--------+
|max(age)|sum(age)|min(age)|avg(age)|
+--------+--------+--------+--------+
|      30|      49|      19|    24.5|
+--------+--------+--------+--------+

sparksql语法,读json相关推荐

  1. python读json文件太大github_GitHub上最火的开源项目是啥|JSON文件实战处理

    Python常见的数据文件格式处理有4种(CSV,JSON,XML.HTML),我们前面已经讲了CSV文件的处理,今天我们来讲一下JSON文件的处理,最后用一个实战小例子,来分析一下程序员中的face ...

  2. JSON语法之JSON 对象

    JSON 对象是一个无序的key/value对的集合.一个对象以 '{' 开始,以 '}' 结束:每个key 和 value 中使用冒号分隔:每个 key/value 对之间使用逗号分隔.如图 1‑4 ...

  3. js读Json,JSON与字符串转化,Java读JSON

    1.JS读JSON 书写AJAX的时候,经常需要解析从服务器返回的一串字符串,这里简单介绍服务器返回字符的两种格式,及JS对它们的解析方法. JSON即JS对象标记(JavaScript Object ...

  4. JSONPath库:使用类似Xpath的语法解析JSON数据

    简介 JSONPath是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,包括:Javascript, Python, PHP 和 Java.JsonPath 对于 JSO ...

  5. Spring Batch之读数据—读JSON文件(二十八)

    一.JSON文件 Spring Batch之读数据-Flat格式文件(二十四)_人--杰的博客-CSDN博客_flat文件 二.项目实例 1.项目框架 2.代码实现 (1)BatchMain.java ...

  6. Hive与SparkSQL语法差异

    一.相同函数差异 1.Spark运行时用到的hash函数,与Hive的哈希算法不同,如果使用hash(),结果和Hive的hash()会有差异 2.Hive和SparkSQL使用grouping se ...

  7. 读json文件并修改数据

    读json文件并修改数据 <html><head><title>读json文件并修改数据</title><meta charset='utf-8' ...

  8. js 语法:JSON.stringify(data, null, 4)

    JSON.stringify(data, null, 4) JSON.stringify() 方法用于将 JavaScript 值转换为 JSON 字符串. JSON.stringify(data, ...

  9. python读json文件中不同的数据类型_怎么使用python提取json文件中的字段

    python中为什么用json有什么作用 python的json模块中如何将变量添加到里面 python的json模块第一个是要打开的文件,第二个是打开的操作,为什么会如果你早认清你在别人心中没那么重 ...

最新文章

  1. 由MessageBox和AfxMessageBox的使用异同所感
  2. android学习之WebView
  3. c语言求标准体重答案,C语言标准体重测试程序,请大家帮我看下,我的代码哪错了?...
  4. python3.10_概述 — Python 3.10.0a2 文档
  5. 一个会“说话”的油箱盖,告诉你每一滴油的去向
  6. Android学习总结(3)——Handler深入详解
  7. 如何查找期刊是否被SCI收录
  8. filter 无效不起作用
  9. AH快递单打印软件3.82免费版
  10. LSTM Networks应用于股票市场探究
  11. MyEclipse在启动了诸如Tomcat等web服务后,控制台信息不显示的问题
  12. 三菱PLC步进伺服控制程序 用三菱plc和威纶触摸屏编写
  13. 2019 原创技术干货整理
  14. 【OpenCV 例程 300篇】249. 特征描述之视网膜算法(FREAK)
  15. 聚合支付排名前十的平台有哪些?
  16. hadoop实战(三) 使用HDFS操作文件
  17. css前端知识分享—页面布局分析
  18. 计算机网络五层协议(TCP/IP)与七层协议(OSI)的关系与区别【计算机网络】
  19. MySQL索引重点问题总结(需要完整脑图的联系我)
  20. 【服务器数据恢复】服务器硬盘进水后服务器崩溃的数据恢复案例

热门文章

  1. catti二级笔译综合能力真题_2017年5月英语二级笔译综合能力试题回忆
  2. Google地图切片TMS格式,本地使用
  3. 格鲁夫12年前惊人的预言,解释了今天美国对中国芯片所做的一切
  4. 2015ccpc——G - Ancient Go
  5. Qt 之QNetworkAccessManager 下载断点续传
  6. Java导出Excel表格出现文件损坏异常解决方案
  7. 大二妹子问锋哥,学Java还是学C,考研还是就业?
  8. linux上同步日历的,Linux命令行上如何使用日历详解
  9. idea Java 文件图标变成 J
  10. 阿里云ACP云计算错题集71-100