BlobDB
This commit is contained in:
parent
6dfc10859f
commit
a1a509a6cf
@ -23,6 +23,10 @@ interfacesData:
|
||||
blockSize: -int
|
||||
persistentCacheId: -String
|
||||
writeBufferSize: -long
|
||||
blobFiles: boolean
|
||||
minBlobSize: -long
|
||||
blobFileSize: -long
|
||||
blobCompressionType: -Compression
|
||||
# versions must have only numbers, lowercase letters, dots, dashes. Maximum: 99.999.9999
|
||||
versions:
|
||||
0.0.0:
|
||||
@ -268,6 +272,10 @@ versions:
|
||||
blockSize: -int
|
||||
persistentCacheId: -String
|
||||
writeBufferSize: -long
|
||||
blobFiles: boolean
|
||||
minBlobSize: -long
|
||||
blobFileSize: -long
|
||||
blobCompressionType: -Compression
|
||||
# Remember to update ColumnOptions common getters
|
||||
NamedColumnOptions:
|
||||
data:
|
||||
@ -280,6 +288,10 @@ versions:
|
||||
blockSize: -int
|
||||
persistentCacheId: -String
|
||||
writeBufferSize: -long
|
||||
blobFiles: boolean
|
||||
minBlobSize: -long
|
||||
blobFileSize: -long
|
||||
blobCompressionType: -Compression
|
||||
BloomFilter:
|
||||
data:
|
||||
bitsPerKey: int
|
||||
|
@ -10,6 +10,7 @@ import it.cavallium.dbengine.rpc.current.data.DefaultColumnOptions;
|
||||
import it.cavallium.dbengine.rpc.current.data.DefaultColumnOptionsBuilder;
|
||||
import it.cavallium.dbengine.rpc.current.data.NamedColumnOptions;
|
||||
import it.cavallium.dbengine.rpc.current.data.NamedColumnOptionsBuilder;
|
||||
import it.cavallium.dbengine.rpc.current.data.nullables.NullableCompression;
|
||||
import it.cavallium.dbengine.rpc.current.data.nullables.NullableFilter;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Collections;
|
||||
@ -27,7 +28,11 @@ public class DefaultDatabaseOptions {
|
||||
NullableFilter.empty(),
|
||||
Nullableint.empty(),
|
||||
NullableString.empty(),
|
||||
Nullablelong.empty()
|
||||
Nullablelong.empty(),
|
||||
false,
|
||||
Nullablelong.empty(),
|
||||
Nullablelong.empty(),
|
||||
NullableCompression.empty()
|
||||
);
|
||||
|
||||
public static NamedColumnOptions DEFAULT_NAMED_COLUMN_OPTIONS = new NamedColumnOptions(
|
||||
@ -39,7 +44,11 @@ public class DefaultDatabaseOptions {
|
||||
NullableFilter.empty(),
|
||||
Nullableint.empty(),
|
||||
NullableString.empty(),
|
||||
Nullablelong.empty()
|
||||
Nullablelong.empty(),
|
||||
false,
|
||||
Nullablelong.empty(),
|
||||
Nullablelong.empty(),
|
||||
NullableCompression.empty()
|
||||
);
|
||||
|
||||
public static DatabaseOptions DEFAULT_DATABASE_OPTIONS = new DatabaseOptions(List.of(),
|
||||
|
@ -215,6 +215,18 @@ public class LLLocalKeyValueDatabase implements LLKeyValueDatabase {
|
||||
if (isDisableAutoCompactions()) {
|
||||
columnFamilyOptions.setDisableAutoCompactions(true);
|
||||
}
|
||||
columnFamilyOptions.setEnableBlobFiles(columnOptions.blobFiles());
|
||||
if (columnOptions.blobFileSize().isPresent()) {
|
||||
columnFamilyOptions.setBlobFileSize(columnOptions.blobFileSize().get());
|
||||
}
|
||||
if (columnOptions.minBlobSize().isPresent()) {
|
||||
columnFamilyOptions.setMinBlobSize(columnOptions.minBlobSize().get());
|
||||
}
|
||||
if (columnOptions.blobCompressionType().isPresent()) {
|
||||
columnFamilyOptions.setCompressionType(columnOptions.blobCompressionType().get().getType());
|
||||
}
|
||||
columnFamilyOptions.setBlobCompactionReadaheadSize(4 * SizeUnit.MB);
|
||||
columnFamilyOptions.setEnableBlobGarbageCollection(true);
|
||||
|
||||
// This option is not supported with multiple db paths
|
||||
// https://www.arangodb.com/docs/stable/programs-arangod-rocksdb.html
|
||||
|
Loading…
Reference in New Issue
Block a user