Ahmet,
"ParallelDB load balancers are designed to provide
load balancing and failover on top of parallel
databases such as Oracle Parallel Server or Middle-R.
It means that read and write request are just sent to
one alive backends, the parallel database being
responsible for maintaining the consistency between
the backends."
I could not find a configuration for only failover. As
stated above parallelDB load balancer should send
requests to one alive backend but it does not work
like this. It changes the DB for every querry and it
writes to both backends. It also reads from both
backends. I would like to disable write on secondary
DB. Is this possible or is there a way to enable other
backend in case of failure?
Backends are replicated OracleDBs.
ParallelDB distributes the requests among the replicas of a replicated
database so it distributes reads and writes according to a policy
(currently Round-Robin or LPRF). We just make sure that writes are not
broadcast but just sent to 1 backend (but this can be any of the active
backends).
It looks like what you are looking for is more a master/slave load
balancer that would always send data to the master until it dies in
which case you would switch to the slave. Another approach would be to
send the writes only to the master and reads to the slave(s).
The main issue with a master/slave load balancer is that you want the
new master election to be the same on both Sequoia and the underlying
replicated db (especially if there is more than 1 slave to choose from
to promote it as the new master). I am not sure how that interaction
would work.
Let me know which solution would suit best your setup. For the
replication of Oracle are you using RAC or a master/slave solution?
I used the virtual DB conf below
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE SEQUOIA PUBLIC "-//Continuent//DTD SEQUOIA
2.10.10//EN"
"http://sequoia.continuent.org/dtds/sequoia-2.10.10.dtd">
<SEQUOIA>
<VirtualDatabase name="AppMgrDB">
<AuthenticationManager>
<Admin>
<User username="user" password="jdbc"/>
</Admin>
<VirtualUsers>
<VirtualLogin vLogin="user" vPassword="jdbc"/>
</VirtualUsers>
</AuthenticationManager>
<DatabaseBackend name="db0"
driver="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@47.168.58.35:5121:mcpdb"
connectionTestStatement="select * from dual">
<ConnectionManager vLogin="user" rLogin="sduser"
rPassword="passwd_04">
<VariablePoolConnectionManager
initPoolSize="40"/>
</ConnectionManager>
</DatabaseBackend>
<DatabaseBackend name="db1"
driver="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@47.168.58.38:5121:mcpdb"
connectionTestStatement="select * from dual">
<ConnectionManager vLogin="user" rLogin="sduser"
rPassword="passwd_04">
<VariablePoolConnectionManager
initPoolSize="40"/>
</ConnectionManager>
</DatabaseBackend>
<RequestManager>
<RequestScheduler>
<SingleDBScheduler level="passThrough"/>
</RequestScheduler>
<RequestCache>
<MetadataCache/>
<ParsingCache/>
<ResultCache granularity="table"/>
</RequestCache>
<LoadBalancer>
<ParallelDB>
<ParallelDB-RoundRobin/>
<ParallelDB>
</LoadBalancer>
</RequestManager>
</VirtualDatabase>
</SEQUOIA>
Thanks for your interest in Sequoia,
Emmanuel
--
Emmanuel Cecchet
FTO @ Frog Thinker
Open Source Development & Consulting
--
Web: http://www.frogthinker.org
email: [EMAIL PROTECTED]
Skype: emmanuel_cecchet
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia