Firebird 2.5 Benchmark, by Tsutomu Hayashi (Tomneko)

10,036
-1

Published on

In this presentation Tsutomu Hayashi presents the results of testing Firebird 2.5 and 2.1 versus MySQL and Postgresql. Firebird shows great results against MySQL and Postgresql.

Published in: Technology, Sports
1 Comment
3 Likes
Statistics
Notes
No Downloads
Views
Total Views
10,036
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
55
Comments
1
Likes
3
Embeds 0
No embeds

No notes for slide
  • < alter character set のサンプル> create database 'people.fdb' default character set win1252; alter character set win1252 set default collation win_ptbr; create table person ( id integer, name varchar(50) /* will use the database default character set and the win1252 default collation */ ); insert into person values (1, 'adriano'); insert into person values (2, 'ADRIANO'); /* will retrieve both records because win_ptbr is case insensitive */ select * from person where name like 'A%';
  • (1) begin; (2) update accounts set abalance = abalance + :delta where aid = :aid;     ここで, :delta は 1 から 1000 までの値を取る乱数, :aid は 1 から 100000 まで     の値を取る乱数です.以下,乱数の値はそれぞれこのトランザクションの     中では同じ値を使います. (3) select abalance from accounts where aid = :aid;     ここでは 1 件だけ検索されます. (4) update tellers set tbalance = tbalance + :delta where tid = :tid;     ここで :tid は 1 から 10 の間の値をとる乱数です. (5) update branches set bbalance = bbalance + :delta where bid = :bid;     ここで :bid は 1 から [ スケリングファクター ] の間の値を取る乱数です. (6) insert into history(tid,bid,aid,delta) values(:tid,:bid,:aid,:delta); (7) end;
  • (1) begin; (2) update accounts set abalance = abalance + :delta where aid = :aid;     ここで, :delta は 1 から 1000 までの値を取る乱数, :aid は 1 から 100000 まで     の値を取る乱数です.以下,乱数の値はそれぞれこのトランザクションの     中では同じ値を使います. (3) select abalance from accounts where aid = :aid;     ここでは 1 件だけ検索されます. (4) update tellers set tbalance = tbalance + :delta where tid = :tid;     ここで :tid は 1 から 10 の間の値をとる乱数です. (5) update branches set bbalance = bbalance + :delta where bid = :bid;     ここで :bid は 1 から [ スケリングファクター ] の間の値を取る乱数です. (6) insert into history(tid,bid,aid,delta) values(:tid,:bid,:aid,:delta); (7) end;
  • ・本体は NTT-X ストアで 14,800 円。もう終わっちゃったけど・・・ ・ PhenomⅡ にしたかったけど、 AM2+ までの対応なので Phonem にしました。 ・メモリは ECC じゃないけど、 4GB は最低限欲しいですよね。
  • CS っていうのは、クラシックサーバーです。カーネル・サンダースじゃないですよ。ましてやサンダース軍曹じゃないです。
  • 500 クライアントになっても全然速度が落ちないよ・・・、これはすごい!
  • Firebird 2.5 Benchmark, by Tsutomu Hayashi (Tomneko)

    1. 1. FirebirdJapanUsersAssociation TsutomuHayashi Firebird2.5 BenchMarks - Performance VS MySQL / PostgreSQL -
    2. 2. DBBench <ul><li>pgbench(PostgreSQL) port for Firebird/MySQL </li></ul><ul><ul><li>Delphi + dbExpress Mutli Thread impliment </li></ul></ul><ul><ul><li>Change dbExpress drivers enables for other RDBMSs </li></ul></ul><ul><ul><li>Same code/Same binary testing for Firebird/MySQL/PostgreSQL </li></ul></ul><ul><ul><li>Using GUI for easy use </li></ul></ul><ul><ul><li>Most easiest Database Benchmark </li></ul></ul>Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    3. 3. TPC-B <ul><li>TPC is the benchmark tests definition by &quot; Transaction Processing Performanc Counsil&quot; </li></ul><ul><ul><li>TPC-B is defined at 1990, deplicated 1995 </li></ul></ul><ul><ul><li>This test assume batch operation with many parallel transactions. </li></ul></ul><ul><ul><li>Simulation dealing account between branches in bank. </li></ul></ul>Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    4. 4. TPC-B <ul><li>Usin 4 tables </li></ul><ul><ul><li>create table branches(bid int not null,bbalance int,filler char(88)); </li></ul></ul><ul><ul><li>create table tellers(tid int not null,bid int,tbalance int,filler char(84)); </li></ul></ul><ul><ul><li>create table accounts(aid int not null,bid int,abalance int,filler char(84)); </li></ul></ul><ul><ul><li>create table history(tid int,bid int,aid int,delta int,mtime timestamp,filler char(22)) </li></ul></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    5. 5. TPC-B <ul><ul><li>Processing is </li></ul></ul><ul><ul><li>update accounts set abalance = abalance + :delta where aid = :aid; </li></ul></ul><ul><ul><li>select abalance from accounts where aid = :aid; </li></ul></ul><ul><ul><li>update tellers set tbalance = tbalance + :delta where tid = :tid; </li></ul></ul><ul><ul><li>update branches set bbalance = bbalance + :delta where bid = :bid; </li></ul></ul><ul><ul><li>insert into history(tid,bid,aid,delta) values(:tid,:bid,:aid,:delta); </li></ul></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    6. 6. Scaling Factor <ul><ul><li>Scaling factor is test scale </li></ul></ul><ul><ul><li>Scaling factor affects </li></ul></ul><ul><ul><ul><li>Branch count equals scaling factor </li></ul></ul></ul><ul><ul><ul><li>Teller count is scaling factor * 10 </li></ul></ul></ul><ul><ul><ul><li>Account count is scaling factor * 100,000 </li></ul></ul></ul><ul><ul><li>So I use scaling factor 100 </li></ul></ul><ul><ul><ul><li>Branch is 100, Teller is 1000, Accounts is 10,000,000 </li></ul></ul></ul><ul><ul><ul><li>Firebird database almost 600MB, MySQL is almost 1.2GB </li></ul></ul></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    7. 7. Copyright(c) 2009 Tsutomu Hayashi All rights reserved. Benchmark Environment HP ML115G5 AMD AthlonTM 1640B ( 2.7GHz ) AMD PhenomTM 9350e ( 2.0GHz ) ECC 512MB DDR2-6400 Non-ECC 4GB DDR2-6400 HDD is standard SATA160GB
    8. 8. Firebird 2.1SS vs Firebird 2.5SS <ul><li>Firebird2.1 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Windows Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    9. 9. Firebird 2.1CS vs Firebird 2.5CS <ul><li>Firebird2.1 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Windows Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    10. 10. Firebird 2.1SS vs Firebird 2.5 SC <ul><li>Firebird2.1 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Windows Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    11. 11. Firebird 2.1SS vs Firebird 2.5SS <ul><li>Firebird2.1 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Linux draw Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    12. 12. Firebird 2.1CS vs Firebird 2.5CS <ul><li>Firebird2.1 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Linux Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    13. 13. Firebird 2.1SS vs Firebird 2.5SC <ul><li>Firebird2.1 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Linux Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    14. 14. MySQL 5.1 vs Firebird 2.5SC <ul><li>MySQL5.1 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Windows Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    15. 15. MySQL 5.1 vs Firebird 2.5SC <ul><li>MySQL5.1 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Linux Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    16. 16. MySQL 5.1 vs Firebird 1.5SS <ul><li>MySQL5.1 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Linux draw Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    17. 17. PostgreSQL 8.4.1 vs Firebird 2.5CS <ul><li>PostgreSQL8.4 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Windows Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    18. 18. PostgreSQL 8.4.1 vs Firebird 2.5CS <ul><li>PostgreSQL8.4 vs Firebird2.5 </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Linux Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    19. 19. on Linux, Firebird is very slow!! Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Linux Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    20. 20. Ext3 vs XFS <ul><li>I assume Filesystem? Using Fire bird2.5SC </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Linux Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    21. 21. Linux+XFS is very Fast! <ul><li>Test with XFS for many clients </li></ul>Copyright(c) 2008 Tsutomu Hayashi All rights reserved. @Linux Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    22. 22. Results <ul><li>  Benchmarks are rough estimation at all. </li></ul><ul><li>  Firebird2.5 is very fast than other RDBMSs. </li></ul><ul><li>  Normaly running many clients over 500 . </li></ul>Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    23. 23. Coming Soon <ul><li>Japanese publisher &quot;Shoei-sya&quot; will publish new Firebird book in Japan at December 2009. </li></ul>Copyright(c) 2009 Tsutomu Hayashi All rights reserved.
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×