2024年2月29日
压缩,可以将多个小文件合并为大文件提高读性能,几种压缩策略:binpack(简单合并)、sort、z-order(适合多列查询),Expire Snapshots 可以删除过期的数据文件,还提供了参数可以自动删除manifest 文件、保留多少manifest文件,以及清除orphan 文件
阅读全文
2024年2月28日
Copy-On-Write适用的场景和优缺点,Merge-On-Read的 position deletes、equality deletes 原理,以及适用的场景,优缺点,如何选择COW和MOR,以及如何配置他们
阅读全文
2024年2月26日
介绍了存储的结构,元数据层包括:manifest files、manifest list, metadata files,catalog指向最新的 metadata files;每一层都可以做裁减,包括数据层,介绍了读取、time travel过程,是自上往下的读取和裁减过程;写入过程:插入、删除、merge过程,写 过程是自下而上的,通过 切换catalog指向,利用OCC控制并发,实现ACID
阅读全文
2024年2月25日
branch 和 tag,schema、partition、sort order演化,快照的维护(合并,删除孤儿文件等),manifest list 和 manifest files 两级布局;Hive的问题以及iceberg的优化:list是O(1)的,细粒度的partition,OCC,并发冲突,单节点的plan;Hidden partitioning,Time travelVersion rollback。支持:Spark、Flink、Hive、Trino、ClickHouse、Presto、Dremio、starrocks、Athena、EMR、Impala、Dori
阅读全文
2024年2月19日
1、工具选择标准:策略标准、定价标准、数据功能、数据源/目标、数据契约; 工具偏好:批加载、CDC、连接器、基于代码; 3、摄取工具选择策略
阅读全文
2024年2月2日
High-Level Overview of the internal tech stack
阅读全文
2024年1月15日
data ingestion 的几种架构:Unified Data Repository、Data Virtualization、ETL、ELT、Stream Processing
阅读全文
2024年1月14日
Hive MetaStore的实现原理,Hive Thrift 客户端和服务端的实现,MetaCat对 HMS 的兼容以及优化,Spark调用 HMS 的逻辑
阅读全文
2024年1月10日
讨论了 LakeHouse 系统设计的难点,在不可变高延迟的对象存储之上,增加事务特性,三大系统都使用了OCC做隔离,事务实现都用了MVCC,源数据库管理delta和hudi用了表格式,iceberg用了层次存储(单节点处理),数据更新三者都支持CoW(适合读多写少场景),hudi和iceberg支持MoR(适合写多的场景)
阅读全文