[erlang-questions] HOW TO IMPROVE THE PERFORMANCE OF DETS

Christian S <>
Thu Dec 21 11:53:13 CET 2006


On 12/21/06, chamila piyasena <> wrote:
> actually i was trying to improve the performance(the data retrieving ) of a
> smsc log server.
>
>  the coding that I have  use dets:select(Name, matchspec, N) inside the
> function that gives the out put according to the request.
>
> And there may be huge number of rows(may be millions) that keeps track of
> sms records.

Why are you calling select on this data? Are you trying to find
messages destined for a given terminal? Are you searching messages
that are undelivered and too old so you can remove them?

All these things warrant extra indecies by you. If you have millions
of messages you probably want the robustness from using mnesia in a
distributed setting too. Downtime affects too many users.

When you receive a message, besides storing its content, also keep
another table up to date that maps a terminal id to the messages
destined for it.


Using an external SQL database could be an alternative.



More information about the erlang-questions mailing list