Re: SELECT AND AGG huge tables - Mailing list pgsql-performance

From houmanb
Subject Re: SELECT AND AGG huge tables
Date
Msg-id 1350473046875-5728572.post@n5.nabble.com
Whole thread Raw
In response to Re: SELECT AND AGG huge tables  (Craig Ringer <ringerc@ringerc.id.au>)
Responses Re: SELECT AND AGG huge tables
List pgsql-performance
Hi all,
Thanks for your advice and the link about posting my question in an
appropriate form.
Here are the info. I thank all of you in advance.

Best regards
Houman



Postgres version: 9.1.4
=================================================
Postgres.conf
max_connections = 100
shared_buffers = 8192MB
work_mem = 500MB
log_statement = 'none'
datestyle = 'iso, mdy'
lc_messages = 'en_US.UTF-8'
lc_monetary = 'en_US.UTF-8'
lc_numeric = 'en_US.UTF-8'
lc_time = 'en_US.UTF-8'
default_text_search_config = 'pg_catalog.english'
max_locks_per_transaction = 256

=================================================
Hardware:
CPU Quad Core Intel CPU
processor    : 0-7
vendor_id    : GenuineIntel
cpu family    : 6
model        : 45
model name    : Intel(R) Core(TM) i7-3820 CPU @ 3.60GHz

Memory:
MemTotal:       32927920 kB

HDD:
OCZ VeloDrive - Solid-State-Disk - 600 GB - intern - PCI Express 2.0 x8
Multi-Level-Cell (MLC)
PCI Express 2.0 x8
========================IO/stat===================
iostat sdb1 1
Linux 3.2.0-23-generic (regula2)     10/17/2012     _x86_64_    (8 CPU)
Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sdb1              6.44       217.91       240.45 1956400373 2158777589
sdb1              0.00         0.00         0.00          0          0
sdb1              0.00         0.00         0.00          0          0
sdb1              0.00         0.00         0.00          0          0
sdb1              0.00         0.00         0.00          0          0
sdb1              0.00         0.00         0.00          0          0
=========================vmstat==========================
procs -----------memory---------- ---swap-- -----io---- -system--
----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id
wa
 1  0  44376 2417096 210784 28664024    0    0    30    35    0    0  0  0
100  0
 0  0  44376 2416964 210784 28664024    0    0     0     0   80  138  0  0
100  0
 1  0  44376 2416592 210784 28664024    0    0     0     0  278  228  7  0
93  0
 1  0  44376 2416592 210784 28664280    0    0     0     0  457  305 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  472  303 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  462  296 13  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  478  293 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  470  317 12  0
87  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  455  299 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  459  301 12  0
87  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  370  291  7  5
88  0
 1  0  44376 2416716 210784 28664280    0    0     0    29  459  319 12  1
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  453  295 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  449  284 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     8  462  304 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  459  307 12  0
88  0
 2  0  44376 2416716 210784 28664280    0    0     0     0  461  300 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  457  299 12  0
87  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  439  295 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  439  306 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  448  305 12  0
88  0
 1  0  44376 2416716 210784 28664280    0    0     0     0  457  289 12  0
88  0
 0  0  44376 2416716 210784 28664280    0    0     0     0  174  179  3  0
97  0
 0  0  44376 2416716 210784 28664280    0    0     0     0   73  133  0  0
100  0
 0  0  44376 2416716 210784 28664280    0    0     0     0   75  133  0  0
100  0
 0  0  44376 2416716 210784 28664280    0    0     0     0   70  127  0  0
100  0



        Column         |            Type             |
Modifiers
-----------------------+-----------------------------+-------------------------------------------------------
 modifying_action      | integer                     |
 modifying_client      | integer                     |
 modification_time     | timestamp without time zone |
 instance_entity       | integer                     |
 id                    | integer                     | not null default
nextval('enigma.fact_seq'::regclass)
 successor             | integer                     |
 reporting_date        | integer                     |
 legal_entity          | integer                     |
 client_system         | integer                     |
 customer              | integer                     |
 customer_type         | integer                     |
 borrower              | integer                     |
 nace                  | integer                     |
 lsk                   | integer                     |
 review_date           | integer                     |
 uci_status            | integer                     |
 rating                | integer                     |
 rating_date           | integer                     |
 asset_class_sta_flags | integer                     |
 asset_class_flags     | integer                     |
 balance_indicator     | integer                     |
 quantity              | integer                     |
 credit_line           | numeric                     |
 outstanding           | numeric                     |
 ead                   | numeric                     |
 ead_collateralized    | numeric                     |
 ead_uncollateralized  | numeric                     |
 el                    | numeric                     |
 rwa                   | numeric                     |
 lgd                   | numeric                     |
 pd                    | numeric                     |
 economic_capital      | numeric                     |
 unit                  | integer                     |
