返回首页
搜 索
400-77-456-22
英米加集团
领先RFID产品与物联网解决方案专家
INMIGA group
智慧城市
智能交通
德歌:PostgreSQL独孤九式搞定物联网
来源:英米加集团 | 作者:inmiga | 发布时间: 3558天前 | 2747 次浏览 | 分享到:

  0.375

  (1 row)

  select * from tbl where info ~ '^???6888$';

  select * from tbl where info ~ '^???688?$';

  PostgreSQL 这一特性,也是其广泛地用于公安刑侦、车牌、地址、邮箱等查询中。

  破气式 - 搞定大数据处理能力


 

  图十 破气式 - 搞定大数据处理能力

  随着数据量的增大,会衍生出非常多的问题。在PostgreSQL采取了以下几种方式处理大数据:

  对于单机节点,采用基于CPU和GPU的计算;

  PostgreSQL 添加了FDW插件用于数据的冷热分离,可以将数据放置在Hadoop或者Spark,通过 PostgreSQL 提供的统一访问接口,实现HTAP(在线与离线处理一份数据);

  支持OLTP分库分表;

  支持读写分离、一主多备、多副本强同步;

  通过级联复制,解决主库压力问题和跨机房的多份数据传输问题;

  服务端编程能力,解决move data带来的网络延迟问题;

  支持多主复制,解决物联网地区节点和中心节点的数据相互同步问题。

  接下来,针对几个特殊的特性具体分析下它们的实现过程:

  FDW - 搞定HTAP


 

  图十一 FDW - 搞定HTAP

  FDW目前仅在开源数据库中支持;对于商用数据库,目前仅SAP商业产品支持类似的功能。FDW可以实现数据的冷热分离和跨界访问。比如,可以将热数据存储在PostgreSQL本地,冷数据存在Hadoop或者Spark、MySQL中,通过PostgreSQL提供的统一的接口完成数据的跨界访问。目前mongodb就在使用PostgreSQL 的FDW来解决BI数据分析的问题。

  数据库端编程 - 搞定网络瓶颈


 

  图十二 数据库端编程 - 搞定网络瓶颈

  在目前的硬件条件下,普通的服务器都能达到上百核,内存达到PB级别。在这种硬件设备下,一台主机就能达到千万级别的QPS。这样就带来了一个问题,在数据库中us级别可处理的数据量,在网络中才传输可能会花费ms的时间。传统的解决方式将业务逻辑放到应用程序端实现,然后将数据库做的尽量简单。现在通过PostgreSQL,可以将代码放到数据库端,PostgreSQL提供了C、Python、R、Perl等语言的开发接口,通过数据库端编程解决数据移动带来的网络RT瓶颈。

电力能源
农林牧渔
航空航天
精益制造
快消零售
智能港口
司法监狱
仓储物流
安监消防
金融通信