recently I was reading back (many years after grad school ) on
distributed algorithms, after gaining more understanding of Apache
Zookeeper.

I was thinking that if noSQL systems can be modularized, we could
extract out the replication part, so in a typical implementation, for
example,



interface MyServer {

public void write( SomeInputStructure data ) ;
}


class MyServerImpl implements MyServer {

public void write(SomeInputStructure data ) {

    replicator.replicate(new Message(data.toString()) );
}


here distributed algorithms always treat the unit of replication as a
Message, which is essentially a string, so I have to convert the input
param that I got
into a string, but the param was parsed out by Avro RPC server from an
incoming message anyway, so converting from network msg ---> AVRO obj
---> msg
is a waste of time.

so is there a way to directly obtain this message from Avro server
through some hook?
along that thought, it may be even possible to add distributed state
machine implementation to Avro, so that the operation is carried out
not only at one implementation server,
but multiple, thus achieving fault-tolerance and fail-over ability.


Thanks
Yang

Reply via email to