二类电商用网站怎么做H5页面,宿迁经济技术开发区属于哪个区,代理注册公司需要什么条件,WordPress更新最新版本失败文章目录 1、背景描述2、场景分析 1、背景描述 数据仓库的建设通常是为业务和决策服务的。在数仓开发的应用层阶段#xff0c;BI可以直接从主题层/业务层取数#xff0c;而前端需要根据具体的作图需求通过后端查询数据库
作图的指标需要根据主题层/业务层做查询计算#xf… 文章目录 1、背景描述2、场景分析 1、背景描述 数据仓库的建设通常是为业务和决策服务的。在数仓开发的应用层阶段BI可以直接从主题层/业务层取数而前端需要根据具体的作图需求通过后端查询数据库
作图的指标需要根据主题层/业务层做查询计算然后将查询的结果导出到数据库以供前端作图。这个过程可以称为从数据仓库到OLTP数据库的ETL过程
然而在ETL过程中最棘手的问题就是数据类型兼容性问题简单来说就是如何做数据类型转化因为ETL的输入和输出是不同的系统
ETL的实现通常需要专门的工具或软件例如DataX、Sqoop、Kettle等。当然在湖仓一体化的环境下ETL的成本将极大降低因为我们可以直接使用SQL实现
例如如何将Hive表的分区字段string通过SQL插入PG表对应的时间戳timestamp字段
2、场景分析 在PostgreSQL中时间戳timestamp类型主要用于存储日期和时间的值包括年、月、日、时、分、秒和小数秒
例如我们已经创建了一个应用层PG表该表包含了某个作图图表的一些指标字段和一个时间戳timestamp字段现在需要将Hive查询计算的结果插入到该PG表其中分区string字段对应到PG表的时间戳字段timestamp
如何进行转换以确保插入成功
在PostgreSQL中根据声明日期时间类型的方式只需要使用日期时间的字符串格式yyyy-MM-dd HH:mm:ss直接在字符串的前面使用数据类型进行转换就可以了
insert into pg_table (col1,col2,...,stat_date)
select
col1,
col2,
...,
timestamp (2024-06-01 00:00:00) as stat_date
from hive_table因此我们只需要将Hive的分区字段转换成yyyy-MM-dd HH:mm:ss格式并使用timestamp声明即可完成插入
总的来说湖仓一体化场景下ETL的成本大大降低了但是企业对用工人员的要求更高了工人不仅需要熟悉数据仓库还需要熟悉一些常见的数据库以及它们之间如何融合使用