-
ORC vs Parquet,孰强孰弱?
本文深入探讨了 ORC 和 Parquet 这两种主流数据湖文件格式的异同。从文件结构、类型系统、NULL处理到复杂类型存储,文章全面比较了两种格式的设计理念和实现细节。特别关注了统计信息的存储、随机 IO 性能、Footer 大小以及 Schema Evolution 支持等关键方面。虽然Parquet 在当前市场占据优势,但文章指出两种格式各有千秋,选择应基于具体使用场景。通过这篇深度分析,读…- 272
- 0
-
Apache ORC 加密解析
Apache ORC 支持对列进行加密,且会对该列的统计信息一起加密。同时加密后的文件,即使 reader 没有正确的 master key 也能够正常的查看,只不过看到的都是错误的,被 mask 后的数据。 但是 ORC 的加密只能支持到列,无法精确到复杂类型的子列。如果一个 struct 列是加密列,那么它所有的子列也都会被用相同的密钥加密。 ORC 的密钥分为两个层级,分别是 LocalKe…- 118
- 0
-
-
-
-
Spark-SQL 有用的 SQL
我发现自己每次用 Spark 造 Iceberg 表都要耗费老大的劲,官方文档总是没有一个现成的 Demo,网上也搜索不到,全靠自己琢磨。故在这里记录一下,顺带帮助一下可能需要的人。 本地 Iceberg Spark-SQL 启动 Iceberg: ./bin/spark-sql --packages org.apache.iceberg:iceberg-spark-runtime-3.5_2.1…- 936
- 0
-
HDFS Hedged Read 的利弊分析
HDFS Hedged read 是一种优化 HDFS 客户端读取文件性能的方法。它会在存在慢节点的情况下,通过申请多个内存来提高读取性能。但是,由于 Hedged read 会频繁申请内存,可能会导致内存消耗过大,从而影响系统性能。因此,HDFS 并没有默认开启 Hedged read 功能。在使用 Hedged read 时,需要注意内存消耗的问题,以避免对系统性能造成负面影响。- 641
- 0
-
Trino / StarRocks 阿里云 EMR Kerberos 认证指南
Kerberos 是最为头疼的鉴权配置,但是 Hadoop 全家桶绕不开,只能硬着头皮干了。本文以 Trino 和 StarRocks 为例,讲述如何在非 EMR 的节点上,通过一系列魔幻配置连上阿里云 EMR 的 Kerberos。StarRocks 和 Trino 的配置风格有点不同,Trino 因为在 catalog properties 已经暴露了 Kerberos 相关的配置,所以可以替…- 921
- 0
-
HTrace 与 Zipkin 简单教程
最近阅读 HDFS 的源码,看到在 DFSClient 中很多地方用到了 HTrace 这款框架,所以特意学习下。 HTrace 是一款由 Cloudera 开发的分布式追踪框架,在设计上借鉴了 Google 的 Dapper 论文,虽然 HTrace 已经停止了更新,在 Apache 里面孵化失败了,但是它现在任然被 Hadoop 和 HBase 所采用。 HTrace 产生的数据通常不够直观,…- 1.7k
- 0
-
解决 IDEA 阅读 Hadoop 源码报错问题
最近阅读 Hadoop 源码,使用 IDEA 打开 Hadoop,正常导入 maven 依赖后,发现某些类里面总是会报各种类不存在的错误,如下图: 一开始以为是因为我配置了国内 maven 镜像仓库,然后国内镜像仓库里面某些 jar 包没有及时同步,导致的缺失。但是我看了看 maven 中的导入记录,发现并没有报 jar 包找不到的错误。 看了看缺失的类,它们的包名基本都含有 proto 关键字,…- 1.6k
- 0
-
Hadoop 完全分布式(Fully Distributed)安装
本篇文章主要介绍如何搭建完全分布式的 Hadoop 集群,介于 Hadoop 配置复杂,特此写下此篇文章记录。 基础准备 这一次我使用三台服务器组建一个 Hadoop 集群,三台机器我通过虚拟机(Parallel Desktop)模拟,当然大家也可以使用 VirtualBox 或 VMWare 等软件。 三台机器配置信息如下: CPU:双核 内存:2G 磁盘:12G root 密码:123456 …- 974
- 0