feat(hbase): support hash rowkey struct & pre-init tables#1696
feat(hbase): support hash rowkey struct & pre-init tables#1696javeme merged 3 commits intoapache:masterfrom
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1696 +/- ##
============================================
+ Coverage 66.93% 70.91% +3.97%
+ Complexity 980 695 -285
============================================
Files 446 446
Lines 37781 37883 +102
Branches 5380 5397 +17
============================================
+ Hits 25289 26863 +1574
+ Misses 9768 8290 -1478
- Partials 2724 2730 +6
Continue to review full report at Codecov.
|
|
@JackyYangPassion 非常感谢贡献feature代码^-^ 大体看了下代码,这个pr应该是支持了hbase顶点和边的预分区了,整体方案没有问题👍。稍晚点进行详细的review,有几点小建议先大体列下:
索引部分,考虑到后续secondary-index索引也统一为类似range-index的表格式,对于索引部分的预分区有什么计划吗? |
感谢提供建议:
|
9f1dbdf to
4f14d70
Compare
hugegraph-core/src/main/java/com/baidu/hugegraph/StandardHugeGraph.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/StandardHugeGraph.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/SerializerFactory.java
Outdated
Show resolved
Hide resolved
4f14d70 to
ddbf67e
Compare
|
seems u format the whole file. and it'll influence a lot of lines. if u want format your code by IDEA, u could select the code block first, then press format key (or click it), it will only format the code u select |
c1b96f4 to
a13c2a6
Compare
hugegraph-core/src/main/java/com/baidu/hugegraph/StandardHugeGraph.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/StandardHugeGraph.java
Outdated
Show resolved
Hide resolved
...graph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinaryScatterSerializer.java
Outdated
Show resolved
Hide resolved
...graph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinaryScatterSerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseStore.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseTables.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseTables.java
Outdated
Show resolved
Hide resolved
hugegraph-test/src/main/java/com/baidu/hugegraph/unit/serializer/SerializerFactoryTest.java
Outdated
Show resolved
Hide resolved
hugegraph-test/src/main/java/com/baidu/hugegraph/unit/serializer/SerializerFactoryTest.java
Outdated
Show resolved
Hide resolved
9ccf0e7 to
894f004
Compare
javeme
left a comment
There was a problem hiding this comment.
some minor comments. and you can just append a new commit instead of a forced push(that's avoiding git commit --amend as possible), so that we can review the diff.
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinaryBackendEntry.java
Outdated
Show resolved
Hide resolved
...graph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinaryScatterSerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/SerializerFactory.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseSerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseTables.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseTables.java
Outdated
Show resolved
Hide resolved
hugegraph-test/src/main/java/com/baidu/hugegraph/unit/serializer/SerializerFactoryTest.java
Outdated
Show resolved
Hide resolved
|
please rebase on the latest code: |
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseSerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseTables.java
Outdated
Show resolved
Hide resolved
append a new commit with same or different commit comment ? |
|
You can set any commit message for a new commit, since we finally squash them into a commit and then merge to master branch. |
|
Due to the lack of activity, the current pr is marked as stale and will be closed after 180 days, any update will remove the stale label |
|
CLA Assistant Lite bot Good! All Contributors have signed the CLA. |
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseSerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
874b2ce to
47b0187
Compare
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/AbstractSerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-dist/src/assembly/static/conf/graphs/hugegraph.properties
Outdated
Show resolved
Hide resolved
hugegraph-dist/src/assembly/static/conf/graphs/hugegraph.properties
Outdated
Show resolved
Hide resolved
hugegraph-dist/src/assembly/static/conf/graphs/hugegraph.properties
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseSerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
...graph-core/src/main/java/com/baidu/hugegraph/backend/store/AbstractBackendStoreProvider.java
Outdated
Show resolved
Hide resolved
...graph-core/src/main/java/com/baidu/hugegraph/backend/store/AbstractBackendStoreProvider.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseOptions.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinarySerializer.java
Outdated
Show resolved
Hide resolved
|
unit test error: Error: Tests run: 395, Failures: 0, Errors: 1, Skipped: 1, Time elapsed: 624.87 s <<< FAILURE! - in com.baidu.hugegraph.unit.UnitTestSuite
Error: testEdgeForPartition(com.baidu.hugegraph.unit.serializer.BinarySerializerTest) Time elapsed: 0.012 s <<< ERROR!
java.lang.NullPointerException
at com.baidu.hugegraph.unit.serializer.BinarySerializerTest.testEdgeForPartition(BinarySerializerTest.java:120)hbase ci errors: Error: Tests run: 722, Failures: 5, Errors: 5, Skipped: 22, Time elapsed: 945.282 s <<< FAILURE! - in com.baidu.hugegraph.core.CoreTestSuite
Error: testQueryOutEdgesOfVertexBySortkeyWithMoreFields(com.baidu.hugegraph.core.EdgeCoreTest) Time elapsed: 0.602 s <<< FAILURE!
java.lang.AssertionError: expected:<5> but was:<0>
at com.baidu.hugegraph.core.EdgeCoreTest.testQueryOutEdgesOfVertexBySortkeyWithMoreFields(EdgeCoreTest.java:3865)
Error: testQueryOutEdgesOfVertexBySortkeyWithPrefix(com.baidu.hugegraph.core.EdgeCoreTest) Time elapsed: 0.601 s <<< FAILURE!
java.lang.AssertionError: expected:<5> but was:<0>
at com.baidu.hugegraph.core.EdgeCoreTest.testQueryOutEdgesOfVertexBySortkeyWithPrefix(EdgeCoreTest.java:3657)
Error: testQueryOutEdgesOfVertexBySortkeyWithMoreFieldsInPage(com.baidu.hugegraph.core.EdgeCoreTest) Time elapsed: 0.944 s <<< FAILURE!
java.lang.AssertionError: expected:<5> but was:<0>
at com.baidu.hugegraph.core.EdgeCoreTest.testQueryOutEdgesOfVertexBySortkeyWithMoreFieldsInPage(EdgeCoreTest.java:4084)
Error: testQueryOutEdgesOfVertexBySortkeyWithRange(com.baidu.hugegraph.core.EdgeCoreTest) Time elapsed: 0.936 s <<< FAILURE!
java.lang.AssertionError: expected:<1> but was:<0>
at com.baidu.hugegraph.core.EdgeCoreTest.testQueryOutEdgesOfVertexBySortkeyWithRange(EdgeCoreTest.java:3560)
Error: testQueryOutEdgesOfVertexBySortkeyWithPrefixInPage(com.baidu.hugegraph.core.EdgeCoreTest) Time elapsed: 0.961 s <<< FAILURE!
java.lang.AssertionError: expected:<5> but was:<0>
at com.baidu.hugegraph.core.EdgeCoreTest.testQueryOutEdgesOfVertexBySortkeyWithPrefixInPage(EdgeCoreTest.java:3753)
Error: testReloadAndQueryWithProperty(com.baidu.hugegraph.core.RamTableTest) Time elapsed: 0.265 s <<< ERROR!
com.baidu.hugegraph.HugeException: Failed to load ramtable
at com.baidu.hugegraph.core.RamTableTest.testReloadAndQueryWithProperty(RamTableTest.java:447)
Caused by: com.baidu.hugegraph.HugeException: The ramtable feature is not supported by hbase backend
at com.baidu.hugegraph.core.RamTableTest.testReloadAndQueryWithProperty(RamTableTest.java:447)
Error: testReloadAndQueryWithBigVertex(com.baidu.hugegraph.core.RamTableTest) Time elapsed: 0.405 s <<< ERROR!
com.baidu.hugegraph.HugeException: Failed to load ramtable
at com.baidu.hugegraph.core.RamTableTest.testReloadAndQueryWithBigVertex(RamTableTest.java:372)
Caused by: com.baidu.hugegraph.HugeException: The ramtable feature is not supported by hbase backend
at com.baidu.hugegraph.core.RamTableTest.testReloadAndQueryWithBigVertex(RamTableTest.java:372)
Error: testReloadAndQueryWithMultiEdges(com.baidu.hugegraph.core.RamTableTest) Time elapsed: 1.013 s <<< ERROR!
com.baidu.hugegraph.HugeException: Failed to load ramtable
at com.baidu.hugegraph.core.RamTableTest.testReloadAndQueryWithMultiEdges(RamTableTest.java:242)
Caused by: com.baidu.hugegraph.HugeException: The ramtable feature is not supported by hbase backend
at com.baidu.hugegraph.core.RamTableTest.testReloadAndQueryWithMultiEdges(RamTableTest.java:242)
Error: testReloadFromFileAndQuery(com.baidu.hugegraph.core.RamTableTest) Time elapsed: 1.709 s <<< ERROR!
com.baidu.hugegraph.HugeException: Failed to load ramtable
at com.baidu.hugegraph.core.RamTableTest.testReloadFromFileAndQuery(RamTableTest.java:162)
Caused by: com.baidu.hugegraph.HugeException: The ramtable feature is not supported by hbase backend
at com.baidu.hugegraph.core.RamTableTest.testReloadFromFileAndQuery(RamTableTest.java:162)
Error: testReloadAndQuery(com.baidu.hugegraph.core.RamTableTest) Time elapsed: 1.055 s <<< ERROR!
com.baidu.hugegraph.HugeException: Failed to load ramtable
at com.baidu.hugegraph.core.RamTableTest.testReloadAndQuery(RamTableTest.java:115)
Caused by: com.baidu.hugegraph.HugeException: The ramtable feature is not supported by hbase backend
at com.baidu.hugegraph.core.RamTableTest.testReloadAndQuery(RamTableTest.java:115) |
|
I have read the CLA Document and I hereby sign the CLA |
|
99e72f7 to
5d905de
Compare
|
should update HbaseFeatures: @Override
public boolean supportsScanKeyPrefix() {
return !enableHashPartition;
}
@Override
public boolean supportsScanKeyRange() {
return !enableHashPartition;
} |
|
For com.baidu.hugegraph.core.RamTableTest.testReloadAndQueryWithProperty() test case
in the RamTable.java private void loadFromDB() throws Exception {
Query query = new Query(HugeType.VERTEX);
query.capacity(this.verticesCapacityHalf * 2L);
query.limit(Query.NO_LIMIT);
Iterator<Vertex> vertices = this.graph.vertices(query);
// switch concurrent loading here
boolean concurrent = true;
if (concurrent) {
try (LoadTraverser traverser = new LoadTraverser()) {
traverser.load(vertices);
}
return;
}
}
|
|
V
protected long load(Iterator<Vertex> vertices) {
while (vertices.hasNext()) {
this.addVertex(vertex);
}
}
|
|
V
private void addVertex(Id vertex) {
Id lastId = IdGenerator.ZERO;
if (this.vertices.size() > 0) {
lastId = this.vertices.get(this.vertices.size() - 1);
}
LOG.info("scan from hbase source {} lastId value: {} compare {} size {}", vertex, lastId, vertex.compareTo(lastId), this.vertices.size());
if (vertex.compareTo(lastId) < 0) {
throw new HugeException("The ramtable feature is not " +
"supported by %s backend",
this.graph.backend());
}
}the log 2022-04-01 04:21:45 [main] [INFO] c.b.h.u.Consumers - Starting 4 workers[ramtable-loading] with queue size 4000...
2022-04-01 04:21:45 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 3 lastId value: 0 compare 1 size 0
2022-04-01 04:21:45 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 2 lastId value: 3 compare -1 size 1
2022-04-01 04:21:46 [main] [INFO] c.b.h.u.Consumers - Starting 4 workers[ramtable-loading] with queue size 4000...
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 103 lastId value: 0 compare 1 size 0
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 113 lastId value: 103 compare 1 size 1
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 123 lastId value: 113 compare 1 size 2
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 129 lastId value: 123 compare 1 size 3
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 139 lastId value: 129 compare 1 size 4
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 149 lastId value: 139 compare 1 size 5
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 159 lastId value: 149 compare 1 size 6
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 169 lastId value: 159 compare 1 size 7
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 179 lastId value: 169 compare 1 size 8
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 189 lastId value: 179 compare 1 size 9
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 199 lastId value: 189 compare 1 size 10
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 209 lastId value: 199 compare 1 size 11
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 219 lastId value: 209 compare 1 size 12
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 229 lastId value: 219 compare 1 size 13
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 239 lastId value: 229 compare 1 size 14
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 249 lastId value: 239 compare 1 size 15
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 258 lastId value: 249 compare 1 size 16
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 268 lastId value: 258 compare 1 size 17
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 278 lastId value: 268 compare 1 size 18
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 288 lastId value: 278 compare 1 size 19
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 298 lastId value: 288 compare 1 size 20
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 1004 lastId value: 298 compare 1 size 21
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 1014 lastId value: 1004 compare 1 size 22
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 1033 lastId value: 1014 compare 1 size 23
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 1043 lastId value: 1033 compare 1 size 24
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 1053 lastId value: 1043 compare 1 size 25
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 1063 lastId value: 1053 compare 1 size 26
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 1073 lastId value: 1063 compare 1 size 27
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 1083 lastId value: 1073 compare 1 size 28
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 1093 lastId value: 1083 compare 1 size 29
2022-04-01 04:21:46 [main] [INFO] c.b.h.b.s.r.RamTable - scan from hbase source 102 lastId value: 1093 compare -1 size 30 |
| return 0; | ||
| } | ||
|
|
||
| public BackendEntry parse(BackendEntry originEntry) { |
There was a problem hiding this comment.
for serializer.BinarySerializerTest.testEdgeForPartition test error
add parse(BackendEntry originEntry) for deserialize edge BinanryBackendEntry
| BytesBuffer start = BytesBuffer.allocate(size); | ||
| start.writeId(vertex); | ||
| BytesBuffer start = BytesBuffer.allocate(BytesBuffer.BUF_EDGE_ID); | ||
| writePartitionedId(HugeType.EDGE, vertex, start); |
There was a problem hiding this comment.
for com.baidu.hugegraph.core.EdgeCoreTest test error
writeQueryEdgeRangeCondition() add writePartitionedId()
| HugeEdge edge2 = objects.newEdge("147", "789"); | ||
|
|
||
| BackendEntry entry1 = ser.writeEdge(edge1); | ||
| HugeVertex vertex1 = ser.readVertex(edge1.graph(), ser.parse(entry1)); |
There was a problem hiding this comment.
not sure why not call ser.readVertex(edge1.graph(), entry1)
There was a problem hiding this comment.
TODO move the logic of HBaseTable to BinarySerializer
There was a problem hiding this comment.
We can merge this PR first, and then submit a new PR to implement the TODO
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseStore.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseStore.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseFeatures.java
Outdated
Show resolved
Hide resolved
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseFeatures.java
Outdated
Show resolved
Hide resolved
|
rocksdb test error: Error: Tests run: 722, Failures: 0, Errors: 1, Skipped: 13, Time elapsed: 272.879 s <<< FAILURE! - in com.baidu.hugegraph.core.CoreTestSuite
Error: testRemoveLeftRangeIndex(com.baidu.hugegraph.core.VertexCoreTest) Time elapsed: 2.434 s <<< ERROR!
java.lang.NullPointerException
at com.baidu.hugegraph.core.VertexCoreTest.testRemoveLeftRangeIndex(VertexCoreTest.java:485)VertexCoreTest.java#L485: |
implement feature #822
Imp HBase Vertex/Edge Table pre-spilit & configurable:
Core design logic:
取2字节作为rowkey前缀:(short) (startNode.hashCode() % totalPartitions)
具体使用:
hugegraph.properties 配置文件 增加如下配置
是否打开预分区
hbase.enable_partition=true「默认值」
点表预分区
hbase.vertex_partition=10「默认值」
边表预分区
hbase.edge_partition=30「默认值」
Note: The following structural diagram is a simple speculation. If there are any differences in the actual situation, please update it ↓