全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
E-MapReduce

银行员工信息查询示例

更新时间:2017-06-07 13:26:11

段落1创建临时表

  1. %spark
  2. import org.apache.commons.io.IOUtils
  3. import java.net.URL
  4. import java.nio.charset.Charset
  5. // Zeppelin creates and injects sc (SparkContext) and sqlContext (HiveContext or SqlContext)
  6. // So you don't need create them manually
  7. // load bank data
  8. val bankText = sc.parallelize(
  9. IOUtils.toString(
  10. new URL("http://emr-sample-projects.oss-cn-hangzhou.aliyuncs.com/bank.csv"),
  11. Charset.forName("utf8")).split("\n"))
  12. case class Bank(age: Integer, job: String, marital: String, education: String, balance: Integer)
  13. val bank = bankText.map(s => s.split(";")).filter(s => s(0) != "\"age\"").map(
  14. s => Bank(s(0).toInt,
  15. s(1).replaceAll("\"", ""),
  16. s(2).replaceAll("\"", ""),
  17. s(3).replaceAll("\"", ""),
  18. s(5).replaceAll("\"", "").toInt
  19. )
  20. ).toDF()
  21. bank.registerTempTable("bank")

段落2查询表结构

  1. %sql
  2. desc bank

段落3查询年龄小于30各年龄段员工人数

  1. %sql select age, count(1) value from bank where age < 30 group by age order by age

段落4 查询年龄小于等于20岁的员工信息

  1. %sql select * from bank where age <= 20
本文导读目录