Hive On Spark语法

内层对象定义之特殊数据类型

Array

sql 复制代码
DROP TABLE IF EXISTS test_table_datatype_array;
CREATE TABLE test_table_datatype_array
(
	ids array<INT>
)
LOCATION 'test/test_table_datatype_array';

SELECT
	names,
	names[1]
	`array`(names[2],names[3])
	names[5],
	names[-1],
	array_contains(names,'e'),
	array_contains(names,'b')
FROM 
(
	select `array`('a',3,'b','c',4) names
) t;

Map

sql 复制代码
select
	kv,kv["c"],
	kv["e"],
	array_contains(map_keys(kv),"g"),
	array_contains(map_keys(kv),"c")
from 
(
	select `map`("a","b","c","d","e","f") kv
)

Struct

sql 复制代码
select
	obj,
	obj.name
from
(
	select named_struct('name','zhangsan','age',30,'id',1001) obj
) t

mysql中的数据是写在磁盘中的

当修改数据时,会写到内存中,操作系统会周期性的写到磁盘,

但 不安全,所以会再写在binlog(顺写 json)文件中,备份一下,再写到datafile(随机写入)中

相关推荐
2401_8920709816 小时前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
lwx91485216 小时前
Linux-Shell算术运算
linux·运维·服务器
somi716 小时前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
双份浓缩馥芮白16 小时前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
黄昏晓x17 小时前
Linux ---- UDP和TCP
linux·tcp/ip·udp
路溪非溪17 小时前
Linux驱动开发中的常用接口总结(一)
linux·运维·驱动开发
此刻觐神17 小时前
IMX6ULL开发板学习-01(Linux文件目录和目录相关命令)
linux·服务器·学习
2401_8920709817 小时前
【Linux C++ 日志系统实战】高性能文件写入 AppendFile 核心方法解析
linux·c++·日志系统·文件写对象
航Hang*17 小时前
第3章:Linux系统安全管理——第2节:部署代理服务
linux·运维·服务器·开发语言·笔记·系统安全
武子康17 小时前
大数据-263 实时数仓-Canal 增量订阅与消费原理:MySQL Binlog 数据同步实践
大数据·hadoop·后端