`
骑猪逛街666
  • 浏览: 140999 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

懒人改善生活之 - 数据入库实时转换

阅读更多
阅读原文请点击:http://click.aliyun.com/m/23939/
摘要: 标签 PostgreSQL , ETL , 数据转换 , 实时转换 , 规则 , 触发器 背景 PostgreSQL是一个功能很强大的数据库,仅仅在数据类型、索引接口的支持方面,就远超各种开源和商业数据库。

标签
PostgreSQL , ETL , 数据转换 , 实时转换 , 规则 , 触发器

背景
PostgreSQL是一个功能很强大的数据库,仅仅在数据类型、索引接口的支持方面,就远超各种开源和商业数据库。

有些用户从其他数据源迁移到PostgreSQL,或者有其他数据源来的数据,大多数是字符串、数字,到了PostgreSQL可以转换为更精准的描述(数据类型),提升性能或功能。

例如

1、经纬度,在其他数据库中可能存成两个字段,分别表示经度和纬度。

PostgreSQL支持geometry类型,支持点、线、面、栅格、TOP等GIS类型。

2、数据范围,在其他数据库中可能存成两个字段,分别表示下限和上限。

PostgreSQL通过range支持数值、时间、IP地址等数据类型的范围。

3、IP地址,在其他数据库中可能存为字符串。

PostgreSQL支持network类型。

4、JSON,在其他数据库中可能存成字符串。

PostgreSQL支持JSON类型。

5、图像特征值、线段、多边形、圆形、UUID、XML、数组等,在其他数据库中可能存成字符串。

PostgreSQL支持以上类型。

6、全文检索,在其他数据库中可能需要借助搜索引擎支持。

PostgreSQL支持全文检索类型。

7、枚举类型,在其他数据库中可能存成字符串。

PostgreSQL支持枚举类型。

那么如何将数据从字符串平滑、实时的在入库阶段转换为PostgreSQL支持的类型呢?

PostgreSQL支持trigger和rule,使用任意方法,都可以做到数据的平滑转换。

rule 转换 例子
数据来源是2个字段表示的经纬度,要求实时转换为geometry类型。

创建来源表结构

postgres=# create table nt(id int, c1 numeric, c2 numeric); 
CREATE TABLE 
创建目标表结构

postgres=# create table nt_geo (id int, geo geometry); 
CREATE TABLE 
对来源表创建规则或触发器,例如

postgres=# create rule r1 as on insert to nt do instead insert into nt_geo values (NEW.id, ST_MakePoint(NEW.c1,NEW.c2)); 
CREATE RULE 
使用来源数据结构,将数据插入来源数据表

postgres=# insert into nt values (1,1,1); 
INSERT 0 1 
数据会自动写入目标表,来源表只是个转换入口,不会落数据

postgres=# select * from nt; 
id | c1 | c2  
----+----+---- 
(0 rows) 
 
postgres=# select * from nt_geo ; 
id |                    geo                      
----+-------------------------------------------- 
  1 | 0101000000000000000000F03F000000000000F03F 
(1 row) 
阅读原文请点击:http://click.aliyun.com/m/23939/
分享到:
评论

相关推荐

    懒人经济变现指南-凯络-201904.pdf

    根据提供的文件信息,“懒人经济变现指南-凯络-201904.pdf”,我们可以推测这份报告主要探讨了如何在“懒人经济”这一新兴市场趋势中寻找商业机会并实现盈利。以下是对该报告可能涉及的关键知识点进行的详细解析。 ...

    5.1声卡懒人KX-VST-效果库安装包

    5.1声卡懒人KX-VST-效果库安装包

    Carat-懒人经济变现指南-2019.4-41页.pdf.pdf

    【懒人经济】是指随着科技发展和生活节奏加快,人们越来越依赖便捷服务,以节省时间和精力,从而催生出一系列满足这种需求的新型商业模式。这一现象在现代社会尤其明显,特别是在年轻人群体中,他们更倾向于通过各种...

    懒人版小学生1-6年级计算题练习v0.2

    《懒人版小学生1-6年级计算题练习v0.2》是一款专为小学生设计的数学练习软件,旨在帮助家长和教师轻松制作和管理计算题,以提高孩子们的口算能力。这款软件在前一版本v0.1的基础上进行了优化和升级,特别针对用户...

    Carat-懒人经济变现指南-4-41页.pdf

    懒人经济变现指南 本篇文章探讨了懒人经济时代的到来和其对消费力的影响。懒人经济时代是指在经济发展和价值观开放的背景下,人们选择性地在某些事情上“懒”一下,并将省下的时间和能量用在了应该“不懒”的地方。...

    我爱GPS论坛-凯立德2012夏季版懒人包 C1388-

    导航地图,凯立德的导航夏季懒人包!最新版是2012年的

    网红食品行业:自热火锅研究——“网红”火锅来袭,懒人群体迎来福利-201027精品报告2020.pdf

    网红食品行业:自热火锅研究——“网红”火锅来袭,懒人群体迎来福利-201027精品报告2020.pdf

    2013年3月27道道通春季版普高清全分辨率懒人包RT-H1A-17AW-K

    【标题】"2013年3月27道道通春季版普高清全分辨率懒人包RT-H1A-17AW-K" 指的是2013年3月27日发布的道道通导航软件的一个特别版本,特别之处在于它是一个“懒人包”,意味着它包含了所有必要的更新和配置,用户无需...

    php懒人函数 自动添加数据

    在这些函数中,数据类型转换是非常重要的一个环节,因为这关乎到数据的准确性和安全性。例如,使用`intval()`和`floatval()`可以避免SQL注入问题,同时确保数值数据的精确性。对于字符串数据,如果允许HTML内容,不...

    DS3622Xs-7.1.1懒人包

    在实际操作中,使用这样的懒人包之前,用户应该确保他们的DS3622Xs设备符合升级条件,比如检查当前运行的系统版本,并阅读官方发布的更新日志,了解新版本带来的改变和改进。此外,执行这类升级操作时,建议先备份...

    懒人版小学生1-6年级计算题练习v0.1

    根据小学数学教材,按不同年级需要的不同题目类型进行编程,不需要输入数据,仅需要点点鼠标即可生成相应年级的计算题。 软件操作流程 1、左侧选择年级 2、点选打印模式或做题模式 3、如果选择打印模式, 3.1、...

    lua 懒人精灵懒人精灵懒人精灵懒人精灵

    懒人精灵懒人精灵懒人精灵懒人精灵懒人精灵懒人精灵

    C2939-C7M03-3921J0S(SP1)凯立德 懒人包

    5. **数据来源**: 一体机,表明这个懒人包是为某种一体化设备定制的。 6. **是否可用**: 真实,这意味着懒人包是真实有效的,可以正常安装使用。 7. **是否平版**: 否,这里可能是指该懒人包不是专为平板电脑...

    ESXI系统专用DS3622xs+7.2-64561(懒人包)

    ESXI系统专用DS3622xs+7.2-64561(懒人包),导入即可使用!

    文件搜索大师 懒人必备神器 Everything-1.4.1.1009.x64 记忆力不佳 快速找文件神器

    文件搜索大师 懒人必备神器 记忆力不佳 快速找文件神器"Everything" 是 Windows 上一款搜索引擎,它能够基于文件名快速定文件和文件夹位置。 您在搜索框输入的关键词将会筛选显示的文件和文件夹。"Everything" 仅...

    Vmware群晖DS918+6.2-25426(懒人包)

    标题中的“Vmware群晖DS918+6.2-25426(懒人包)”指的是在VMware虚拟环境中运行的群晖NAS操作系统套件,版本为6.2-25426。这个懒人包是为简化安装过程而设计的,用户只需解压后导入VMware环境,无需复杂配置即可使用...

    懒人理财APP-Meet组.rp

    懒人理财APP-Meet组.rp

    懒人包:UTF-8的ApacheJMeter_http.jar和ApacheJMeter_core.jar

    Jmeter5.3版本,修改源码RequestViewHTTP.class,字符编码修改为utf-8 ,解决上传文件与录制脚本的中文乱码问题,下载jar文件替换到Jmeter的lib/ext目录下即可,重启jmeter,重新选择上传文件,在请求中设置内容编码...

    懒人专用 - 一键关机 原创工具

    标题中的“懒人专用 - 一键关机 原创工具”表明这是一款专为不喜欢繁琐操作的用户设计的快速关机程序。这个程序可能是通过一个简单的命令行界面或者批处理(bat)脚本来实现一键关机的功能。一键关机功能在日常使用...

    图片切换-懒人图库22222

    懒人图库图片切换 懒人图库图片切换 懒人图库图片切换 懒人图库图片切换 懒人图库图片切换 懒人图库图片切换 懒人图库图片切换 懒人图库图片切换 懒人图库图片切换 懒人图库图片切换 懒人图库图片切换 懒人图库图片...

Global site tag (gtag.js) - Google Analytics