Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re^2: DBI Style Inquiry

by Tux (Monsignor)
on Jun 27, 2013 at 12:08 UTC ( #1041000=note: print w/ replies, xml ) Need Help??


in reply to Re: DBI Style Inquiry
in thread DBI Style Inquiry

But fetchrow_hashref is much slower than the other fetch methods. It doesn't really matter if you fetch just a single row, but when traversing thousands of records, you will notice. For speed use bind_columns (the last example of that section shows how to get the best of both worlds). Here are some (older) speed compares for different database types:


Enjoy, Have FUN! H.Merijn


Comment on Re^2: DBI Style Inquiry
Select or Download Code
Re^3: DBI Style Inquiry
by Ralesk (Pilgrim) on Jun 27, 2013 at 12:20 UTC

    Nice comparison. Would have probably been more interesting to see a graph that isnít anchored on hashref = 100% though.

Re^3: DBI Style Inquiry
by erix (Vicar) on Jun 28, 2013 at 12:14 UTC

    I am surprised by the difference (even if it's small) between fetch and fetchrow_arrayref (your BC and DBC), as DBI docs say:

    "fetchrow_arrayref" $ary_ref = $sth->fetchrow_arrayref; $ary_ref = $sth->fetch; # alias

    Or is the essential difference something else?

    (Also, it would be interesting to have the DBMS version-numbers on those pages; it does say 2006, that's a long time ago. I would say that (arguably, no doubt) PostgreSQL has advanced more than the others in performance in this particular period)

      The difference between BC and DBC is the method-call overhead. If you really want to squeze out nonoseconds per call, it matters. It is not something I would propagate in use though:

      Create table 5000 x 12 Dbindcol 660153.156 recs/sec 4.8 x faster DBC bindcol 633472.697 recs/sec 4.6 x faster BC Darrayref 563380.282 recs/sec 4.1 x faster DAR arrayref 525486.075 recs/sec 3.8 x faster AR array 227086.929 recs/sec 1.7 x faster A hashref 136836.344 recs/sec HR

      Enjoy, Have FUN! H.Merijn

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1041000]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (17)
As of 2014-08-27 21:39 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (253 votes), past polls