Tendermint를 이용해 p2p환경을 구성한 paust-db는 data가 put될 때, tendermint block의 생성 주기에 따라 batch processing을 통해 rocksdb에 저장한다.
tendermint block의 생성 주기는 validator간의 consensus가 완료되는 시점에 따라 달라지므로 일정한 주기를 가지고 생성하지 못하고 있다. 블록 생성 주기가 2/3 이상의 표(지분)을 얻기에 걸리는 시간에 따라 달라 질 수 있기 때문이다. 또한 2/3이상의 표(지분)을 얻지 못할 경우 다음 라운드로 넘어가게 되므로 블록 생성 주기가 일정하지 않는 상황도 존재한다.
그러므로 #124 Query Plan의 fst를 생성할 때 tendermint의 block 생성에 맞추어 생성할 경우 일정한 주기를 생성하는 것이 어렵다.
그렇다면 fst의 일정한 주기를 유지하기 위해 tendermint block이 아닌 다른 trigger를 통해 해결할 수 있을 지, fst를 구성하는 데 있어 일정한 시간 단위를 통해 구성하는 것이 필수 사항인 지(어느 정도 오차가 존재해도 되는 지), 필수 사항이라면 block이 일정하게 생성되는 consensus는 존재하는 지에 대한 조사가 필요하다.
Reference
124
Tendermint를 이용해 p2p환경을 구성한 paust-db는 data가 put될 때, tendermint block의 생성 주기에 따라 batch processing을 통해 rocksdb에 저장한다.
tendermint block의 생성 주기는 validator간의 consensus가 완료되는 시점에 따라 달라지므로 일정한 주기를 가지고 생성하지 못하고 있다. 블록 생성 주기가 2/3 이상의 표(지분)을 얻기에 걸리는 시간에 따라 달라 질 수 있기 때문이다. 또한 2/3이상의 표(지분)을 얻지 못할 경우 다음 라운드로 넘어가게 되므로 블록 생성 주기가 일정하지 않는 상황도 존재한다.
그러므로 #124 Query Plan의 fst를 생성할 때 tendermint의 block 생성에 맞추어 생성할 경우 일정한 주기를 생성하는 것이 어렵다.
그렇다면 fst의 일정한 주기를 유지하기 위해 tendermint block이 아닌 다른 trigger를 통해 해결할 수 있을 지, fst를 구성하는 데 있어 일정한 시간 단위를 통해 구성하는 것이 필수 사항인 지(어느 정도 오차가 존재해도 되는 지), 필수 사항이라면 block이 일정하게 생성되는 consensus는 존재하는 지에 대한 조사가 필요하다.