Protégé 3.4.8 Performance issues

Post Reply
cgauri
Posts: 8
Joined: 13 Sep 2010, 17:29

We recently upgraded our Protégé server from 3.4.4 to 3.4.8 and then also updated our Essential instance from 1.x to version 3. After the upgrade we observed significant performance issues while loading up the repository and navigating on the client. We have a multi-user installation with the repository using a SQL server database backend.

I tried several configurations to understand what may be causing the problem – we increased the initial and max memory setting on the server as well as the clients. We also upgraded the JVM to JRE7 x64. However the performance problems continued.

Then I finally reverted back to the Protégé 3.4.4 (but using the new upgraded Essential 3 repository / project files). The performance is back to normal and works totally fine – suggesting that our performance issues may have been due to the Protégé 3.4.8 - and not the essential upgrade. Has anyone else faced any similar issues with the new version of Protégé? Any suggestions on any other settings that may help?

Charu
User avatar
jonathan.carter
Posts: 1087
Joined: 04 Feb 2009, 15:44

Thanks very much for sharing your experience - this is valuable information.

We haven't noticed any degradation in performance in stand-alone mode - in fact I've found 3.4.8 loads a project a little faster. However, we will look into this and pass it on to the Protege team - they may have some more information.

It would be good to know if the poor performance is generic to the multi-user version or related to the SQL Server database backend. I have used 3.4.8 with MySQL and not noticed any loss of performance.

Another option (that I have not tested at all) would be to try it with the Protege 3.5 BETA.

Thanks again - and let's keep posting to this topic as we find more information.

Jonathan
Essential Project Team
cgauri
Posts: 8
Joined: 13 Sep 2010, 17:29

Hi Jonathan,
Thanks for your response. I ran some tests with our data to try out some scenarios:

1. The performance is super-fast when we use a file based repository - for both Protégé 3.4.4 and 3.4.8 using a single user or server mode.

2. The performance is ok when we use Protégé 3.4.4 with a database based repository the performance (single user and server mode). This is our current configuration.

3. However, the performance is very slow when we use Protégé 3.4.8 with a database based repository (for both single or server mode). I tried various versions of JRE and SQL server drivers, but the performance was poor in all scenarios.

I haven’t tried with Protégé 3.5 beta yet, will give that a try soon.

Charu
User avatar
jonathan.carter
Posts: 1087
Joined: 04 Feb 2009, 15:44

Hi Charu,

Thanks for posting back about this.

Have you tried using Protege 3.4.8 with a MySQL database? I have not noticed any problems with MySQL but there may be an issue with how Protege is using MS SQLServer.

Which version of MS SQLServer are you using. I think I may have seen some slower behaviour with SQLServer 2008 RC2.

I will raise this with the Protege team. I checked the release notes and there's nothing obvious in the changes between 3.4.5 - 3.4.8 that might affect this but I am not sure whether SQLServer is a database platform that the Protege team actively test currently.

Thanks again

Jonathan
Essential Project Team
ulfl
Posts: 15
Joined: 01 Feb 2010, 10:47

Hi Charu,

do you use the Change and Annotation Ontology (ChAO)? We currently see a big performance hit while opening an Ontology with attached ChAO. See http://www.enterprise-architecture.org/ ... t=10#p3311

Best regards,
Ulf
melbpar1
Posts: 41
Joined: 19 Sep 2012, 06:18

Charu,
I tested Protege 3.4.8 with both SQL Server 2008 R2 and mySql 5.5 today.
The response time with SQL server was sub-optimal as you already know but by looking at the activity monitor it seems to point to the way the single query is performed on the database to retrieve the data.
MySQL on the other hand, seems to use a number of indexes to access the data more efficiently.
Also, as Ulf suggested, activating collaboration degrades performance and for some reason the instance counters no longer appear.
User avatar
jonathan.carter
Posts: 1087
Joined: 04 Feb 2009, 15:44

The loss of the instance counters is a documented 'feature' of Protege, which we can't control.

I checked with the Protege Team, who confirmed that nothing has changed in the way they handle the database backends from Protege 3.4.4. to 3.4.8. I'm wondering if there's something that's changed in the way indices are managed in SQLServer between 2005 and 2008 onwards - or maybe the Microsoft JDBC driver that has affected the indices?

Thanks very much for reporting this. It's important to know that (for whatever reason) with a SQLServer backend, Protege is not performing as well as it could/should.

Jonathan
Essential Project Team
Post Reply