purplelight 0.1.16 → 0.1.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +16 -5
- data/lib/purplelight/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 006653025fe8b2a5afa958c08992076f171550c7e1a1da4d57442df76d0e659d
|
|
4
|
+
data.tar.gz: 2476b1a5c4f078b539cd83c552e7ec5938277943e46ae6412b4c04df3830a042
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d31c3447814135d0f723f6bf35e955618932971f28bdcdd15a3831daee2c8c2d6a22ad0dae0bb8af1572f0e570fdbb71cc606f31241a83ee741742a783f3a673
|
|
7
|
+
data.tar.gz: 30bd7c0a089f57b6f8957d93b538b5e0f698e6440b7180dea86e3922cee58e639cace618782d888284883bcd5930456bd6cda9e270b338d54caea538b0804943
|
data/README.md
CHANGED
|
@@ -6,18 +6,29 @@ Snapshot MongoDB collections efficiently from Ruby with resumable, partitioned e
|
|
|
6
6
|
|
|
7
7
|
Purplelight is published on RubyGems: [purplelight on RubyGems](https://rubygems.org/gems/purplelight).
|
|
8
8
|
|
|
9
|
+
Requires Ruby 3.2 or newer and MongoDB 7 or 8.
|
|
10
|
+
|
|
9
11
|
Add to your Gemfile:
|
|
10
12
|
|
|
11
13
|
```ruby
|
|
12
|
-
gem 'purplelight', '~> 0.1.
|
|
14
|
+
gem 'purplelight', '~> 0.1.17'
|
|
13
15
|
```
|
|
14
16
|
|
|
15
17
|
Or install directly:
|
|
16
18
|
|
|
17
19
|
```bash
|
|
18
|
-
gem install purplelight
|
|
20
|
+
gem install purplelight -v '~> 0.1.17'
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
`bigdecimal`, `logger`, and the MongoDB Ruby driver are installed automatically.
|
|
24
|
+
To use zstd compression, add its optional backend:
|
|
25
|
+
|
|
26
|
+
```ruby
|
|
27
|
+
gem 'zstd-ruby', '~> 2.0'
|
|
19
28
|
```
|
|
20
29
|
|
|
30
|
+
Without `zstd-ruby` or `ruby-zstds`, a requested zstd output safely falls back to gzip.
|
|
31
|
+
|
|
21
32
|
### Quick start
|
|
22
33
|
|
|
23
34
|
```ruby
|
|
@@ -124,8 +135,8 @@ Add optional dependencies:
|
|
|
124
135
|
```ruby
|
|
125
136
|
# Gemfile
|
|
126
137
|
group :parquet do
|
|
127
|
-
gem 'red-arrow', '>=
|
|
128
|
-
gem 'red-parquet', '>=
|
|
138
|
+
gem 'red-arrow', '>= 25.0'
|
|
139
|
+
gem 'red-parquet', '>= 25.0'
|
|
129
140
|
end
|
|
130
141
|
```
|
|
131
142
|
|
|
@@ -224,7 +235,7 @@ bundle exec bin/purplelight \
|
|
|
224
235
|
Notes:
|
|
225
236
|
- Compression backend selection order is: requested format → `zstd-ruby` → `zstds` → `gzip`.
|
|
226
237
|
- `--single-file` and `--by-size` update only the sharding mode/params and preserve any provided `--prefix`.
|
|
227
|
-
|
|
238
|
+
- Parquet multi-part sizing can be controlled via `parquet_max_rows` programmatically, or via CLI `--parquet-max-rows`.
|
|
228
239
|
- To increase concurrent connections, set `maxPoolSize` on your Mongo URI (used by `--uri`), e.g., `mongodb://.../?maxPoolSize=32`. A good starting point is `maxPoolSize >= --partitions`.
|
|
229
240
|
|
|
230
241
|
### Architecture
|
data/lib/purplelight/version.rb
CHANGED