文件名称:columnix:列式存储和查询引擎
文件大小:77KB
文件格式:ZIP
更新时间:2024-06-01 15:33:37
C
专栏 Columnix是一种列式存储格式,类似于和 。 该实验的目的是在平面模式下击败Parquet读取性能,同时通过利用诸如和类的更新压缩算法来减少磁盘占用量。 Columnix支持: 行组 索引(在行组级别和文件级别) 向量化读取 谓词下推 懒惰的读 AVX2和AVX512谓词匹配 内存映射的IO Spark的Parquet阅读器支持1-4,但不支持延迟读取,仅有限的SIMD支持(无论JVM提供什么),IO通过HDFS进行。 对复杂模式的支持不是该项目的目标。 该格式不支持Parquet的定义和重复级别或ORC的(结构,列表,映射,联合)。 该库当前不支持在压缩之前(或代替压缩)对数据进行编码,例如游程长度或dict编码,尽管代码中包含占位符。 它在TODO列表中排名第二,但是我想探索其他方法,例如 。 提供以下绑定: Python(ctypes): 星火(JNI)
【文件预览】:
columnix-master
----.clang-format(217B)
----.gitignore(180B)
----Makefile(1015B)
----bin()
--------Makefile(429B)
--------columnix_cat.c(7KB)
--------columnix_dump.c(3KB)
--------columnix_analyze.c(2KB)
--------columnix_head.c(3KB)
----LICENSE(1KB)
----contrib()
--------cpu-features.sh(222B)
--------columnix.py(6KB)
----README.md(2KB)
----lib()
--------column.c(12KB)
--------match.c(10KB)
--------reader.h(3KB)
--------avx2.h(3KB)
--------Makefile(3KB)
--------common.h(850B)
--------java.h(9KB)
--------version.h(432B)
--------index.h(2KB)
--------libcolumnix.pc.in(204B)
--------index.c(10KB)
--------reader.c(18KB)
--------row_group.c(16KB)
--------file.h(1016B)
--------writer.h(2KB)
--------java.c(18KB)
--------row.h(2KB)
--------predicate.c(34KB)
--------row_group.h(3KB)
--------avx512.h(2KB)
--------avx.h(3KB)
--------compress.c(3KB)
--------row.c(6KB)
--------predicate.h(4KB)
--------compress.h(402B)
--------writer.c(19KB)
--------match.h(1KB)
--------column.h(3KB)
----test()
--------column.c(13KB)
--------match.c(7KB)
--------Makefile(591B)
--------temp_file.h(499B)
--------index.c(8KB)
--------file.c(16KB)
--------munit.c(61KB)
--------row_group.c(9KB)
--------helpers.h(396B)
--------munit.h(18KB)
--------predicate.c(29KB)
--------compress.c(2KB)
--------row.c(8KB)
--------main.c(1KB)