As you probably read, the difficulty in redundancy often comes down to getting the database set up.
In terms of setting up FactorySQL, you have a number of choices that can affect how the system acts. On the redundancy side, it is possible to assign each node a rank so that you would have one “preferred master” that would run when possible, taking over again when it came back up, or you could not rank them, in which case the best/longest running will be master. After a failure, the secondary will start executing, and will continue executing until it goes down.
Usually when people set up redundant systems, they are focused on keeping control working. This usually only requires one-way database mirroring instead of full clustering. Then, they put history on a different data connection, which might write to the data cache while the one machine is down. That way they don’t have to worry about synchronizing the history back to the main DB- when it comes back up, the data cache will be written.
Your idea of using separate triggers would probably work, but I’m not sure if it would really solve any problems.
Maybe I should ask for a bit more information as to what you were planning to do with the database: a mirrored pair? Clustered? Single db and datacaching as a backup? Located on one of the FSQL nodes, or a separate machine?
The particular settings for redundancy aren’t difficult, but there are a huge number of possible configurations.
This is what I am thinking. A little background, our system buffers data on the PLC and we keep that data in the PLC until we get confirmation from the db via FSQL and the handshake of FSQL that we log the data. So this is our first request for replication so that if system fails and the plc buffer gets full they will be able to continue to run because of the redundancy they will not have to worried about plc buffers.
So that is good that I can setup FSQL not to switch automatic since I am sure I am going to have to right some manual procedures to synch the data from the slave to the master. I know I have a lot of reading to do about how to accomplish this since I know it could be an issue synch the slave to the master.
I don’t think the data caching will work for us since our app gets status information back to the plc after each group trigger.
I know the Ideal will be cluster but customer don’t want to pay $$$ Kyle software solutions reads real good with I am running on a Windows Based.
Below is my first draft for the System Architecture.