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

如何建立新的企业网站河南网站设计价格

如何建立新的企业网站,河南网站设计价格,北京做网站那家好,小学生广告语20条Flink CDC 自定义函数处理 SQLServer XML类型数据方案 1. 背景 因业务使用SQLServer数据库,CDC同步到doris 数仓。对于SQLServer xml类型,doris没有相应的字段对应, 可以使用json来存储xml数据。需要进行一步转换。从 flink 自定义函数入手…

Flink CDC 自定义函数处理 SQLServer XML类型数据方案

1. 背景

因业务使用SQLServer数据库,CDC同步到doris 数仓。对于SQLServer xml类型,doris没有相应的字段对应,

可以使用json来存储xml数据。需要进行一步转换。从 flink 自定义函数入手。

2. 解决方案

  • SQLServer xml 字段如下
<items><item lng="zh-CN" value="银行货到付款" /><item lng="en" value="Bank transfer on delivery" />
</items>
  • doris 存储转换后的json内容
{"item": [{"lng": "zh-CN","value": "银行货到付款"},{"lng": "en","value": "Bank transfer on delivery"}]
}

在这里插入图片描述

  • flink 自定义函数代码

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import org.apache.flink.table.functions.ScalarFunction;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;/*** 将XML转换为JSON*/
public class XmlToJson extends ScalarFunction {private Logger log = LoggerFactory.getLogger(XmlToJson.class);/*** 创建XmlMapper对象用于解析XML*/private final XmlMapper xmlMapper = new XmlMapper();public String eval(String xml) {// 将XML字符串解析为JsonNode对象JsonNode jsonNode = null;try {jsonNode = xmlMapper.readTree(xml);} catch (JsonProcessingException e) {log.error("XML解析失败", e);}// 将JsonNode对象转换为JSON字符串return jsonNode.toString();}
}
  • doris 表
-- GName 为json格式
CREATE TABLE `table1` (`ID` int(11) NOT NULL COMMENT '字典表统一ID',`Name` varchar(600) NULL COMMENT '统一进行字典命名',`GName` json NULL COMMENT '采用xml存储多语言',
) ENGINE=OLAP
UNIQUE KEY(`ID`)
COMMENT '测试表'
DISTRIBUTED BY HASH(`ID`) BUCKETS AUTO
PROPERTIES (
"replication_allocation" = "tag.location.default: 1",
"is_being_synced" = "false",
"storage_format" = "V2",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"disable_auto_compaction" = "false",
"enable_single_replica_compaction" = "false"
);
  • 注册自定义函数 sql调用转换
create temporary function xml_to_json as 'com.zfb.flink.udf.XmlToJson';INSERT INTO flink_doris (`ID`,`Name`, `GName`)
SELECT 
`ID`,`Name`, xml_to_json(`GName`), `TypeID`
FROM table1;
  • doris json使用
selectjson_extract_string(GName, '$.item[0].value') as cn_name,*
fromtable1;  
http://www.yayakq.cn/news/408730/

相关文章:

  • 新闻型网站建设网站建设产品需求文档
  • 网站页面建议长春哪家网站做的好
  • 芜湖网站建设whwzjsapp手机软件开发
  • 重庆报考网北京网站建设乐云seo
  • 网站整合discuz论坛网站关键词优化的步骤
  • 预约网站制作云开发网站
  • 哪个网站可以免费设计房子产品宣传网站模板
  • 网站模板 缓存商标帮别人做网站赚钱
  • 网站建站设计手机怎么弄微信公众号
  • 建设银行网站打不开怎么办服装网站建设运营规划
  • 做网站植入广告赚钱51制作工厂网站
  • 铜仁市住房和城乡建设局网站在线留电话的广告
  • 网站首页网址培训心得体会总结
  • 沈阳 网站建设wordpress 主页位置
  • 订阅号如何做微网站哈尔滨视频制作公司
  • html5网站代码崇仁网站建设推广费用
  • 企业网站建设招标今天发生的重大新闻5条
  • 网站建设试题卷电子商务网站设计岗位的技能要求
  • 做一个旅游网站网站建设设备
  • 搭建网站需要程序专业的商城网站开发
  • 网站开发的相关语言有哪些查询网页怎么制作
  • 我们常见的网站有哪些方面用软件做的网站权限管理
  • 中小型网站建设教程app开发软件外包
  • 服务器建设网站软件wordpress酒吧
  • 住房与城乡建设部违法举报网站宁波无痛人流医院
  • 网站建设与制作教程下载wordpress页面缓慢
  • 邢台手机网站制作浏览器为什么无法打开网页
  • 域名到期与网站打不开什么做网站做个多少钱啊
  • asp.net 建网站外贸网站怎样注册
  • 自考网站建设与管理资料如何做网站优化seo