ObjectWeb open source consortium has announced the release of JOnAS 3.1 EJB server (now integrated with Axis), as well as Clustered JDBC (C-JDBC) an open-source database cluster middleware that allows any Java app to transparently access a cluster of databases through JDBC. C-JDBC offers various database replication techniques with different scheduling and load balancing algorithms.
Checkout ObjectWeb.
JOnAS 3.1 version provides some important features like making persistant the configuration done through the administration console, or the introduction of the JONAS_BASE concept for configuring several JOnAS instances from a same installation. The availability of Web Services by the integration of AXIS, the support of JMS 1.1, and the ability to store security user information in Databases or LDAP are also important features.
C-JDBC offers database clustering techniques without application changes and works with any database (open source or commercial) providing a JDBC driver. C-JDBC offers various database replication techniques with different scheduling and load balancing algorithms. It relies on a concept called RAIDb (Redundant Array of Inexpensive Databases) that provides performance scalability and fault tolerance to databases like RAID does for disks.
ObjectWeb President Christophe Ney will be speaking on the Open Source Keynote panel at TheServerSide Symposium, along with representatives from JBoss, Apache, Open Symphony, and Hibernate.
-
ObjectWeb announces JOnAS 3.1 and Clustered JDBC (16 messages)
- Posted by: Emmanuel Cecchet
- Posted on: April 30 2003 05:28 EDT
Threaded Messages (16)
- ObjectWeb announces JOnAS 3.1 and Clustered JDBC by Lasse Koskela on April 30 2003 14:21 EDT
- Table Joins by Ian Purton on May 01 2003 04:29 EDT
- Table Joins by Konstantin Ignatyev on May 01 2003 11:04 EDT
-
Table Joins by Lasse Koskela on May 01 2003 12:37 EDT
-
Table Joins by Cameron Purdy on May 01 2003 02:03 EDT
- Table Joins by Lasse Koskela on May 01 2003 08:05 EDT
- C-JDBC & Caching by Emmanuel Cecchet on May 03 2003 11:22 EDT
-
Table Joins by Cameron Purdy on May 01 2003 02:03 EDT
- ObjectWeb announces JOnAS 3.1 and Clustered JDBC by Emmanuel Cecchet on May 01 2003 05:29 EDT
-
RAIDb-0 - Interesting configuration by tami tami on May 02 2003 03:20 EDT
- Performance is not important till it is acceptable by Konstantin Ignatyev on May 02 2003 11:05 EDT
-
RAIDb-0 - Interesting configuration by tami tami on May 02 2003 03:20 EDT
- Jonas server does not even start by Steve Vai on May 04 2003 01:21 EDT
- too easy! by Gr?gory Luguet on May 05 2003 05:24 EDT
- Jonas server does not even start - Bizare, bizare ... by Adriana Danes on May 05 2003 05:49 EDT
- Table Joins by Ian Purton on May 01 2003 04:29 EDT
- Reliability? by Peter B on May 01 2003 00:44 EDT
- Reliability? by Emmanuel Cecchet on May 01 2003 05:34 EDT
- Congratulations and a big thanks for Jonas 3.1! by Stephan Bauer on May 07 2003 04:40 EDT
-
ObjectWeb announces JOnAS 3.1 and Clustered JDBC[ Go to top ]
- Posted by: Lasse Koskela
- Posted on: April 30 2003 14:21 EDT
- in response to Emmanuel Cecchet
The "RAIDb" concept of C-JDBC looks interesting. On the other hand, I find the RAIDb-1 configuration very feasible, cheap and well-performing (a gut feeling) way to protect against DB crashes. However, I am a bit doubtful about the true value of the RAIDb-0 configuration:
1) Does parsing the incoming SQL for affected tables and mapping them to underlying drivers affect performance? And how is a query for tables in separate DB instances executed (i.e. SELECT t1.foo, t2.bar FROM TABLE1 t1, TABLE2 t2 WHERE t1.id = t2.id)?
2) Is there real performance boost with distributing the tables (the database is already optimized for this) as you can always distribute the load with RAIDb-1? -
Table Joins[ Go to top ]
- Posted by: Ian Purton
- Posted on: May 01 2003 04:29 EDT
- in response to Lasse Koskela
1) Does parsing the incoming SQL for affected tables and mapping them to underlying drivers affect performance? And how is a query for tables in separate DB instances executed (i.e. SELECT t1.foo, t2.bar FROM TABLE1 t1, TABLE2 t2 WHERE t1.id = t2.id)?
I suppose you would put all tables in a join into the same database instances, this would be useful if you had an application where one or two large queries across multiple tables were causing performance problems.
You would be able to extract these queries to seperate machines and let them leverage more cpu.
Ian Purton
www.salesappliance.com -
Table Joins[ Go to top ]
- Posted by: Konstantin Ignatyev
- Posted on: May 01 2003 11:04 EDT
- in response to Ian Purton
IMO: An attempt to do RDBMS job in JDBC driver is a very stupid thing to do.
Have little respect to RDBMS theory (study it) and decades of design and development efforts. Study what ORACLE does to optimize performance within only one database and please do not waste efforts on clustered JDBC. -
Table Joins[ Go to top ]
- Posted by: Lasse Koskela
- Posted on: May 01 2003 12:37 EDT
- in response to Ian Purton
Ian,
That's what I would do if it was possible. That's just plain intuitive. Heck, I could even use two completely independent databases if there was no dependencies between the two.
What I was interested about was the feasibility and performance of the "distributed table join" functionality implied by C-JDBC.
- Lasse -
Table Joins[ Go to top ]
- Posted by: Cameron Purdy
- Posted on: May 01 2003 14:03 EDT
- in response to Lasse Koskela
Check out Isocra LiveStore. It does the SQL parsing etc. and even handles clustered caching of underlying relational data.
Peace,
Cameron Purdy
Tangosol, Inc.
Coherence: Easily share live data across a cluster! -
Table Joins[ Go to top ]
- Posted by: Lasse Koskela
- Posted on: May 01 2003 20:05 EDT
- in response to Cameron Purdy
Thanks Cameron, LiveStore does look good. -
C-JDBC & Caching[ Go to top ]
- Posted by: Emmanuel Cecchet
- Posted on: May 03 2003 11:22 EDT
- in response to Cameron Purdy
Note that C-JDBC does also request parsing and caching. It allows for fine grain and distributed caching between distributed controllers. But this is just a side feature ... the cherry on top of the cake! ;-) -
ObjectWeb announces JOnAS 3.1 and Clustered JDBC[ Go to top ]
- Posted by: Emmanuel Cecchet
- Posted on: May 01 2003 05:29 EDT
- in response to Lasse Koskela
RAIDb-0 exists because C-JDBC is part of a research project and we had to test this configuration but it is more likely that it will never be used in real world applications.<br>
We did some testing and RAIDb-0 does not provide significant performance benefits on most applications. The current implementation does not support distributed joins, therefore if you have a join between t1 and t2, you have to ensure that both t1 and t2 are on the same machine. This is a strong constraint but as you mentioned, RAIDb-1 and even better RAIDb-2 are more interesting configurations.
The cost of request parsing is quite low because we don't do a complete parsing of the request like the database does. We just extract the table names to direct the table and don't evaluate all fields. We also have a parsing cache that prevents parsing twice the same query. -
RAIDb-0 - Interesting configuration[ Go to top ]
- Posted by: tami tami
- Posted on: May 02 2003 03:20 EDT
- in response to Emmanuel Cecchet
RAIDb-0 is interesting not for performance, but for the possibilities to join 2 tables in 2 different DB like Heterogenous Service in ORACLE or MS Sql Server or Liked table in Access.
I have old ERP application on HP-Eloquence DB (ODBC-Bridge) and i want to develop new feature on OpenSource DB , but i can't rewrite all ERP on new DB...
then I would like to join 2 table on 2 DB for rewrite progressively all the application.
Excuse me for my poor english. -
Performance is not important till it is acceptable[ Go to top ]
- Posted by: Konstantin Ignatyev
- Posted on: May 02 2003 11:05 EDT
- in response to tami tami
SELECT T1.* , T2.zz
FROM T1_IN_DB1 T1 left outer join T2_IN_DB2 T2 on T1.aa=T2.bb
Such kind of widely used query will require join operation on the client, means:
1.fetch all data from both tables on client.
1.1 SELECT * FROM T1_IN_DB1
1.2 SELECT * FROM T2_IN_DB2
2. compute join. -
Jonas server does not even start[ Go to top ]
- Posted by: Steve Vai
- Posted on: May 04 2003 01:21 EDT
- in response to Lasse Koskela
I could not even get jonas to start properly. I used the download that comes bundled with tomcat. I get the following exception.
C:\jonas-3-1\examples\src>2003-05-03 23:19:32,889 : RegistryManager.start : Regi
stry started on port '1099'
2003-05-03 23:19:32,920 : ServiceManager.startRegistry : registry service starte
d
JOnAS error: Cannot start JMX service: javax.management.ReflectionException: The
MBean class could not be loaded by the MBeanServer's loader
JOnAS halting -
too easy![ Go to top ]
- Posted by: Gr?gory Luguet
- Posted on: May 05 2003 05:24 EDT
- in response to Steve Vai
This error message seems sparkling clear : your rmi registry (I guess that you do not use JEREMIE, this would not change the problem anyway) is already started, and your config says that JOnAS must start it.
So you have 2 solutions :
1) stop your RMI registry and start JOnAS
2) configure JOnAS to use a previously started registry
... and enjoy! -
Jonas server does not even start - Bizare, bizare ...[ Go to top ]
- Posted by: Adriana Danes
- Posted on: May 05 2003 05:49 EDT
- in response to Steve Vai
It seems that the MX4J JMX server fails to start ...(suppose you made no changes to the provided configuration).
Can you please make a 'jonas check' and echo your CLASSPATH (it should not be set).
You may also use jonas at objectweb dot org to discuss with the JOnAS developpers and community. -
Reliability?[ Go to top ]
- Posted by: Peter B
- Posted on: May 01 2003 00:44 EDT
- in response to Emmanuel Cecchet
DB request distribution, and replication is a rather tricky holy grail to attain. C-JDBC looks interesting on paper, but can ObjectWeb provide any reference customers for this? I'd be curious how it holds up in real environments.
Peter
http://rimuhosting.com/?s=ss - JSP/EJB (on JBoss) Hosting Specialist -
Reliability?[ Go to top ]
- Posted by: Emmanuel Cecchet
- Posted on: May 01 2003 05:34 EDT
- in response to Peter B
C-JDBC is still in alpha version and has no real customer. We did a complete evaluation using the TPC-W benchmark on a 6 nodes cluster and performance scales linearly up to 6 nodes with both browsing and shopping mixes (speedup of 5.7 with the ordering mix).<br>
A paper will be released soon with all results but it has been submitted for publication to a conference and we are not allowed to publish it before the notification of acceptance. -
Congratulations and a big thanks for Jonas 3.1![ Go to top ]
- Posted by: Stephan Bauer
- Posted on: May 07 2003 04:40 EDT
- in response to Emmanuel Cecchet
Hi Jonas-Team,
I'm very glad to say, that after more than one week
experience on our production environment with Jonas 3.1 - Jetty 4.2.9,
I'm absolutely amazed by the stability and performance
of this package!!
THIS IS BY FAAAAR THE BEST VERSION OF JONAS WITH A WEBCONTAINER
WE EVER HAD !!!!!!!!! (we were going all the way since
2.2, 2.4, 2.4.4 and 2.6.4)
Thanks to you guys and also to the Jetty-people ! Great Work !!!
Bye,
Stephan
PS: We upgraded from Jonas 2.6.4/Jetty 2.4.6, where we had to restart
the application at least twice a week because of a memory leak, which
now is gone!!!