外表分析

更新时间:
复制为 MD 格式

本文介绍如何使用PolarDB MySQL列存引擎读取OSS外表数据,实现列存表与外表的联合分析。

背景

随着业务发展,数据规模持续增长带来存储成本压力,业务逻辑日趋复杂对计算性能提出更高要求,同时数据也需要在多个分析系统之间自由流转。使用列存引擎读取OSS外表数据,可有效应对上述挑战:

  • 低成本存储:OSS作为云原生存储方案,性价比高。

  • 高性能计算:列存引擎提供极速查询与灵活的分析能力。

  • 开放互通:ORC、Parquet等开放格式兼容性广、压缩比高,便于跨系统数据流转。

文件外表

外部表(External Table)是一种特殊的表类型,其数据实际存放于数据库外部的存储系统(如对象存储、HDFS、ODPS等),数据库仅保存元数据与访问路径。您可通过标准SQL查询外部表,从而实现对异构数据源的统一访问。

PolarDB支持以外部表的形式接入外部数据源。与普通表不同,PolarDB仅保存外部表对应的元数据,查询时直接向数据所在的外部数据源发起请求,数据本身不存储在PolarDB中。通过文件外部表,您可以直接查询外部存储系统上ORCParquet格式的数据文件,无需将数据导入数据库,也无需依赖任何Metastore服务。

有关文件外表的详细信息和使用方法,请参见分析外部OSS上的数据

列存表与外表联合分析

列存表是PolarDB的列式存储引擎,可以与外表进行混合分析,实现在PolarDB集群上高性能计算多个来源的数据。通过列存表与外表的联合分析,您可以将PolarDB内部的列存数据与OSS上的外部数据进行关联查询和聚合分析,无需将外部数据导入数据库,即可在同一SQL中完成跨数据源的分析任务。

image

性能测试

ORCParquet文件外表的性能测试结果,请参见性能测试