========================================================================
Indexes:
 "fact_pkey" PRIMARY KEY, btree (id)
 "enigma_fact_id_present" UNIQUE CONSTRAINT, btree (id)
 "indx_enigma_fact_legal_entity" btree (legal_entity)
 "indx_enigma_fact_reporting_date" btree (reporting_date)
Triggers:
    fact_before_update_referrers_trigger BEFORE DELETE ON enigma.fact FOR
EACH ROW EXECUTE PROCEDURE enigma.fact_update_referrers_function()
========================================================================
genesis=# SELECT count(*) FROM enigma.fact;
  count
---------
 7493958
========================================================================
EXPLAIN analyze SELECT
SUM(T.quantity) AS T__quantity,
SUM(T.credit_line) AS T__credit_line,
SUM(T.outstanding) AS T__outstanding,
SUM(T.ead) AS T__ead,
SUM(T.ead_collateralized) AS T__ead_collateralized,
SUM(T.ead_uncollateralized) AS T__ead_uncollateralized,
SUM(T.el) AS T__el,
SUM(T.rwa) AS T__rwa,
AVG(T.lgd) AS T__lgd,
AVG(T.pd) AS T__pd
FROM enigma.fact T
GROUP BY T.legal_entity
ORDER BY T.legal_entity;

----------------------------------------------------------------------------------------------------------------------------------
 Sort  (cost=1819018.32..1819018.36 rows=15 width=48) (actual
time=20436.264..20436.264 rows=15 loops=1)
   Sort Key: legal_entity
   Sort Method: quicksort  Memory: 27kB
   ->  HashAggregate  (cost=1819017.80..1819018.02 rows=15 width=48) (actual
time=20436.221..20436.242 rows=15 loops=1)
         ->  Seq Scan on fact t  (cost=0.00..959291.68 rows=31262768
width=48) (actual time=2.619..1349.523 rows=7493958 loops=1)
 Total runtime: 20436.410 ms

========================================================================

EXPLAIN (BUFFERS true, ANALYZE)  SELECT SUM(T.quantity) AS T__quantity,
SUM(T.credit_line) AS T__credit_line,
SUM(T.outstanding) AS T__outstanding,
SUM(T.ead) AS T__ead,
SUM(T.ead_collateralized) AS T__ead_collateralized,
SUM(T.ead_uncollateralized) AS T__ead_uncollateralized,
SUM(T.el) AS T__el,
SUM(T.rwa) AS T__rwa,
AVG(T.lgd) AS T__lgd,
AVG(T.pd) AS T__pd
FROM enigma.fact T
GROUP BY T.legal_entity
ORDER BY T.legal_entity;
                                                            QUERY PLAN
          

----------------------------------------------------------------------------------------------------------------------------------
 Sort  (cost=1819018.32..1819018.36 rows=15 width=48) (actual
time=20514.976..20514.977 rows=15 loops=1)
   Sort Key: legal_entity
   Sort Method: quicksort  Memory: 27kB
   Buffers: shared hit=2315 read=644351
   ->  HashAggregate  (cost=1819017.80..1819018.02 rows=15 width=48) (actual
time=20514.895..20514.917 rows=15 loops=1)
         Buffers: shared hit=2313 read=644351
         ->  Seq Scan on fact t  (cost=0.00..959291.68 rows=31262768
width=48) (actual time=2.580..1385.491 rows=7493958 loops=1)
               Buffers: shared hit=2313 read=644351
 Total runtime: 20515.369 ms


                                                           QUERY PLAN
         




--
View this message in context: http://postgresql.1045698.n5.nabble.com/SELECT-AND-AGG-huge-tables-tp5728306p5728572.html
Sent from the PostgreSQL - performance mailing list archive at Nabble.com.


pgsql-performance by date:

Previous
From: Martin French
Date:
Subject: Re: Out of shared mem on new box with more mem, 9.1.5 -> 9.1.6
Next
From: Niko Kiirala
Date:
Subject: High cost estimates when n_distinct is set