Hi,
     Following is the GSOC project idea that I discussed with my mentor
Stewart Smith.

project title:  Replicate from MySQL into drizzle.

This idea will provide a cool and interesting feature to libdrizzle-redux
project.

Prerequisite: a) libdrizzle bin log api b) Replication process in drizzle
and MySQL
                   c) Row based Replication

I have looked into above prerequisites and developed a good understanding
about various replication methodologies. Following are the ways/proposals
by which I would approach on given idea.

proposal-1: As I read  about drizzle slave replication, it does
multi-master replication.
                 (on master:) Transaction --> InnoDB ---> (on slave :)
 Replication reader ---> Replication Applier.
                 Here we can take MySQL binlogs then from that we can form
logs like InnoDB (mentioned above) by using libdrizzle binlog api and
finally use the same drizzle slave replication module. The only
                 thing here we have to worry  about is getting Row Based
binlogs from MySQL and converting them into dirzzle binlog format. The
approach will reuse the replication modules of drizzle.

proposal-2: Here we can go by MySQL way . We can create 2 threads one IO
thread and other Drizzle thread. IO thread will get the binlogs from MySQL
and then we write our own Replicater Reader and
                Applier for it in the Drizzle thread.

Both proposal 1 and 2 are quiet same they are different as in the
proposal-1  we convert MySQL binlog into drizzle log and the reuse the
drizzle slave replication module while in proposal-2 we take MySQL binlog
and use the same log with some modifications in drizzle replication module.

Of course there will be some problems with DDL but that can be solved
easily by some Heuristics and proper Prototyping. Therefore I am thinking
to work on this part later after results.

Please suggest: Am I going in right direction or not? Also what else should
I write in my GSOC-Proposal?




-- 
Regards,
Kuldeep Porwal
http://web.iiit.ac.in/~kuldeep.porwal
_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to