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

网站建设报告心得体会湖南网站seo找行者seo

网站建设报告心得体会,湖南网站seo找行者seo,做服装网站,深圳网站建设制作视频软件Clickhouse新版本JSON字段数据写入方式 在Clickhouse版本22.3.1版本以上,提供了针对JSON格式数据的新的数据类型:JSON,从而实现了存储此类数据由原先的结构化表结构,更新为现在的半结构化表存储。对于新增字段,某些同…

Clickhouse新版本JSON字段数据写入方式

在Clickhouse版本22.3.1版本以上,提供了针对JSON格式数据的新的数据类型:JSON,从而实现了存储此类数据由原先的结构化表结构,更新为现在的半结构化表存储。对于新增字段,某些同学刚接触可能会比较陌生,这里介绍一些基本的原理和操作相关的介绍。

更多的关于clickhouse新版本的JSON字段类型介绍,可以参考下面这篇博文:

Clickhouse JSON表字段方法详解(处理半结构化/结构化数据方法)

本文主要介绍当表字段类型定义为JSON格式后,数据插入的多种方法

准备工作:

创建一张数据表json_test,其中建表语句如下所示:

CREATE TABLE test.mail_ods.json_test
(`repo_name` String,`event` String,`data` Object('json'),`accounts` Array(String)
)
ENGINE = MergeTree
ORDER BY tuple()

一、以INSERT VALUES方式插入

利用Clickhouse的HTTP请求方式进行数据插入:

echo "INSERT INTO test.json_test values ('pioug/yield-data', 'PushEvent', '{\"os\": \"android\", \"carrier\": \"5G\"}', ['{\"account\":\"lisi\", \"active\":false}'])" | curl -u default:123 http://localhost:8123/ --data-binary @-

这里需要注意的是,以values方式插入时,要记得在对应JSON字段的值前后加上单引号,否则会报错:

cho "INSERT INTO mail_ods.json_test values ('pioug/yield-data', 'PushEvent', {\"os\": \"android\", \"carrier\": \"5G\"}, ['{\"account\":\"lisi\", \"active\":false}'])" | curl -u default:123 http://localhost:8123/ --data-binary @-
Code: 62. DB::Exception: Cannot parse expression of type Object('json') here: {"os": "android", "carrier": "5G"}, ['{"account":"lisi", "active":false}'])
: While executing ValuesBlockInputFormat. (SYNTAX_ERROR) (version 22.4.6.53 (official build))

同时,要记得对字段内的key-value值加反斜杠进行转义。

二、指定Format格式插入

Clickhouse支持的多种Format输入输出格式包括:

Formats for Input and Output Data

对于JSON类型格式的输入输出可以参考

Importing and exporting JSON data in ClickHouse

这里我们给出示例,对于JSON数据,如果想要实现每个key对应表中的字段,value值作为表中的字段值存入的话,需要使用Format JSONEachRow格式来插入数据:

JSON数据

{"repo_name": "pioug/yield-data","event": "PushEvent","data": {"os": "android","carrier": "5G"},"accounts": ["{\"account\":\"lisi\", \"active\":false}"]
}

使用Format JSONEachRow格式插入方式如下所示:

echo 'INSERT INTO mail_ods.json_test Format JSONEachRow {"repo_name": "pioug/yield-data", "event":"PushEvent", "data": {"os": "android", "carrier": "5G"}, "accounts": ["{\"account\":\"lisi\", \"active\":false}"]}' | curl -u default:123 http://localhost:8123/ --data-binary @-

此时需要注意的是,JSONEachRow后面紧跟着的是一个完整的JSON结构的数据,不需要再像insert values时那样加单引号。比如,对于accounts,中括号[]里为了表示String,用的是双引号,而不是之前的单引号。

插入时,会根据key对应表中的字段,value写入表中对应字段的值。

http://www.hkea.cn/news/339796/

相关文章:

  • 北京品牌高端网站建设公司燕郊今日头条
  • 网站制作公司徐州宁波网站seo哪家好
  • 做网站基本费用大概需要多少全媒体运营师报考官网在哪里
  • 网站建设款属于什么科目营业推广策划
  • 建设网站查证书网络广告有哪些形式
  • 分布式网站开发网络销售平台排名
  • 网站建设模板购买品牌seo培训
  • 深圳网站建设 cms网站推广交换链接
  • 标准物质网站建设5118站长工具箱
  • 做一个能注册用户的网站网络推广费用大概价格
  • 网站建设评价东莞谷歌推广
  • php网站后台进不去百度推广入口官网
  • 个人网站一键生成免费推广网站有哪些
  • 厦门做网站设计电商seo优化
  • wordpress视频点播seo技术是干什么的
  • 网站推广是怎么做的网络营销专业如何
  • 平面设计线上兼职上海网站seo
  • 个性化网站定制价格今日热点
  • 做网站的艰辛免费个人网站申请
  • 网站改版需要多久网站设计与制作毕业论文范文
  • 深圳横岗网站建设网站建设的推广渠道
  • 有没有什么网站免费做名片2023年新闻小学生摘抄
  • 新网金商网站外链查询工具
  • 网站建设的进度竞价托管选择微竞价
  • 网站快速网站推广怎么做一个公司网站
  • 旅游网站模板htmlseo品牌优化整站优化
  • 方圆网站建设aso优化重要吗
  • 做购实惠网站的意义好用的搜索引擎有哪些
  • 怎么把自己笔记本做服务器做个网站搭建网站基本步骤
  • jeecms做企业网站成都网站建设公司排名