mirror of
https://github.com/asadbek064/hyparquet-compressors.git
synced 2026-01-11 05:16:36 +00:00
Update README and dependencies
This commit is contained in:
parent
284e06baa5
commit
e2dae829b2
32
README.md
32
README.md
@ -24,18 +24,46 @@ await parquetRead({ file, compressors, onComplete: console.log })
|
||||
|
||||
See [hyparquet](https://github.com/hyparam/hyparquet) repo for further info.
|
||||
|
||||
# Supported compression formats
|
||||
# Compression formats
|
||||
|
||||
Parquet compression types supported with `hyparquet-compressors`:
|
||||
- [X] Uncompressed
|
||||
- [X] Snappy
|
||||
- [x] GZip
|
||||
- [x] Gzip
|
||||
- [ ] LZO
|
||||
- [X] Brotli
|
||||
- [X] LZ4
|
||||
- [X] ZSTD
|
||||
- [X] LZ4_RAW
|
||||
|
||||
## Snappy
|
||||
|
||||
Snappy compression uses [hysnappy](https://github.com/hyparam/hysnappy) for fast snappy decompression using minimal wasm.
|
||||
|
||||
## Gzip
|
||||
|
||||
New gzip implementation adapted from [fflate](https://github.com/101arrowz/fflate).
|
||||
Includes modifications to handle repeated back-to-back gzip streams that sometimes occur in parquet files, but was not supported by fflate.
|
||||
|
||||
## Brotli
|
||||
|
||||
Uses [brotli.js](https://github.com/foliojs/brotli.js) for brotli decompression.
|
||||
|
||||
## LZ4
|
||||
|
||||
New LZ4 implementation includes support for legacy hadoop LZ4 frame format used on some old parquet files.
|
||||
|
||||
## Zstd
|
||||
|
||||
Uses [fzstd](https://github.com/101arrowz/fzstd) for Zstandard decompression.
|
||||
|
||||
# Bundle size
|
||||
|
||||
| File | Size |
|
||||
| - | - |
|
||||
| hyparquet-compressors.min.js | 502.1kb |
|
||||
| hyparquet-compressors.min.js.gz | 102.2kb |
|
||||
|
||||
# References
|
||||
|
||||
- https://parquet.apache.org/docs/file-format/data-pages/compression/
|
||||
|
||||
@ -37,7 +37,7 @@
|
||||
"hysnappy": "0.3.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/eslint-parser": "7.24.5",
|
||||
"@babel/eslint-parser": "7.24.6",
|
||||
"@rollup/plugin-commonjs": "25.0.8",
|
||||
"@rollup/plugin-node-resolve": "15.2.3",
|
||||
"@rollup/plugin-terser": "0.4.4",
|
||||
@ -46,8 +46,8 @@
|
||||
"@vitest/coverage-v8": "1.6.0",
|
||||
"eslint": "8.57.0",
|
||||
"eslint-plugin-import": "2.29.1",
|
||||
"eslint-plugin-jsdoc": "48.2.5",
|
||||
"hyparquet": "0.9.5",
|
||||
"eslint-plugin-jsdoc": "48.2.6",
|
||||
"hyparquet": "0.9.6",
|
||||
"rollup": "4.18.0",
|
||||
"typescript": "5.4.5",
|
||||
"vitest": "1.6.0"
|
||||
|
||||
@ -5,7 +5,7 @@ import terser from '@rollup/plugin-terser'
|
||||
export default {
|
||||
input: 'src/index.js',
|
||||
output: {
|
||||
file: 'dist/bundle.min.js',
|
||||
file: 'dist/hyparquet-compressors.min.js',
|
||||
format: 'esm',
|
||||
sourcemap: true,
|
||||
},
|
||||
|
||||
@ -1,22 +1,22 @@
|
||||
[
|
||||
[
|
||||
1593604800,
|
||||
[97, 98, 99],
|
||||
"abc",
|
||||
42
|
||||
],
|
||||
[
|
||||
1593604800,
|
||||
[100, 101, 102],
|
||||
"def",
|
||||
7.7
|
||||
],
|
||||
[
|
||||
1593604801,
|
||||
[97, 98, 99],
|
||||
"abc",
|
||||
42.125
|
||||
],
|
||||
[
|
||||
1593604801,
|
||||
[100, 101, 102],
|
||||
"def",
|
||||
7.7
|
||||
]
|
||||
]
|
||||
|
||||
@ -1,22 +1,22 @@
|
||||
[
|
||||
[
|
||||
1593604800,
|
||||
[97, 98, 99],
|
||||
"abc",
|
||||
42
|
||||
],
|
||||
[
|
||||
1593604800,
|
||||
[100, 101, 102],
|
||||
"def",
|
||||
7.7
|
||||
],
|
||||
[
|
||||
1593604801,
|
||||
[97, 98, 99],
|
||||
"abc",
|
||||
42.125
|
||||
],
|
||||
[
|
||||
1593604801,
|
||||
[100, 101, 102],
|
||||
"def",
|
||||
7.7
|
||||
]
|
||||
]
|
||||
|
||||
Loading…
Reference in New Issue
Block a user