[Info-vax] Databases versus RMS
Jan-Erik Soderholm
jan-erik.soderholm at telia.com
Fri Apr 20 02:29:27 EDT 2012
Arne Vajhøj wrote 2012-04-20 04:50:
> On 4/19/2012 1:57 AM, Dirk Munk wrote:
>> Richard B. Gilbert wrote:
>>> On 4/17/2012 2:52 PM, JF Mezei wrote:
>>>> A web forum has been down for over 24 hours now because of a power
>>>> failure. Seems their database "broke".
>>>>
>>>> Since there are few teenagers here, I figured I might get some "senior"
>>>> opinions.
>>>>
>>>> Are database engines so fragile that a power failure will truly wreak
>>>> havok on a database requiring time consuming work and debugging ?
>>>
>>> Some are. Some are not. The expensive ones, e.g. Oracle, should survive
>>> without problems.
>>>
>>> My failing memory recalls something that was called "two phase commit"
>>> or something like that. You write what you're going to do and then you
>>> do it. On a successful commit, you mark the transaction complete. If
>>> your commit fails, you have all the pieces necessary to recover.
>>
>> Two phase commit was something else as far as I remember. Think of a
>> central location where you have a complete database, and a branch office
>> with a part of the database that is important for that office. All the
>> database actions will be done on the local database of every office, and
>> only when a transaction needs to be written to the databases, both
>> database instances will communicate to insure that the information in
>> both databases stays synchronised.
>
> That sounds more like a replication scenario.
>
I'd say so too. Like a price on a product that is changed and
has to be "replicated" to all offices. 2PC is more when both
updates *has* to be done in *both* systems or not at all.
Like withdraw money in one account/system and add it in the
the other. They have to match up.
> You need 2PC if you need to update two databases
> let us say an Oracle database and a MySQL database
> and need to make the combined update atomic.
>
> Arne
Could be two Rdb, Oracle or MySQL (or any other) databases. I does
not have to be *different* engines, but it has to be two engines
both supporting transactions.
http://en.wikipedia.org/wiki/Two-phase_commit_protocol
More information about the Info-vax
mailing list