Tuesday, November 27, 2007

ACID For Databases

ACID: Atomicity, Consistency, Isolation, and Durability

ACID properties are an important concept for databases. The acronym stands for Atomicity, Consistency, Isolation, and Durability. The ACID properties apply to both ODBMSs and RDBMSs.

ACID is a database design term

ACID Stands for Atomicity, Consistency, Isolation, and Durability. Here's a good definition of those terms from www.whatis.com:

Atomicity. In a transaction involving two or more discrete pieces of information, either all of the pieces are committed or none are.

Consistency. A transaction either creates a new and valid state of data, or, if any failure occurs, returns all data to its state before the transaction was started.

Isolation. A transaction in process and not yet committed must remain isolated from any other transaction.

Durability. Committed data is saved by the system such that, even in the event of a failure and system restart, the data is available in its correct state

Foreign Key Support

Just to point out an error: Foreign key support is available via InnoDB as well.

Also, under performance, InnoDB performs even faster than normal MySQL.

Also, unless I am mistaken, PostgreSQL is available via windows through Cgywin. This should be mentioned.

Considering that yes, the author did say he was refering to the default installation, that really isn't fair. Default installations are just that, default. They shoudlnt' contain extra stuff you don't need. So if you want somethign, you add it in when you need it.

That being said, I agree with this article, it's a fair comparison.

Kavithaigal

Tuesday, November 13, 2007

MODEL VIEW CONTROLLER
The model is responsible for maintaining the state of the application. Sometimes
this state is transient, lasting for just a couple of interactions with the
user. Sometimes the state is permanent and will be stored outside the application,
often in a database.

The view is responsible for generating a user interface, normally based on
data in the model. For example, an online store will have a list of products
to be displayed on a catalog screen. This list will be accessible via the model,
but it will be a view that accesses the list from the model and formats it for
the end user. Although the view may present the user with various ways of
inputting data, the view itself never handles incoming data. The view’s work
is done once the data is displayed. There may well be many views that access
the same model data, often for different purposes. In the online store, there’ll be a view that displays product information on a catalog page and another set
of views used by administrators to add and edit products.


Controllers orchestrate the application. Controllers receive events from the
outside world (normally user input), interact with the model, and display an
appropriate view to the user.