用PostgreSQL支持含有更新,删除,插入的实时流式计算
大多数的流式计算产品只支持APPEND ONLY的应用场景,也就是只有插入,没有更新和删除操作。
如果要实现更新和删除的实时流式计算,在PostgreSQL中可以这样来实现。
在此前你可以阅读我以前写的文章来了解PG是如何处理一天一万亿的实时流式计算的:
https://yq.aliyun.com/articles/166
要支持更新和删除,思路是这样的,加一张前置表,这个前置表的某个字段用来记录字段的最终状态,即到达这个状态后,记录不会被更新或删除。
通过触发器来控制什么记录插入到流中同时从前置表删除,什么记录现暂存在前置表。
下面是例子
本文假设flag=2是最终状态,应用层自己来定义这个FLAG。
pipeline=# create table pret1(id serial primary key, info
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
PostgreSQL 物联网黑科技 - 瘦身500倍的索引(范围索引)
在数据库中用得最多的当属btree索引,除了BTREE,一般的数据库可能还支持hash, bitmap索引。 但是这些索引到了物联网,会显得太重,对性能的损耗太大。 为什么呢? 物联网有大量的数据产生和入库,入库基本都是流式的。在使用这些数据时,基本是FIFO,或者范围查询的批量数据使用风格。 btree索引太重,因为索引需要存储每条记录的索引字段的值和寻址,使得索引非常庞大。 另一方面,物联网的大量范围查询和批量处理用法决定了它不需要这么重的索引。 例子: 如下所示,btree索引的空间占比是非常大的。 postgres=# \dt+ tab List of relations Schema | Name | Type | Owner | Size |
- 下一篇
万物共享的物联网架构
前言 作为物联网领域最贴近用户的一个分支,智能家居行业在这两年持续火热。但是,除了智能家居外,物联网领域还有很多重要的组成部分:车联物流、智慧医疗、智慧社区、公共基础服务、智慧农业等。由于物联网的第一批先驱者往往都是从某个具体子行业转型过来的,对于物联网的认知也如盲人摸象,管中窥豹,很难有全局性的眼光。 基于国外物联网大神Daniel Karzel, Hannelore Marginean, Tuan-Si Tran的文章《A Reference Architecture for the Internet of Things》http://www.infoq.com/articles/internet-of-things-reference-architecture,结合作者在实际工作中的几个物联网项目,本文将描述一种物联网领域的层次结构,希望能帮助大家对物联网这个概念有更清晰的了解。 什么是物联网? 物联网的英文名称是”Internet of Things”,也就是我们经常看到的IOT,从字面意思上来看是“物物相连的互联网”。互联网解决的是人人互联的问题,而物联网解决的不仅是物物互...
相关文章
文章评论
共有0条评论来说两句吧...