[erlang-questions] Re: The Unbearable Slowness of Some disc_only_copies Transactions

Garrett Smith <>
Tue Dec 8 01:28:46 CET 2009


Do you mean mount a single volume on multiple EBS partitions (e.g.
raid-0) or to explicitly store different Mnesia tables/fragments on
multiple volumes?

On Mon, Dec 7, 2009 at 5:02 PM, adam <> wrote:
> Not sure if this will help anyone else, but there are two parts to the
> solution I used for this:
>
> 1) Use +A [Num threads] with erl to increase the number of
> asynchronous threads for IO. (Thanks to Valentin Micic for this one)
> 2) If using a file store like EBS, distribute the database across
> several EBS volumes.
>
> Adam
>
> On Dec 2, 10:24 pm, adam <> wrote:
>> We have running Erlang code that is executing about 30 transactions
>> per second. Each transaction puts a write lock on a couple of records,
>> then performs a read and a write. We need to hold several hundred
>> million records simultaneously.
>>
>> When using disc_copies tables, we can easily manage to run about 160
>> transactions per second. We also see that each transaction takes an
>> average of about 750-1400 microseconds to run. Min time is 350
>> microseconds, and max time seems to go between 30-100 milliseconds.
>>
>> However, with disc_only_copies tables, individual transaction time
>> ranges between 500 microseconds up to about 90 seconds(!). Why do
>> individual transactions sometimes take such a long time with
>> disc_only_copies?
>>
>> Thank you!
>> Adam
>>
>> ________________________________________________________________
>> erlang-questions mailing list. Seehttp://www.erlang.org/faq.html
>> erlang-questions (at) erlang.org
>
> ________________________________________________________________
> erlang-questions mailing list. See http://www.erlang.org/faq.html
> erlang-questions (at) erlang.org
>
>


More information about the erlang-questions mailing list