What is our primary use case?
We currently run Web server solutions (CMS, CRM business solutions).
Our CMS solution is obviously very text-oriented, and our CRM Business Solution was built for a finance and asset management business, which is capable of handling millions of transactions.
Performance, access control, data integrity are fundamental to any application but we have been able to more than satisfy our clients with the solutions we have delivered.
We have Ingres running on an AWS Linux server. We have Windows Server running front end solutions using Ingres OpenRoad and Linux Servers serving Web Applications through Apache and PHP.
How has it helped my organization?
Ingres is the only database solution that has maintained a level of consistency and integrity about the way users interact with it. As a database administrator, there is a level of transparency and control at all levels.
Over the last few years, we have migrated all of our business functional logic into database procedures, which improves performance significantly and allows us to alter our development tools/programming languages easily.
Our products CK5 and JS5 are offered as SaaS solutions through jetpac.co.nz
What is most valuable?
The deployment of our solution across a number of servers using Ingres .NET has meant that we can protect the database server behind a highly secure firewall and deploy the front end solutions on a normal web server. The User is never exposed to any configurations or logins other than their own initial identification.
The SQL capability is consistent across all platforms. This means that we can code into our PHP functions to manage the database so that the users can be generally self-sufficient and requiring DB support only rarely.
What needs improvement?
Whilst our server up-time is in the > 99%, we still have to reboot the DBMS periodically to allow us to archive the log file. The ability to reset the log file without stopping the DBMS would be helpful for us.
We have created our own error management/reporting process within our database procedures. Unfortunately, if there is a database error, such as a duplicate key, the default action is to abort. This means that our information is generally lost. An option to not abort on failure would be great. Of course, this only really occurs in testing.
For how long have I used the solution?
I first came across Actian Ingres in 1992 and have been using it in all of my solutions since then.
What do I think about the scalability of the solution?
It is completely scalable, as the Query Execution Process is completely dynamic based on the current number of rows and efficiency of the index structures.
Which solution did I use previously and why did I switch?
We did not use another solution, as this was a greenfield opportunity
Which other solutions did I evaluate?
We evaluated Oracle and DB2.