parqueteur 1.1.1 → 1.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +13 -13
- data/README.md +137 -8
- data/examples/cars.rb +40 -0
- data/examples/convert-and-compression.rb +56 -0
- data/examples/convert-methods.rb +54 -0
- data/examples/convert-to-io.rb +52 -0
- data/examples/convert-with-chunks.rb +54 -0
- data/examples/convert-without-compression.rb +52 -0
- data/examples/hello-world.rb +57 -0
- data/examples/readme-example.rb +44 -0
- data/lib/parqueteur/converter.rb +108 -79
- data/lib/parqueteur/input.rb +12 -27
- data/lib/parqueteur/type_resolver.rb +10 -0
- data/lib/parqueteur/types/date32_type.rb +15 -0
- data/lib/parqueteur/types/date64_type.rb +15 -0
- data/lib/parqueteur/types/decimal128_type.rb +29 -0
- data/lib/parqueteur/types/decimal256_type.rb +29 -0
- data/lib/parqueteur/types/int32_type.rb +0 -2
- data/lib/parqueteur/types/int64_type.rb +0 -2
- data/lib/parqueteur/types/time32_type.rb +19 -0
- data/lib/parqueteur/types/time64_type.rb +19 -0
- data/lib/parqueteur/types/timestamp_type.rb +3 -1
- data/lib/parqueteur/version.rb +1 -1
- data/lib/parqueteur.rb +9 -4
- data/parqueteur.gemspec +3 -3
- data/scripts/apache-arrow-ubuntu-install.sh +18 -0
- metadata +21 -9
- data/example.rb +0 -39
- data/lib/parqueteur/chunked_converter.rb +0 -28
- data/test.json +0 -1
@@ -1,28 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Parqueteur
|
4
|
-
class ChunkedConverter
|
5
|
-
attr_reader :schema
|
6
|
-
|
7
|
-
def initialize(input, converter, chunk_size = 200)
|
8
|
-
@input = Parqueteur::Input.from(input)
|
9
|
-
@converter = converter
|
10
|
-
@chunk_size = chunk_size
|
11
|
-
end
|
12
|
-
|
13
|
-
def chunks
|
14
|
-
Enumerator.new do |arr|
|
15
|
-
@input.each_slice(@chunk_size) do |chunk|
|
16
|
-
local_converter = @converter.new(chunk)
|
17
|
-
arr << local_converter.to_io
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
def write_files(prefix)
|
23
|
-
chunks.each_with_index do |chunk, idx|
|
24
|
-
File.write("#{prefix}.#{idx}.parquet", chunk.read)
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
data/test.json
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
[{"id":1,"reference":"coucou","hash":{"a":"b"},"valid":true,"hash2":{},"numbers":[1,2,3],"map_array":[]},{"id":2,"reference":"coucou","hash":{"c":"d"},"valid":false,"hash2":{},"numbers":[4,5,6],"map_array":[]},{"id":3,"reference":"coucou","hash":{"e":"f"},"valid":true,"hash2":{"x":[1,2,3]},"numbers":[7,8,9],"map_array":[{"x":"y"}]}]
|