AnalyticDB PostgreSQL版典型的使用场景如下所示:
- 数据通过实时写入或批量加载方式入库,形成ODS(Operational Data Model)层。典型的数据源包括:MySQL/SQL Server/PostgreSQL/Oracle等OLTP业务数据库,业务App产生的日志数据,在OSS/Hadoop上的归档数据,以及来自Kafka/Flink等系统的流式数据。
- 在库中对ODS层数据进行加工,形成CDM(Common Data Model)和ADS(Application Data Service)层。典型操作包括INSERT INTO SELECT, CREATE TABLE AS等。
- 按业务需求对库中数据进行查询分析,或供下游系统消费处理。典型的查询分析场景包括数据类业务应用,交互式分析,BI报表等。
数据写入加载
AnalyticDB PostgreSQL版的数据入库支持低延时的实时写入和高吞吐的批量加载。
- 实时写入
- 实时写入的具体操作包括insert(on conflict), delete,update,具备高并发低延时特性。典型场景为OLTP数据库(MySQL, SQL Server等)通过阿里云DTS实时同步;业务App实时写入到AnalyticDB PostgreSQL版;Kafka/Flink等消息中间件/流数据系统将数据实时Sink到AnalyticDB PostgreSQL版。AnalyticDB PostgreSQL版通过攒批覆盖写特性和近线性的水平扩展能力,集群整体实时写入性能可达百万级TPS。
- 批量加载
- 批量加载的具体操作包括“copy from CSV文件”, “insert into select from OSS/HDFS/MaxCompute外表”。其中copy操作单并发下可达50MB/s吞吐,支持多并发。而外表导入通过Segment直接读取外部数据源进行加载,整体吞吐可达500MB/s。
数据查询分析
AnalyticDB PostgreSQL版既通过索引排序等特性支持高并发低延时的多维度点查范围查场景,也通过向量化引擎,CBO优化器,列式存储支持大数据量多表关联聚合的复杂分析场景。例如,数据类业务应用对ADS层数据进行快速查询;交互式分析可直接对ODS层,CDM层数据进行即席关联分析;BI报表,大屏展示可利用物化视图等特性加速查询结果。