Amazon dynamodb DynamoDB支持的Titan跨区域复制
我正在研究如何复制由DynamoDB支持的Titan 1.0.0数据库。DynamoDB的正常跨区域复制可以通过DynamoDB流和Lambda完成,因此我想对启动时生成的Titan表执行相同的操作 我所做的一步一步的过程:Amazon dynamodb DynamoDB支持的Titan跨区域复制,amazon-dynamodb,database-replication,titan,Amazon Dynamodb,Database Replication,Titan,我正在研究如何复制由DynamoDB支持的Titan 1.0.0数据库。DynamoDB的正常跨区域复制可以通过DynamoDB流和Lambda完成,因此我想对启动时生成的Titan表执行相同的操作 我所做的一步一步的过程: 启动NA堆栈上的Gremlin服务器 将从Titan及其数据生成的所有dynamoDB表复制到欧盟地区的dynamoDB 在将所有表/数据从NA复制到EU后,尝试在EU堆栈上启动Gremlin服务器 当我尝试在欧盟地区启动新的Gremlin服务器时出现此错误: java.l
java.lang.ArrayIndexOutOfBoundsException: Required size [1] exceeds actual remaining size [0]
at com.thinkaurelius.titan.diskstorage.util.StaticArrayBuffer.require(StaticArrayBuffer.java:80)
at com.thinkaurelius.titan.diskstorage.util.StaticArrayBuffer.getByte(StaticArrayBuffer.java:156)
at com.thinkaurelius.titan.diskstorage.util.ReadArrayBuffer.getByte(ReadArrayBuffer.java:67)
at com.thinkaurelius.titan.graphdb.database.idhandling.VariableLong.readUnsigned(VariableLong.java:34)
at com.thinkaurelius.titan.graphdb.database.idhandling.VariableLong.readPositive(VariableLong.java:80)
at com.thinkaurelius.titan.graphdb.database.serialize.StandardSerializer.readClassAndObject(StandardSerializer.java:265)
at com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.staticBuffer2Object(KCVSConfiguration.java:250)
at com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.get(KCVSConfiguration.java:102)
at com.thinkaurelius.titan.diskstorage.configuration.BasicConfiguration.isFrozen(BasicConfiguration.java:93)
at com.thinkaurelius.titan.graphdb.configuration.GraphDatabaseConfiguration.<init>(GraphDatabaseConfiguration.java:1338)
java.lang.ArrayIndexOutOfBoundsException:所需大小[1]超过实际剩余大小[0]
位于com.thinkaurelius.titan.diskstorage.util.StaticArrayBuffer.require(StaticArrayBuffer.java:80)
位于com.thinkaurelius.titan.diskstorage.util.StaticArrayBuffer.getByte(StaticArrayBuffer.java:156)
位于com.thinkaurelius.titan.diskstorage.util.ReadArrayBuffer.getByte(ReadArrayBuffer.java:67)
位于com.thinkaurelius.titan.graphdb.database.idhandling.VariableLong.readUnsigned(VariableLong.java:34)
位于com.thinkaurelius.titan.graphdb.database.idhandling.VariableLong.readPositive(VariableLong.java:80)
位于com.thinkaurelius.titan.graphdb.database.serialize.StandardSerializer.readClassAndObject(StandardSerializer.java:265)
位于com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.StaticBuffer2OObject(KCVSConfiguration.java:250)
位于com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.get(KCVSConfiguration.java:102)
位于com.thinkaurelius.titan.diskstorage.configuration.BasicConfiguration.isfronged(BasicConfiguration.java:93)
位于com.thinkaurelius.titan.graphdb.configuration.GraphDatabaseConfiguration。(GraphDatabaseConfiguration.java:1338)
请记住,复制部分没有问题。NA和EU DynamoDB是彼此的精确复制品
问题
edgestore
存储所有顶点、顶点属性和边及其属性graphindex
是存储顶点和边属性的所有复合索引的位置。这些索引仅支持相等查找systemlog
是Titan的系统日志,记录模式更改等内容txlog
是事务日志,在将工作提交到edgestore
之前,您可以选择让Titan写入该日志titan_id
存储启动时分配给titan服务器的每个唯一_机器_id的id范围租约。最后,system\u properties
存储图形模式(属性类型、多重性、索引等)之类的内容edgestore
存储所有顶点、顶点属性和边及其属性graphindex
是存储顶点和边属性的所有复合索引的位置。这些索引仅支持相等查找systemlog
是Titan的系统日志,记录模式更改等内容txlog
是事务日志,在将工作提交到edgestore
之前,您可以选择让Titan写入该日志titan_id
存储启动时分配给titan服务器的每个唯一_机器_id的id范围租约。最后,system\u properties
存储图形模式(属性类型、多重性、索引等)之类的内容