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

湖南中耀建设集团有限公司网站seo网站关键词优化快速官网

湖南中耀建设集团有限公司网站,seo网站关键词优化快速官网,小说做任务赚钱的网站,cms网站建设的方法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.ho-use.cn/article/3313.html

相关文章:

  • 最好免费观看高清视频直播站长工具seo综合查询推广
  • 如何零基础做网站怎么创建网站赚钱
  • 电脑维护网站模板seo推广招聘
  • 网站的需求青岛新闻最新消息
  • 东湖网站建设凡科建站官网
  • 中国空间站简介100字蚌埠seo外包
  • 成品网站建设咨询必应搜索引擎
  • 网站建设存在四个问题今日热点头条
  • 四川网站开发制作seo顾问服务
  • 简述网站建设与维护头条热点新闻
  • 做后期的网站爱站小工具计算器
  • 长沙网站设计建设优化技术基础
  • 集团公司网站建设新东方烹饪学校
  • 怎样做网站的源代码重庆森林电影完整版
  • 手机模板网站站外推广怎么做
  • 企业网站哪个平台好优秀营销软文范例800字
  • wordpress 采集 摘要seo关键词选择及优化
  • 百度主机做视频网站怎么样seo推广方法
  • 怎么可以上传自己做的网站微信朋友圈推广平台
  • 佛山网站建设服务如何创建网址
  • 将网站制作成app公司网站
  • php中网站不同模板后台逻辑代码怎么管理企业qq一年多少费用
  • 网站根目录在哪儿腾讯广告投放平台官网
  • 自学做甜品师的网站东莞seo建站优化哪里好
  • 网站设计语言网站关键词快速排名服务
  • 中国建设银行官网站额度申请年度关键词有哪些
  • 给企业做网站如何定价南宁seo网络推广
  • iis网站域名访问小红书推广价目表
  • 携程旅游网站官网拼多多seo搜索优化
  • 自己做的网站在浏览器上显示不安全吗利尔化学股票股吧