当前位置: 首页 > news >正文

微信借口的网站怎么做安徽新站优化

微信借口的网站怎么做,安徽新站优化,电商十大运营平台,WordPress速度优化2019背景 开发时遇到一个较为复杂的周期需求,为了适配读取各种数据库中的数据并将数据库数据转换为DataFrame并进行后续的开发分析工作,做了如下代码。 在爷们开发这段生产中的代码,可适配mysql,hive,hbase,gbase等等…

背景        

开发时遇到一个较为复杂的周期需求,为了适配读取各种数据库中的数据并将数据库数据转换为DataFrame并进行后续的开发分析工作,做了如下代码。       

        在爷们开发这段生产中的代码,可适配mysql,hive,hbase,gbase等等等等,基本涉及到数据库的情况基本可以进行。可以说是非常之NB!!!!!了

数据流程:

由于该代码片段主要关注数据处理流程,而非实际数据内容,,当然,我也不能把特殊数据给大家展示,后面有时间再造一批test数据吧,因此没有提供样例数据。不过,可以根据实际使用的数据库和表结构,提供相应的样例数据以供测试和验证。

具体的数据自己造就行了,咱这段逻辑时经过大数据量考验的

代码v1:

import org.apache.spark.storage.StorageLevel
import org.apache.spark.sql.functions.{udf,col,date_format}
import scala.util.matching.Regex//2024,lee研发适配,可以说,这段代码的通用性非常高非常NB!!!
//time:202401GZ
// https://blog.csdn.net/qq_52128187?type=blog
//获取数据库中的数据并转为dataframe,可以使hbase,也可以是mysql
val table="数据库传出的数据"
val dfin=inputRDD(table).asInstanceOf[org.apache.spark.sql.DataFrame]
dfin.createOrReplaceTempView(s"`$table`")
dfin.show(3)
val sql_table = "sql条件"
val sql = inputRDD(sql_table).asInstanceOf[String]
println("打印前序导出的sql:  " + sql)//正则结合sql与df,获取最终数据
val regex = new Regex("(?!)from\\s+[^\\s]+")
val actualSql = regex.replaceFirstIn(sql,s"from `${table}`")
println("打印最终sql:"+actualSql)//解析sql
val resultDf = spark.sql(actualSql)
resultDf.show(10,false)

代码V2:

在另一个环境测试时,上面的代码运行时出现了一个bug,如下

org.apache.spark.sql.AnalysisException: 
org.apache.hadoop.hive.ql.metadata.HiveException: Unable to fetch table all_beforexxxxx.Exception thrown when executing query :SELECT DISTINCT 'org.apache.hadoop.hive.metastore.model.MTable' AS 
`NUCLEUS_TYPE`,`A0`.`CREATE_TIME`,`A0`.`LAST_ACCESS_TIME`,`A0`.`OWNER`,`A0`.`OWNER_TYPE`,
`A0`.`RETENTION`,`A0`.`TBL_NAME`,`A0`.`TBL_TYPE`,`A0`.`TBL_ID` FROM `TBLS` `A0` 
LEFT OUTER JOIN `DBS` `B0` ON `A0`.`DB_ID` = `B0`.`DB_ID` 
WHERE `A0`.`TBL_NAME` = ? AND `B0`.`NAME` = ?;

        问题描述:详细排查了一下,是由于解析sql语句时出现了一个bug,但是我在另一个环境这样写是可以解析的,神奇哦,

        问题解决:我是如何解决的呢?一看就是解析表的时候出现问题,定位代码是正则表达式的问题。修改后的代码:

import org.apache.spark.storage.StorageLevel
import org.apache.spark.sql.functions.{udf,col,date_format}
import scala.util.matching.Regex//2024
//2024,lee研发适配,可以说,这段代码的通用性非常高非常NB!!!
//time:202401GZ
// https://blog.csdn.net/qq_52128187?type=blog
//获取数据库中的数据并转为dataframe,可以使hbase,也可以是mysql
val table="数据_tegeXNph"
val dfin=inputRDD(table).asInstanceOf[org.apache.spark.sql.DataFrame]
dfin.createOrReplaceTempView(s"`$table`")
dfin.show(3)//获取sql语句
val sql_table = "sql条件导出_周期"
val sql = inputRDD(sql_table).asInstanceOf[String]
println("打印前序导出的sql:  " + sql)//正则结合sql与df,获取最终数据
// val regex = new Regex("(?!)from\\s+[^\\s]+"),会报错
//org.apache.spark.sql.AnalysisException: org.apache.hadoop.hive.ql.metadata.HiveException: Unable to fetch table all_before_xxx. Exception thrown when executing query : SELECT DISTINCT 'org.apache.hadoop.hive.metastore.model.MTable' AS `NUCLEUS_TYPE`,`A0`.`CREATE_TIME`,`A0`.`LAST_ACCESS_TIME`,`A0`.`OWNER`,`A0`.`OWNER_TYPE`,`A0`.`RETENTION`,`A0`.`TBL_NAME`,`A0`.`TBL_TYPE`,`A0`.`TBL_ID` FROM `TBLS` `A0` LEFT OUTER JOIN `DBS` `B0` ON `A0`.`DB_ID` = `B0`.`DB_ID` WHERE `A0`.`TBL_NAME` = ? AND `B0`.`NAME` = ?;val regex = new Regex("from\\s+(\\S+)") // 做了排查bug修改修改后的正则表达式  
val actualSql = regex.replaceFirstIn(sql,s"from `${table}`")
println("打印最终sql:"+actualSql)//解析sql
val resultDf = spark.sql(actualSql)
resultDf.show(10,false)

http://www.ds6.com.cn/news/46314.html

相关文章:

  • 自己怎么做淘宝客网站吗阿里大数据官网
  • 天津网站建设哪家好如何刷app推广次数
  • wordpress自制游戏seo网站推广主要目的不包括
  • 如何做网站 frontpage贵阳网站建设公司
  • 设计公司的企业使命泉州seo按天收费
  • 进行网站建设视频郑州建网站的公司
  • 深圳高端网站定制建设靠网络营销火起来的企业
  • 建设银行官方网站下载安装公司网络营销策略
  • 熊岳网站在哪做微博seo营销
  • Astra wordpress厦门seo外包
  • 大姚网站建设网站制作流程
  • 4399在线观看免费高清1080搜索引擎网站优化推广
  • 微信公众号推广网站沧州网络推广公司
  • 建设工程安全备案网站近三天重大新闻摘抄
  • 什么在线做动图的网站比较好搜索引擎优化的含义
  • 怎么网站改版百度在线客服人工服务
  • 订阅号可以做微网站吗seo优化主要做什么
  • 网站地图有什么作用自助快速建站
  • 网站如何开通微信支付接口广告联盟论坛
  • 黄岐建网站聊城seo优化
  • app ui设计网站线上推广的方式
  • 什么网站可以做公务员题排名点击工具
  • 网站空间数据现在做推广的新渠道有哪些
  • 网站建设后台怎么修改微商软文推广平台
  • 织梦dedecms教育培训网站模板(内多个插件含测试数据)成都百度
  • 部队网站建设方案简单网页制作模板
  • 网站备案表上面的开办单位写什么网推团队
  • 程序员给女朋友做的网站线上推广渠道主要有哪些
  • 郑州航海路附近网站建设公司百度seo推广价格
  • 小米路由器做网站服务器吗上海app网络推广公司电话