ClickHouse--10--临时表、视图、向表中导入导出数据

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 1.临时表
    • 1.1 特征
    • 1.2 创建一个临时表
  • 2.视图
    • 2.1 普通视图
    • 2.2 物化视图
  • 3.向表中导入导出数据
    • 3.1 案例


1.临时表

在这里插入图片描述

1.1 特征

ClickHouse 支持临时表,临时表具备以下特征:

  • 当会话结束或者链接中断时,临时表将随会话一起消失
  • 临时表仅能够使用 Memory 表引擎,创建临时表时不需要指定表引擎。
  • 无法为临时表指定数据库。它是在数据库之外创建的,与会话绑定。
  • 如果临时表与另一个表名称相同,那么当在查询时没有显式的指定 db 的情况下,
    将优先使用临时表。
  • 对于分布式处理,查询中使用的临时表将被传递到远程服务器。

1.2 创建一个临时表

在这里插入图片描述
示例
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.视图

ClickHouse 中视图分为普通视图和物化视图,两者区别如图所示

在这里插入图片描述
在这里插入图片描述

2.1 普通视图

  • 普通视图不存储数据,它只是一层 select 查询映射,类似于表的别名或者同义词,能简化查询,对原有表的查询性能没有增强的作用,具体性能依赖视图定义的语句,
  • 当从视图中查询时,视图只是替换了映射的查询语句。普通视图当基表删除后不可用。
    在这里插入图片描述
    示例:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

2.2 物化视图

  • 物化视图是查询结果集的一份持久化存储,所以它与普通视图完全不同,而非常趋近于表。”查询结果集”的范围很宽泛,可以是基础表中部分数据的一份简单拷贝,也可以是多 表 join 之后产生的结果或其子集,或者原始数据的聚合指标等等。
  • 物化视图创建好之后,若源表被写入新数据则物化视图也会同步更新,POPULATE 关键字决定了物化视图的更新策略,若有 POPULATE 则在创建视图的过程会将源表已经存在的 数据一并导入,类似于 create table … as,若无 POPULATE则物化视图在创建之后 没有数据,只会在创建只有同步之后写入源表的数据,clickhouse 官方并不推荐使用 populated,因为在创建物化视图的过程中同时写入的数据不能被插入物化视图。
  • 物化视图是种特殊的数据表,创建时需要指定引擎,可以用 show tables 查看。另外,物化视图不支持 alter 操作。
  • 产生物化视图的过程就叫做“物化”(materialization),广义地讲,物化视图是 数据库中的预计算逻辑+显式缓存,典型的空间换时间思路,所以用得好的话,它可以避免 对基础表的频繁查询并复用结果,从而显著提升查询的性能。
    在这里插入图片描述
    示例:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

3.向表中导入导出数据

ClickHouse 中 支 持 多 种 数 据 格 式 数 据 导 入 和 导 出 , 支 持 格 式 有ORC,Parquet,Avro,Protobuf,xml,json,csv 等 , 具 体 操 作 参 照 官 网 :https://clickhouse.com/docs/en/sql-reference/statements/alter/update。

在这里插入图片描述

3.1 案例

  • 下面以向表导入导出 CSV 格式数据为例操作:

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/473182.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自然语言编程系列(四):GPT-4对编程开发的支持

在编程开发领域,GPT-4凭借其强大的自然语言理解和代码生成能力,能够深刻理解开发者的意图,并基于这些需求提供精准的编程指导和解决方案。对于开发者来说,GPT-4能够在代码片段生成、算法思路设计、模块构建和原型实现等方面给予开…

物理层计网

文章目录 前言一、物理层的基本概念1.物理层所要解决的问题2.物理层协议的主要任务 二、物理层下面的传输媒体1.导引型传输媒体2.非导引型传输媒体 三、传输方式1.串行传输和并行传输2.同步传输和异步传输3.单工、半双工、全双工传输 四、编码与调制1.数据通信中的常用术语2.编…

模型 4i(趣味、利益、互动、个性)理论

系列文章 分享 模型,了解更多👉 模型_总纲目录。重在提升认知。以用户为中心营销。 1 模型 4i(趣味、利益、互动、个性)理论的应用 1.1 4i理论在电子商务中的应用 小米公司在其电子商务平台上运用了 4i理论,取得了较好的效果。具体表现如下…

Ansible fetch 模块 该模块用于从远程某主机获取(复制)文件到本地

这里写目录标题 参数实例查看返回结果在这里插入图片描述 参数 dest:用来存放文件的目录 src:在远程拉取的文件,并且必须是一个file,不能是**目录* 实例 ansible slave -m fetch -a src/data/hello.txt dest/data/可以看到一个…

【精选】Java面向对象进阶——接口细节:成员特点和接口的各种关系

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收藏 …

前端开发:Vue框架与前端部署

Vue Vue是一套前端框架,免除原生)avaScript中的DOM操作,简化书写。是基于MVVM(Model–View-ViewModel)思想,实现数据的双向绑定,将编程的关注点放在数据上。简单来说,就是数据变化的时候, 页面会自动刷新, 页面变化的时…

在面试中,如何回复擅长 Vue 还是 React

目录 一、Vue.JS 二、React 三、Vue和React的区别 四、前端开发框架 一、Vue.JS Vue.js(通常简称为Vue)是一个用于构建用户界面的开源JavaScript框架。它采用了MVVM(Model-View-ViewModel)的架构模式,通过数据驱动…

鸿蒙OS跨进程IPC与RPC通信

一、IPC与RPC通信概述 基本概念 IPC(Inter-Process Communication)与RPC(Remote Procedure Call)用于实现跨进程通信,不同的是前者使用Binder驱动,用于设备内的跨进程通信,后者使用软总线驱动…

如何清除谷歌浏览器的缓存?这里有详细步骤

如果你想解决加载或格式化问题,以改善你在谷歌Chrome上的浏览体验,那么清除缓存和cookie是一个很好的开始。以下是删除它们的方式和操作。 删除缓存和cookie时会发生什么 当你访问一个网站时,它有时会保存(或记住)某…

理解并实现OpenCV中的图像平滑技术

导读 图像模糊(也称为图像平滑)是计算机视觉和图像处理中的基本操作之一。模糊图像通常是噪声减少、边缘检测和特征提取等应用的第一步。在本博客中,我们将重点介绍如何使用Python中的OpenCV库应用多种模糊技术。 理论概述: 基本…

ASCII编码的诞生:解决字符标准化与跨平台通信的需求

title: ASCII编码的诞生:解决字符标准化与跨平台通信的需求 date: 2024/2/17 14:27:01 updated: 2024/2/17 14:27:01 tags: ASCII编码标准化跨平台字符集兼容性简洁性影响力 在计算机的发展过程中,字符的表示和传输一直是一个重要的问题。为了实现字符的…

BulingBuling - 《超出α的回报》 [ Better than Alpha ]

超出α的回报 在不断变化的世界中获取超额收益的三个步骤 作者:Christopher Schelling Better than Alpha Three Steps to Capturing Excess Returns in a Changing World By Christopher Schelling 内容提要 《超出α的回报》(2021)鼓励…