Telecom & Mnesia - Call Detail Record Collection
Thu Apr 11 17:19:12 CEST 2002
I realize I am jumping into an area I am not too versed in,
but here goes. In the database world I live in (pick like stuff)
there is a file type called a Partfile. Depending on the key
it goes into a section of the file (key ends in 0 it goes into
the 0 part file)
It would seem to me that segmenting transactions to Berkeley DB
that has several "instances" running on the various nodes would
work. But it may not solve the problem discussed, and may be
a maintenacne headache.
From: Ulf Wiger [mailto:]
Sent: Thursday, April 11, 2002 1:42 AM
To: Per Bergqvist
Cc: 'Erlang Questions'
Subject: Re: Telecom & Mnesia - Call Detail Record Collection
On Thu, 11 Apr 2002, Per Bergqvist wrote:
>I have a similiar problem like your CDR problem and for this
>purpose I use Berkeley db which is performing well even with
>very large databases.
>This however, does not give you a distributed database. My
>intention is to combine Berkeley db with mnesia transaction
>management, but this is really just an idea at this stage due to
>lack of time.
I've also thought about similar things. One thing I did in the
past was to add triggers (abort/commit) to the rdbms contrib.
It's not a completely clean solution, but one could perhaps build
on the rdbms framework in order to tie an external database to
mnesia's transaction handling. At least, it doesn't require
hacking mnesia to get it working reasonably well... I think.
(The triggers work well. We use exactly the same solution in AXD
301, and they work even for nested transactions.)
A seemless integration of external tables in mnesia requires some
hacking -- not a lethal dose, but enough to warrant some
consideration first. It's been discussed. Dan G. usually doesn't
do cartwheels when it's brought up, but the idea hasn't been
killed yet. ;)
I have not updated the rdbms contrib for OTP R8 (it still
requires a patch to mnesia_schema, but I've been promised that
my changes will be part of the next mnesia release.) If anyone
actually uses rdbms today, I'm not aware of it.
My next rdbms project was going to be to incorporate support for
fragmented tables, together with a facility to explicitly control
the distribution of objects between fragments. If anyone is
interested in that, let me know, and I might give it slightly
More information about the erlang-questions