Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-10-03 Thread Lenz Emilitri
Another option that seems to be very good for handling logs where you write
quite a lot is Cassandra - http://cassandra.apache.org/ - but of course you
lose the SQL layer on top - unless you go for something like
http://blog.mariadb.org/announcing-the-cassandra-storage-engine/

This may not be completely off topic here because you get high data
security / crash protection and parallel cluster writes, so you could
insert tens/hundreds of thousands of events per second on a suitably
dimensioned cluster for an Asterisk server cluster of similar size :)
l.


2012/9/28 Leif Madsen leif.mad...@asteriskdocs.org

 On 27/09/12 11:45 AM, Matt Hamilton wrote:


 Date: Thu, 27 Sep 2012 10:23:35 +0200
 From: lenz.lo...@gmail.com
 To: asterisk-users@lists.digium.com
 Subject: Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

 I'd go for MyISAM and would set up a remote replica if data integrity is
 important.

 If you have like 1000 calls of (say) 30 seconds avg length, and you
 create 10 events per call, you would expect an event every three seconds.
 This is about 300 inserts per second. Say 600 at peaks. This should be
 feasible with server-grade hardware without much difficulty. Also as you
 always INSERT it behaves as a log file (no seeking, no locking) if the
 table is optimized.
 l.


 We decided to go with MyISAM since it supports concurrent
  inserts (as you suggested). Data integrity (a slight loss of
 call records) is something we can live by. Right now we use DRBD for
 replication, but I guess with MyISAM it doesn't make much sense if the db
 crashes. We are looking into other options as well.


 This may or may not be relevant, but you can also check out
 MySQL/Galera[0] for clustering solutions. Not sure if that gets you closer
 or further from your goal though :)  It uses a modified InnoDB to allow a
 multi-master MySQL cluster.

 I used a chef cookbook to deploy it[1].

 [0] http://www.codership.com/content/using-galera-cluster
 [1]
 http://support.severalnines.com/entries/21453521-opscode-s-chef-mysql-galera-and-clustercontrol


 --
 Leif Madsen
 http://www.oreilly.com/catalog/asterisk


 --
 _
 -- Bandwidth and Colocation Provided by http://www.api-digital.com --
 New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

 asterisk-users mailing list
 To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users




-- 
Loway - home of QueueMetrics - http://queuemetrics.com
Test-drive WombatDialer beta @ http://wombatdialer.com
--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-09-28 Thread Leif Madsen

On 27/09/12 11:45 AM, Matt Hamilton wrote:


Date: Thu, 27 Sep 2012 10:23:35 +0200
From: lenz.lo...@gmail.com
To: asterisk-users@lists.digium.com
Subject: Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

I'd go for MyISAM and would set up a remote replica if data integrity is 
important.

If you have like 1000 calls of (say) 30 seconds avg length, and you create 10 
events per call, you would expect an event every three seconds. This is about 
300 inserts per second. Say 600 at peaks. This should be feasible with 
server-grade hardware without much difficulty. Also as you always INSERT it 
behaves as a log file (no seeking, no locking) if the table is optimized.
l.


We decided to go with MyISAM since it supports concurrent
 inserts (as you suggested). Data integrity (a slight loss of call 
records) is something we can live by. Right now we use DRBD for replication, 
but I guess with MyISAM it doesn't make much sense if the db crashes. We are 
looking into other options as well.


This may or may not be relevant, but you can also check out 
MySQL/Galera[0] for clustering solutions. Not sure if that gets you 
closer or further from your goal though :)  It uses a modified InnoDB to 
allow a multi-master MySQL cluster.


I used a chef cookbook to deploy it[1].

[0] http://www.codership.com/content/using-galera-cluster
[1] 
http://support.severalnines.com/entries/21453521-opscode-s-chef-mysql-galera-and-clustercontrol



--
Leif Madsen
http://www.oreilly.com/catalog/asterisk

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
  http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users


Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-09-27 Thread Lenz Emilitri
I'd go for MyISAM and would set up a remote replica if data integrity is
important.

If you have like 1000 calls of (say) 30 seconds avg length, and you create
10 events per call, you would expect an event every three seconds. This is
about 300 inserts per second. Say 600 at peaks. This should be feasible
with server-grade hardware without much difficulty. Also as you always
INSERT it behaves as a log file (no seeking, no locking) if the table is
optimized.
l.


2012/9/26 Matt Hamilton mistral9...@hotmail.com

 Our top priority is the raw Write (INSERT) performance, Read (SELECT)
 performance is not important. Strict ACID compliance is not necessary
 either. MySQL (on a separate database server) should be able to handle
 inserting CDR records (approximately up to 10 records for each call) for
 about 1000 concurrent calls coming from an Asterisk cluster.

 Matt



-- 
Loway - home of QueueMetrics - http://queuemetrics.com
Test-drive WombatDialer beta @ http://wombatdialer.com
--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-09-27 Thread Matt Hamilton

Date: Thu, 27 Sep 2012 10:23:35 +0200
From: lenz.lo...@gmail.com
To: asterisk-users@lists.digium.com
Subject: Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

I'd go for MyISAM and would set up a remote replica if data integrity is 
important.

If you have like 1000 calls of (say) 30 seconds avg length, and you create 10 
events per call, you would expect an event every three seconds. This is about 
300 inserts per second. Say 600 at peaks. This should be feasible with 
server-grade hardware without much difficulty. Also as you always INSERT it 
behaves as a log file (no seeking, no locking) if the table is optimized.
l.


We decided to go with MyISAM since it supports concurrent
inserts (as you suggested). Data integrity (a slight loss of call 
records) is something we can live by. Right now we use DRBD for replication, 
but I guess with MyISAM it doesn't make much sense if the db crashes. We are 
looking into other options as well.

