Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 具有行合并功能的LSM树_Java_Database_Algorithm - Fatal编程技术网

Java 具有行合并功能的LSM树

Java 具有行合并功能的LSM树,java,database,algorithm,Java,Database,Algorithm,我正在寻找一个Java库或包,或者一些代码来帮助我实现一个修改过的Java。问题是: 我的系统需要将键/值对写入表中 key0/value0 key1/value1 稍后,它将需要向key0添加一个值 key0/value0.1 当我的系统在key0上进行查找时,它需要看到“value0,value0.1” 换句话说,我不是像LSM树一般那样替换记录,而是将它与以前插入的记录合并。不幸的是,如果我对记录进行更新,我将失去LSM树的所有性能优势 有人知道LSM树实现有一个合并函数,这样我就可以

我正在寻找一个Java库或包,或者一些代码来帮助我实现一个修改过的Java。问题是:

我的系统需要将键/值对写入表中

key0/value0
key1/value1
稍后,它将需要向key0添加一个值

key0/value0.1
当我的系统在
key0
上进行查找时,它需要看到“
value0,value0.1

换句话说,我不是像LSM树一般那样替换记录,而是将它与以前插入的记录合并。不幸的是,如果我对记录进行更新,我将失去LSM树的所有性能优势

有人知道LSM树实现有一个合并函数,这样我就可以合并行而不是替换行了吗


或者有更好的方法来处理此问题吗?

您可以在此处执行
读-修改-写
类型操作。首先读取
key0
的旧数据(即,在您的情况下,
value0
),附加新数据(即,使用
key0
的现有值附加
value0.1
),并将其插入LSM,就像您正在更新
key0
的值一样。在这种情况下,您将不需要更改合并函数。您将能够找到LSM树的Java实现。我很抱歉,我将无法从这段代码中精确定位合并函数,因为我对这个repo不是很熟悉。