阿里云ACP认证-数据仓库

数据仓库

Kappa架构:将实时和离线代码统一(优化lambda架构),但是不好修正数据,开发周期长,成本浪费,对于历史数据的高吞吐量力不从心
原一代数据仓库:

  • 离线:hive+maxcompute
  • 实时:clickhouse+driud
  • 整合离线和实时:drill+presto
  • 保存:mysql+redis
  • 最后API

下一代:

  • 要实时,很实时
  • 离线和实时一体化,减少数据移动
  • 通用性,要解耦
  • 云原生,标准且生态
特点数据库缺点
支持事务+ACIDMysql+presetSQL弹性伸缩难做到PD级别,且不能做复杂查询
分析加速,分布式presto+druid+hive+clickhouse…面向分析师
面向服务产品,高并发,查询简单hbase+redis+casandra

既可以支持分析也可以支持事务:HTAP混合事务分析系统

  • 需要事务机制保证ACID + 适合模型简单,简单分析场景,TP解决AP问题

既可以分析也可以服务:HSAP服务/分析一体化:Hologres

  • 无事务开销(分布式锁、同步)
  • 以数据仓库模型(抽象、服用、标准)解决数据服务问题

下一代架构

Hologres

产品特性:

  • 分析服务一体化:point(点查询hbase/redis遇到的) /Ad-hoc(即席分析clickhouse)/OLAP(联机分析) 分析
  • 以实时为中心:很快,数据实时写入和更新,与Flink原生集成,写入即可见
  • 计算存储分离:存储资源和计算资源分离部署并独立扩展+和Maxcompute无缝打通
  • 开放生态:兼容PF生态+对接PG开发工具+对接BI

Flink+hologres组合:实时大屏等
在这里插入图片描述
hologres:报表等离线加速
在这里插入图片描述

Flink+hologres+maxcompute:数据中台+精准营销+多维分析
在这里插入图片描述

Hologres架构原理

计算和存储相分离
逻辑架构图
计算:

  • 接入节点Frontend(FE):SQL认证解析和优化,可以包含多个,兼容postgres11
  • worker:执行引擎HQE(hologres query engine,极致查询)/PQE(postgres query engine,兼容postgres)/SQE(对接maxcompute,本地兼容访问maxcompute)+存储引擎(SH,shard,CURD)+缓存+调度(HOS轻量级)
  • MetraService(管理元数据信息,同时提供给FE)+Holo Master(拉起Worker)

存储:

  • 盘古文件系统
  • 数据湖

SQL发送请求-frontend解析分发-worker执行-走不同路径-SE存储获取数据,合并后返回给FE
(点查直接搜Fixed FE)
在这里插入图片描述

HSAP挑战和Hologres应对策略
特点

存储计算分离:三种
存储使用盘古
hologres存储
流批统一:底层支持行(PK)、列(OLAP)、行列共存
在这里插入图片描述
执行引擎+优化器
在这里插入图片描述
名词解释:
在这里插入图片描述

hologres开发工具:
在这里插入图片描述

PSQL客户端
在这里插入图片描述
JDBC连接hologres
在这里插入图片描述

数据同步

支持多种异构数据源的离线、实时写入
在这里插入图片描述

实时写入数据到hologres
进入hologres控制台–建库建表(1)-进入实时计算Flink控制台-作业开发-新建作业-创建原表和目标表(2)-执行-上线-运维-进入作业运维可以看到提交的作业-启动作业即可-在holoweb控制台查看是否成功(3)
(1)create table if not exists test1(a int ,b bigint ,c text,d timestamp);
(2_1)create temporary table datagen_source(a int ,b bigint,c string,proctime as proctime()) with ('connector'='datagen')flink随机源
(2_2)create temporary table holo_sink(a int,b bigint,c varchar,d timestamp) with ('connector'='hologres','endpoint'='XXX(hologres实例列表控制台查看)','username'='XX','password'='XX','dbname'='XX','tablename'='test1(上面建的表)')holo目标表
(2_3)insert into holo_sink select * from datagen_source;数据实时写入目标表
(3)select * from test1 order by d limit 2;/select count(1) from test1;
在这里插入图片描述

Maxcompute离线加速查询

单表创建/批量外表创建
在这里插入图片描述
dataworks控制台

  • 数据开发
  • 临时查询-新建数据源
  • 创建表并插入数据
create table if not exists odps_test(
shop_name string,
customer_id string,
total_price int
)
partitioned by (
sale_date string
)
#插入数据
insert into odps_test partition(sale_date='20221111') values('a','张三',50),('b','李四',55);# 查看数据
read odps_test;
  • 创建holoweb外部表(元数据管理可视化创建/sql创建)
