-
Couldn't load subscription status.
- Fork 1.3k
opt(stream): add option to directly copy over tables from lower levels (#1700) #1872
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
e8583aa to
a3c70d1
Compare
16131ef to
0c4052d
Compare
a3c70d1 to
5c374e2
Compare
5e7a48d to
1f99a5c
Compare
5c374e2 to
d1fe28b
Compare
1f99a5c to
0e2acc6
Compare
1375846 to
12a0e42
Compare
f1a05da to
63a4948
Compare
12a0e42 to
72a4c72
Compare
63a4948 to
1ab2de4
Compare
f7c65e6 to
ed0f577
Compare
|
This code has a data race, I am looking into it: |
ed0f577 to
741ab83
Compare
081b41b to
edb2318
Compare
8873caa to
4615899
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you write a benchmark for this?
4615899 to
e39ebb5
Compare
e39ebb5 to
32230b1
Compare
77973c6 to
908259a
Compare
32230b1 to
08a3e2d
Compare
08a3e2d to
1218725
Compare
|
This PR has been stale for 60 days and will be closed automatically in 7 days. Comment to keep it open. |
1218725 to
f31ff23
Compare
✅ Deploy Preview for badger-docs canceled.
|
c024d71 to
ffd74f3
Compare
|
closing PR for now, keeping branch active |
ffd74f3 to
88c37d9
Compare
#1700) Also takes a bug fix from PR #1712, commit 58d0674 This PR adds FullCopy option in Stream. This allows sending the table entirely to the writer. If this option is set to true we directly copy over the tables from the last 2 levels. This option increases the stream speed while also lowering the memory consumption on the DB that is streaming the KVs. For 71GB, compressed and encrypted DB we observed 3x improvement in speed. The DB contained ~65GB in the last 2 levels while remaining in the above levels. To use this option, the following options should be set in Stream. stream.KeyToList = nil stream.ChooseKey = nil stream.SinceTs = 0 db.managedTxns = true If we use stream writer for receiving the KVs, the encryption mode has to be the same in sender and receiver. This will restrict db.StreamDB() to use the same encryption mode in both input and output DB. Added TODO for allowing different encryption modes.
88c37d9 to
48955c8
Compare
Also takes a bug fix from PR #1712, commit 58d0674
This PR adds FullCopy option in Stream. This allows sending the table entirely to the writer. If this option is set to true we directly copy over the tables from the last 2 levels. This option increases the stream speed while also lowering the memory consumption on the DB that is streaming the KVs.
For 71GB, compressed and encrypted DB we observed 3x improvement in speed. The DB contained ~65GB in the last 2 levels while remaining in the above levels.
To use this option, the following options should be set in Stream.
stream.KeyToList = nil
stream.ChooseKey = nil
stream.SinceTs = 0
db.managedTxns = true
If we use stream writer for receiving the KVs, the encryption mode has to be the same in sender and receiver. This will restrict db.StreamDB() to use the same encryption mode in both input and output DB. Added TODO for allowing different encryption modes.