【发布时间】:2026-02-10 01:05:01
【问题描述】:
我知道这一定是个愚蠢的问题,但经过数小时的谷歌搜索后,我无法得到答案。
在纯文本格式(例如 csv)中很容易理解分隔符的工作原理。在 ORC 中,由于 is 是二进制存储在 HDFS 中,那么字段的分隔符是什么?有人告诉我ORC中没有分隔符,但我对这个说法非常怀疑。
即使是作为行组存储,对于每个行组的一列,也可以有多个数据字段,如何区分每个字段与下一个字段?每行如何与下一行分开?是否有分隔符来实现这一点?
感谢您的任何cmets!
【问题讨论】:
-
50 年前,没有人使用字段分隔符,也没有使用行分隔符。因为大型机文件使用具有固定宽度字段的固定宽度记录。也因为打孔卡基本上是固定宽度的设备(没有键盘,没有屏幕,没有鼠标,呃)。
-
然后创建了 VARCHAR(可变长度字符串)。但仍然没有分隔符:字段以固定宽度的整数开头,表示后面数据的长度。 IE。您必须跳过多少字节才能找到下一个字段。另请参阅旧 Excel 文件使用的 BIFF 文件格式的概念gaia-gis.it/gaia-sins/freexl-1.0.1-doxy-doc/html/Format.html
标签: hadoop hive hdfs storage orc