create foreign table t_odps(shop_name text,customer_id text,total_price int8,sale_date text
)
server odps_server
options(project_name 'XXX项目空间名',table_name 'odps_test');# 验证是否创建,相应会很快,dataworks慢,hologres加速查询!
select * from t_odps;
  • 外表完成加速查询完成

COPY命令导入导出数据

在这里插入图片描述
在psql里面,连接后测试copy命令

#\d查看数据表
#建表
create table copy_test(
id int,
age int,
name text
);
# 从控制台(stdin)输入数据并复制到表
copy copy_test from stdin with delimiter as ',' null as '';
# 验证
select * from copy_test;#从txt文件导入数据
cmd
psql -U XXX -p 80 -h XX -d X数据库名X -c "copy copy_test from stdin with delimiter ','; " < X文件路径X#COPY N,代表写入了多少条数据# 下载数据到本地
psql
\copy (select * from copy_test) to '本地路径/写入OSS';#下载数据到OSS
psql/HoloWEB SQL编辑器
\copy (select * copy_test limit 2) to program '
hg_dump_to_odd
--AccessKeyId XX
--AccessKeySecret XX
--BucketName XX
--DirName X路径X
--FileName X文件名X
--BatchSize X多少记录X
'
# 最后到OSS查看验证即可

Hologres数据开发

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

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

相关文章

WebRTC(五):TURN协议

TURN&#xff08;Traversal Using Relays around NAT&#xff09;协议是一个网络协议&#xff0c;旨在解决 NAT&#xff08;网络地址转换&#xff09;和防火墙 环境下的 UDP/TCP通信问题。它通常与 STUN 和 ICE 协议一起使用&#xff0c;广泛应用于 WebRTC、SIP 和视频会议等实…

Python 的内置函数 hasattr

Python 内建函数列表 > Python 的内置函数 hasattr Python 的内置函数 hasattr() 用于检查一个对象是否具有指定的属性或方法。该函数的语法为&#xff1a; hasattr(object, name)参数说明&#xff1a; object&#xff1a;要检查的对象&#xff0c;可以是任何 Python 对象…

docker使用技巧之把扩展卷命名变成有意义

背景 之前使用别人的镜像之后&#xff0c;启动docker后发出现了一堆看不懂名称的扩展卷 eg&#xff1a;集群查看 扩展卷查看 这个时候如果有很多集群需要清理扩展卷就很麻烦&#xff0c;不知道是哪个集群的 操作步骤 可以实现的分析&#xff1a;这个扩展卷的信息应该是和…

《博物通书》《博物新编》与满清历史篡改

《博物新编》作为近代西方科技输入中国的首部著作&#xff0c;其问世犹如一颗投入平静湖面的巨石&#xff0c;在 19 世纪中期的中国激起层层涟漪&#xff0c;对中国近代科学发展产生了多维度、深层次的影响。它不仅是知识传播的载体&#xff0c;更是推动中国科学从传统走向近代…

【入门】【例18.1】 睡眠

| 时间限制&#xff1a;C/C 1000MS&#xff0c;其他语言 2000MS 内存限制&#xff1a;C/C 64MB&#xff0c;其他语言 128MB 难度&#xff1a;中等 分数&#xff1a;100 OI排行榜得分&#xff1a;12(0.1分数2难度) 出题人&#xff1a;root | 描述 一个人只有每天睡眠时间到达 8…

DAY 38 Dataset和Dataloader类

知识点回顾&#xff1a; Dataset类的__getitem__和__len__方法&#xff08;本质是python的特殊方法&#xff09;Dataloader类minist手写数据集的了解 作业&#xff1a;了解下cifar数据集&#xff0c;尝试获取其中一张图片 import torch import torch.nn as nn import torch.o…

【Kubernetes】以LOL的视角打开K8s

前言 对于大部分后端程序员乃至于非后端程序员来说&#xff0c;在当前的云原生时代&#xff0c;Kubernetes&#xff08;后称K8s&#xff09;都是绕不开的一项技术&#xff1b;同时&#xff0c;对于这个时代的程序员来说&#xff0c;“英雄联盟”&#xff08;后称LOL&#xff0…

UE5 游戏模板 —— FirstShootGame

UE5 游戏模板 —— FirstShootGame 前言一、GameMode二、组件1.ShooterPickUpComponent单播多播 2.ShooterWeaponComponent附着武器开火 3.小结4.ShooterProjectile初始化碰撞受击检测 三、Character初始化输入移动 总结 前言 有了前两个俯视角游戏的基础让我们来看看相对复杂…

国家级与省级(不含港澳台)标准地图服务网站汇总

