SparkSQL 简单测试

来源:互联网 发布:软件管理 编辑:程序博客网 时间:2024/06/06 04:16

其中注册表的方法都在另一篇记配置文件的文章中所示的代码里

/**  * Created by Draven on 2017/11/1.  *  draven1122@163.com  */object CassandraSqlExample extends App {  val ss = getSparkSession  import ss.implicits._  ss.read.format(CASSANDRA_FORMAT).options(cassandraOptions("qiandw_test", "loan_program"))    .load().filter($"funding_target" > 20000000).createOrReplaceTempView("loan_program")  ss.sql("select * from loan_program").show()}/**  * 从sql语句构建  */object CassandraSqlTextExample extends App {  val ss = getSparkSession  import ss.implicits._  ss.read.format(CASSANDRA_FORMAT)    .options(cassandraOptions("qiandw_test", "cash_account"))    .load()    .filter($"balance" > 0).createOrReplaceTempView("cash_account")  ss.sql("select * from cash_account").orderBy("balance").show()}/**  * 连表查询  */object JoinQueryExample extends App {  val ss = getSparkSession  import ss.implicits._  ss.read.format(CASSANDRA_FORMAT)    .options(cassandraOptions("qiandw_test", "cash_account"))    .load()    .createOrReplaceTempView("cash_account")  ss.read.format(CASSANDRA_FORMAT)    .options(cassandraOptions("qiandw_test", "cash_account_detail"))    .load()    .createOrReplaceTempView("cash_account_detail")  ss.sql("select * from cash_account a left join cash_account_detail b on a.acct_id = b.acct ").show(5)}object DifferentDataBaseJoinQueryExample extends App {  registerCassandraTables  registerMySqlTables  //  ss.read.format("jdbc")  //    .options(Map("url" -> "jdbc:mysql://localhost:3306/huangjinxin",  //      "driver" -> "com.mysql.jdbc.Driver",  //      "dbtable" -> "t_user",  //      "user" -> "root",  //      "password" -> "root")).load().createOrReplaceTempView("t_user")  //  //  ss.read.format(CASSANDRA_FORMAT)  //    .options(cassandraOptions("qiandw_test", "cash_account"))  //    .load()  //    .createOrReplaceTempView("cash_account")  getSparkSession.sql("select * from cash_account a right join t_user b on a.state = b.age ").show()}

原创粉丝点击