懒人改善生活之ITeye - AG环亚娱乐集团

懒人改善生活之ITeye

2019-01-11 02:27:41 | 作者: 慕易 | 标签: 支撑,数据库,数据 | 浏览: 1063

阅览原文请点击: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/
版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表AG环亚娱乐集团立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章