Thanks.
  --
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-09-26 Thread A J Stiles
On Tuesday 25 September 2012, Matt Hamilton wrote:
 Which one (InnoDB or MyISAM) is preferred for CDR as far as write
 performance is concerned?
 
 Thanks,
 Matt

MyISAM is faster  (on Linux anyway);  but you'd better have a UPS on the 
machine, because it is not very tolerant of unclean shutdowns.

-- 
AJS

Answers come *after* questions.

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users


Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-09-26 Thread Mitch Claborn
If I remember correctly, INNODB offers row level locking while MyISAM 
does not.



On 09/26/2012 05:18 AM, Thorsten Göllner wrote:

Am 26.09.2012 10:45, schrieb A J Stiles:

On Tuesday 25 September 2012, Matt Hamilton wrote:

Which one (InnoDB or MyISAM) is preferred for CDR as far as write
performance is concerned?

Thanks,
Matt

MyISAM is faster  (on Linux anyway);  but you'd better have a UPS on the
machine, because it is not very tolerant of unclean shutdowns.


You should not havy any problem on inserting into MyISAM or InnoDB - for
my opinion. How many calls do you expect? And consider the following:
the insert query is done by atserisk after hagnup. So your user will not
notice it.

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users



--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
  http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users

[asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-09-25 Thread Matt Hamilton
Which one (InnoDB or MyISAM) is preferred for CDR as far as write performance 
is concerned?

Thanks,
Matt
  --
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-09-25 Thread Logan Bibby
MyISAM would be best, in my opinion. The features that cause the little bit
of performance overhead in InnoDB wouldn't be necessary for CDR storage.

- Logan
On Sep 25, 2012 4:15 PM, Matt Hamilton mistral9...@hotmail.com wrote:

 Which one (InnoDB or MyISAM) is preferred for CDR as far as write
 performance is concerned?

 Thanks,
 Matt

 --
 _
 -- Bandwidth and Colocation Provided by http://www.api-digital.com --
 New to Asterisk? Join us for a live introductory webinar every Thurs:
http://www.asterisk.org/hello

 asterisk-users mailing list
 To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-09-25 Thread Patrick Lists

On 09/25/2012 11:18 PM, Logan Bibby wrote:

MyISAM would be best, in my opinion. The features that cause the little
bit of performance overhead in InnoDB wouldn't be necessary for CDR storage.


Iirc InnoDB is ACID compliant so might be preferable if MyISAM is not. 
More information here:


http://en.wikipedia.org/wiki/ACID

https://blogs.oracle.com/MySQL/entry/comparing_innodb_to_myisam_performance

Regards,
Patrick


--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
  http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users


Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-09-25 Thread Logan Bibby
Very good point. For revenue critical data like CDRs, being ACID compliant
is important.

MyISAM is compliant. And like InnoDB, can have the features making it
compliant turned off.
On Sep 25, 2012 6:12 PM, Patrick Lists asterisk-l...@puzzled.xs4all.nl
wrote:

 On 09/25/2012 11:18 PM, Logan Bibby wrote:

 MyISAM would be best, in my opinion. The features that cause the little
 bit of performance overhead in InnoDB wouldn't be necessary for CDR
 storage.


 Iirc InnoDB is ACID compliant so might be preferable if MyISAM is not.
 More information here:

 http://en.wikipedia.org/wiki/**ACID http://en.wikipedia.org/wiki/ACID

 https://blogs.oracle.com/**MySQL/entry/comparing_innodb_**
 to_myisam_performancehttps://blogs.oracle.com/MySQL/entry/comparing_innodb_to_myisam_performance

 Regards,
 Patrick


 --
 __**__**_
 -- Bandwidth and Colocation Provided by http://www.api-digital.com --
 New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

 asterisk-users mailing list
 To UNSUBSCRIBE or update options visit:
   
 http://lists.digium.com/**mailman/listinfo/asterisk-**usershttp://lists.digium.com/mailman/listinfo/asterisk-users

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

2012-09-25 Thread Matt Hamilton
Our top priority is the raw Write (INSERT) performance, Read (SELECT) 
performance is not important. Strict ACID compliance is not necessary either. 
MySQL (on a separate database server) should be able to handle inserting CDR 
records (approximately up to 10 records for each call) for about 1000 
concurrent calls coming from an Asterisk cluster. 
 
Matt


Date: Tue, 25 Sep 2012 18:19:50 -0500
From: lo...@keobi.com
To: asterisk-users@lists.digium.com
Subject: Re: [asterisk-users] MySQL InnoDB or MyISAM for CDR

Very good point. For revenue critical data like CDRs, being ACID compliant is 
important.
MyISAM is compliant. And like InnoDB, can have the features making it compliant 
turned off. 
On Sep 25, 2012 6:12 PM, Patrick Lists asterisk-l...@puzzled.xs4all.nl 
wrote:

On 09/25/2012 11:18 PM, Logan Bibby wrote:


MyISAM would be best, in my opinion. The features that cause the little

bit of performance overhead in InnoDB wouldn't be necessary for CDR storage.




Iirc InnoDB is ACID compliant so might be preferable if MyISAM is not. More 
information here:



http://en.wikipedia.org/wiki/ACID



https://blogs.oracle.com/MySQL/entry/comparing_innodb_to_myisam_performance



Regards,

Patrick





--

_

-- Bandwidth and Colocation Provided by http://www.api-digital.com --

New to Asterisk? Join us for a live introductory webinar every Thurs:

  http://www.asterisk.org/hello



asterisk-users mailing list

To UNSUBSCRIBE or update options visit:

  http://lists.digium.com/mailman/listinfo/asterisk-users



--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users  
  --
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users