在先前的文章中&#xff0c;介绍了部分省级的标准地图服务网站可以下载各个区县近几年、不同要素的标准地图&#xff08;链接&#xff1a;国家与省市县 标准地图服务网站 审图号地图下载&#xff09;&#xff0c;但是当时只汇总了部分省级的标准地图服务网站。 这两天看到了一个…

前端开发面试题总结-vue3框架篇(一)

文章目录 Vue3高频问答一、vue2/vue3中常用的构建工具和脚手架分别是什么? 有什么区别?二、请说一说vue2和vue3的区别&#xff1f;三、请说一说vue2和vue3响应式原理的区别&#xff1f;四、vue3 如何定义响应式数据?五、说一说你对vue3中的setup函数?六、说一说vue3中的路由…

【LLM06---相对位置编码】

文章目录 相对位置编码经典式XLNET式T5式DeBERTa式 相对位置编码 上一节我们介绍了绝对位置编码&#xff0c;这一节我们来看相对位置编码&#xff0c;也就是用相对位置信息来表示&#xff0c;之前每一个token的位置式通过一个绝对的位置向量来表示的&#xff0c;现在我们在计算…

纯跟踪算法本质解密:航向角偏差=预瞄角?数学证明与工程实践

定义关键问题 在深入纯跟踪算法核心前&#xff0c;必须澄清一对容易被混淆但至关重要的概念&#xff1a; 概念坐标系物理意义计算方式航向角偏差(α_global)全局坐标系车辆航向与预瞄点方向的夹角预瞄点方位角 - 车辆航向角预瞄角(α_body)车身坐标系预瞄点相对于车辆纵轴的夹…

自动驾驶叉车在仓库环境中是否安全?

随着自动驾驶叉车的兴起&#xff0c;仓库运营持续演进。叉车自动化技术的引入使仓库设施变得更快、更安全且更具成本效益。然而一个关键问题依然存在&#xff1a;它们在繁忙的仓库环境中是否安全&#xff1f; 一 、什么是自动驾驶叉车&#xff1f; 自动驾驶叉车&#xff0c;也…

Neo4j操作指南:修改节点数据与新增节点属性

Neo4j操作指南&#xff1a;修改节点数据与新增节点属性 引言 Neo4j作为领先的图数据库&#xff0c;提供了灵活的数据操作方式。在实际应用中&#xff0c;我们经常需要修改已有节点的数据或为节点添加新属性。本文将详细介绍如何使用Cypher查询语言在Neo4j中完成这些操作&…

AI大模型学习之基础数学:微积分在AI大模型中的核心-梯度与优化(梯度下降)详解

微积分在AI大模型中的核心:梯度与优化(梯度下降) 人工智能(AI)大模型的训练和优化依赖于数学基础,其中微积分、线性代数和概率统计构成了其理论核心。微积分在AI中的核心作用在于提供优化工具,尤其是通过梯度和梯度下降方法,帮助模型在高维参数空间中找到损失函数的最…

记录tweenjs踩坑

初次上手tweenjs&#xff0c;试了很多示例代码都不生效&#xff0c;结果在html中生效&#xff0c;在vue3的项目中怎么都不生效 <!DOCTYPE html> <html lang"en"><head><title>Tween.js / simplest possible example!</title><meta…

PINA开源程序用于高级建模的 Physics-Informed 神经网络

​一、软件介绍 文末提供程序和源码下载 PINA 是一个开源 Python 库&#xff0c;旨在简化和加速科学机器学习 &#xff08;SciML&#xff09; 解决方案的开发。PINA 基于 PyTorch、PyTorch Lightning 和 PyTorch Geometry 构建&#xff0c;提供了一个直观的框架&#xff0c;用…

一种对外IP/MAC地址收敛的软硬件系统

----------原创不易&#xff0c;欢迎点赞收藏。广交嵌入式开发的朋友&#xff0c;讨论技术和产品------------- 今天发一篇五年前的文章&#xff0c;不调单板。对以太网和交换片的较多理解&#xff0c;对系统级的优化。 大部分的网络设备&#xff0c;都由多种单板组成&#x…

【flink】 flink 读取debezium-json数据获取数据操作类型op/rowkind方法

flink 读取debezium-json数据获取数据操作类型op/rowkind方法。 op类型有c&#xff08;create&#xff09;,u&#xff08;update&#xff09;,d&#xff08;delete&#xff09; 参考官网案例&#xff1a;此处的"op": "u",就是操作类型。 {"before&qu…

某手游cocos2dlua反编译

一、获取加载的luac文件 通过frida hook libccos2dlua.so 的luaL_loadbuffer函数对luac进行dump js代码如下&#xff0c;得到dump后的lua文件 // 要加载的目标库名 var targetLibrary "libcocos2dlua.so"; var dlopen Module.findExportByName(null, "dlope…