Partition
Partition 类代表 MaxCompute 中的表分区,用于查询分区基本信息和扩展信息。
获取实例
通过 Table 对象获取 Partition 实例:
Partition partition = table.getPartition(new PartitionSpec("dt='20250101'"));
获取 Partition 实例是 lazy 操作,只有调用属性方法时才会加载元数据。分区必须真实存在。
数据加载
Partition 实现 LazyLoad,首次调用属性方法时自动加载元数据。也可手动触发:
partition.reload();
reload() 后默认使用缓存,不会重复加载。
基本信息方法
getPartitionSpec
获取分区规格。
public PartitionSpec getPartitionSpec()
返回值:PartitionSpec 对象
getCreatedTime
获取分区创建时间。
public Date getCreatedTime()
getLastMetaModifiedTime
获取分区元数据最后修改时间。
public Date getLastMetaModifiedTime()
getSize
获取分区存储大小。
public long getSize()
返回值:存储大小(字节)
此值通常不保证与实际占用存储完全一致。
getRecordNum
获取分区数据行数。
public long getRecordNum()
返回值:数据行数;无准确数据时返回 -1
getLifeCycle
获取分区生命周期。
public long getLifeCycle()
返回值:生命周期(天)
getLastDataModifiedTime
获取分区数据最后修改时间。
public Date getLastDataModifiedTime()
getLastDataAccessTime
获取分区数据最后访问时间。
public Date getLastDataAccessTime()
getStorageTierInfo
获取分区存储分层信息。
public StorageTierInfo getStorageTierInfo()
isExstore
判断分区是否为 Exstore 存储。
public boolean isExstore()
扩展信息方法
扩展信息在首次调用时加载,无法通过 reload() 刷新(因为这些信息通常随分区创建而确定)。
isArchived
查看分区是否进行过归档(archive)操作。
public boolean isArchived()
返回值:true 已归档;false 未归档
getPhysicalSize
获取分区所占磁盘的物理大小。
public long getPhysicalSize()
返回值:物理大小(字节),为估计值
getFileNum
获取分区占用文件数。
public long getFileNum()
返回值:文件数量,为估计值
getReserved
获取扩展信息的保留字段。
public String getReserved()
返回值:JSON 字符串
getClusterInfo
获取 Cluster 信息。
public ClusterInfo getClusterInfo()
getCdcSize
获取 CDC 数据大小。
public long getCdcSize()
getCdcRecordNum
获取 CDC 数据行数。
public long getCdcRecordNum()