Reviews and Ratings

Full-featured but Fragile  
1.0
   
written almost 9 years ago

I always like to structure my reviews by starting with the good, then the bad, then a general summary. I hope others find this helpful.

The Good:
SQL-Ledger boasts an impressive feature set. The latest major release added support for vouchers, and a number of other things on top of an already impressive feature set. And although the application requires that you understand some basic accounting, you could possibly use this system to manage the money of most types of small buisnesses. Aside from SQL-Ledger (and probably LedgerSMB, a project I am involved in), I cannot find any open source accounting programs with a comparable feature set.

The Bad:
The SQL-Ledger author treats security issues as a very low priority. He feels that because the application is only of interest to bookkeepers and accountants, that security really isn;t a major concerns (note however that these people could use security flaws to steal your money).

A second major problem is that the codebase is bad shape (and that is being kind). Constructs like \%$form, and variable names like $a are found throughout it. The author apparently does not use any soruce code management solution, and is actually hostile towards other contributors, which compounds every problem listed here.

The third major problem is that the database is poorly designed. There is a general lack of data constraints, he uses floating point values to store money which are not arbitrary-precision safe, and there are no defined primary or foriegn keys, This makes customizing the application fairly dangerous.

Summary:
All in all I gave the project a 1 becase although it is quite useful, the lack of any real security, and the design issues make the software downright dangerous to use.

In the interest of full disclosure, I am a founding member of the LedgerSMB project which began as a fork from this project.

11 out of 11 users found the following review helpful.
Did this review help you? |
Good for some things, but questiona...  
3.0
   
written almost 9 years ago

Again in the Good/Bad/summary format.

The Good:
MySQL is a nice light-weight RDBMS which took the light-weight content management/data-driven web site by storm in the late 1990's. It is extremely fast for simple non-transactional workloads (as one would expect from a data-driven web stie) and has a number of cool application-development features which are generally beyond the scope of an RDBMS (such as HEAP tables which are not ACID compliant).

The Bad:
MySQL does not offer good performance on well-normalized datasets with many joins (it uses a simple planner which is less able to handle more complex planning problems). Furthermore, the data integrity features of MySQL can generally be turned off by applications so they cannot be relied upon.

Also, under certain circumstnaces, MySQL will silently ignore valid ISO SQL primary/foreign key designations, or create tables with non-ACID-compliant types.

Summary:
I gave this product a 3 out of five because it does not handle traditional RDBMS tasks well, but offers developers a number of options in creating light-weight applications which do not rely on these features too much.

11 out of 15 users found the following review helpful.
Did this review help you? |
Great DB  
5.0
 
written almost 9 years ago

Again in the Good/Bad/Summary format:

The Good:
PostgreSQL is an incredible open source project. It is extremely full-featured and does everything an RDBMS needs to do. For real business applications, it is solid, stable, and scales quite well. (MySQL my be OK for simple web apps but it lacks a track record of data integrity and performance on real-world loads that PostgreSQL has.)

PostgreSQL has two features which make it stand out as a very powerful database, and possibly the most programmable of them all (regardless of open source vs commercial). First, PostgreSQL has an extensible procedural language sytem so you can write stored procedures in Perl, C#, VB.Net, Java, or Python. The second is a very good extensible type system which is sufficiently to allow one to create full-fledged types using only procedural languages to define them.

Finally, PostgreSQL has become an easier database to use and manage than any other RDBMS that I have tried (even easier than MySQL).

The Bad:
PostgreSQL does not allow any sort of parallel execution of portions of a query, so this limits scalability in certain environments (for example business intelligence and data warehousing). In short the entire query runs in one single-threaded process (other queries can run in other processes concurrently). While this doesn't cause many problems with most workloads, it can be an issue when we are talking about aggregates based on terabytes of data. In these cases, you cannot use the free open source version. This is a minor point but....

Also, another limitation is the lack of an ability to build shared-everything clusters with the software. Again, this is minor in most environments and if you need this,buy DB2 or Oracle....

Summary:
I gave this project a 5 because it does everything you want an RDBMS to do for nearly every workload. Sure there are a few advanced workloads it doesnt handle well but these are corner cases and in some of these, proprietary versions are available with these features.

Overall, great product. Probably the only FOSS RDBMS I will ever use.

4 out of 4 users found the following review helpful.
Did this review help you? |