Re: [GENERAL] performance very slow

From: "Mario Soto" <mario_soto(at)venezolanadeavaluos(dot)com>
To: <billm(at)lulu(dot)com>
Cc: <pgsql-performance(at)postgresql(dot)org>
Subject: Re: [GENERAL] performance very slow
Date: 2004-05-26 16:35:57
Message-ID: 38009.200.35.66.77.1085589357.squirrel@mail.venezolanadeavaluos.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-performance

OK. Thank fou your help.

In this moment the size of database its 2GB.

And the machine it´s only to postgresql.

Gracias

> Mario Soto wrote:
>
>>Hi. i hava a postresql 7.4.2 in a production server.
>>
>>tha machine is a Pentium IV 2,6 GHZ AND 1 GB IN RAM with lINUX RH 9.0.
>>
>>
> Mario,
>
> Start with reading this:
>
> http://www.varlena.com/varlena/GeneralBits/Tidbits/perf.html
>
> Without knowing anything about the size of your database, your usage
> patterns, or your disk subsystem (the most important part of a database
> server, imho) I would suggest you first increase the number of
> shared_buffers allocated to Postgres. Most recommend keeping this number
> below 10000, but I've found I get the best performance with about 24000
> shared_buffers with a ~5GB database on a machine with 4GB of ram,
> dedicated to Postgres. You'll have to experiment to see what works best
> for you.
>
> Also, make sure you VACUUM and ANALYZE on a regular basis. Again, the
> frequency of this really depends on your data and usage patterns. More
> frequent write operations require more frequent vacuuming.
>
> Good luck.
>
> Best Regards,
>
> Bill Montgomery
>
>>The postresql.conf say:
>>
>>#---------------------------------------------------------------------------
>> # RESOURCE USAGE (except WAL)
>>#---------------------------------------------------------------------------
>>
>># - Memory -
>>
>>shared_buffers = 1000 # min 16, at least max_connections*2,
>> 8KB each
>>sort_mem = 1024 # min 64, size in KB
>>vacuum_mem = 8192 # min 1024, size in KB
>>
>># - Free Space Map -
>>
>>max_fsm_pages = 20000 # min max_fsm_relations*16, 6 bytes
>> each max_fsm_relations = 1000 # min 100, ~50 bytes each
>>
>># - Kernel Resource Usage -
>>
>>max_files_per_process = 1000 # min 25
>>#preload_libraries = ''
>>
>>
>>#---------------------------------------------------------------------------
>> # WRITE AHEAD LOG
>>#---------------------------------------------------------------------------
>>
>># - Settings -
>>
>>fsync = true # turns forced synchronization on or
>> off wal_sync_method = fsync # the default varies across platforms:
>> # fsync, fdatasync, open_sync, or
>>open_datasync
>>wal_buffers = 8 # min 4, 8KB each
>>
>># - Checkpoints -
>>
>>checkpoint_segments = 3 # in logfile segments, min 1, 16MB each
>>checkpoint_timeout = 300 # range 30-3600, in seconds
>>checkpoint_warning = 30 # 0 is off, in seconds
>>commit_delay = 0 # range 0-100000, in microseconds
>> commit_siblings = 5 # range 1-1000
>>
>>#---------------------------------------------------------------------------
>> # QUERY TUNING
>>#---------------------------------------------------------------------------
>>
>># - Planner Method Enabling -
>>
>>enable_hashagg = true
>>enable_hashjoin = true
>>enable_indexscan = true
>>enable_mergejoin = true
>>enable_nestloop = true
>>enable_seqscan = true
>>enable_sort = true
>>enable_tidscan = true
>>
>># - Planner Cost Constants -
>>
>>effective_cache_size = 1000 # typically 8KB each
>>random_page_cost = 4 # units are one sequential page fetch
>> cost cpu_tuple_cost = 0.01 # (same)
>>cpu_index_tuple_cost = 0.001 # (same)
>>cpu_operator_cost = 0.0025 # (same)
>>
>># - Genetic Query Optimizer -
>>
>>geqo = true
>>geqo_threshold = 11
>>geqo_effort = 1
>>geqo_generations = 0
>>geqo_pool_size = 0 # default based on tables in statement,
>> # range 128-1024
>>geqo_selection_bias = 2.0 # range 1.5-2.0
>>
>># - Other Planner Options -
>>
>>default_statistics_target = 100 # range 1-1000
>>from_collapse_limit = 30
>>join_collapse_limit = 30 # 1 disables collapsing of explicit
>> JOINs
>>
>>
>>#---------------------------------------------------------------------------
>> # ERROR REPORTING AND LOGGING
>>#---------------------------------------------------------------------------
>>
>># - Syslog -
>>
>>#syslog = 0 # range 0-2; 0=stdout; 1=both; 2=syslog
>> #syslog_facility = 'LOCAL0'
>>#syslog_ident = 'postgres'
>>
>># - When to Log -
>>
>>#client_min_messages = notice # Values, in order of decreasing
>> detail:
>> # debug5, debug4, debug3, debug2,
>> debug1, # log, info, notice, warning,
>> error
>>
>>#log_min_messages = notice # Values, in order of decreasing
>> detail:
>> # debug5, debug4, debug3, debug2,
>> debug1, # info, notice, warning,
>> error, log, fatal, # panic
>>
>>#log_error_verbosity = default # terse, default, or verbose messages
>>
>>#log_min_error_statement = panic # Values in order of increasing
>> severity:
>> # debug5, debug4, debug3, debug2,
>> debug1, # info, notice, warning,
>> error, panic(off)
>>
>>#log_min_duration_statement = -1 # Log all statements whose
>> # execution time exceeds the value, in
>> # milliseconds. Zero prints all
>> queries. # Minus-one disables.
>>
>>#silent_mode = false # DO NOT USE without Syslog!
>>
>># - What to Log -
>>
>>
>>
>>debug_print_parse = true
>>debug_print_rewritten = true
>>debug_print_plan = true
>>debug_pretty_print = true
>>log_connections = true
>>log_duration = true
>>log_pid = true
>>log_statement = true
>>log_timestamp = true
>>log_hostname = true
>>log_source_port = true
>>
>>
>>#---------------------------------------------------------------------------
>> # RUNTIME STATISTICS
>>#---------------------------------------------------------------------------
>>
>># - Statistics Monitoring -
>>
>>log_parser_stats = true
>>log_planner_stats = true
>>log_executor_stats = true
>>#log_statement_stats = true
>>
>># - Query/Index Statistics Collector -
>>
>>stats_start_collector = true
>>stats_command_string = true
>>stats_block_level = true
>>stats_row_level = true
>>stats_reset_on_server_start = true
>>
>>
>>#---------------------------------------------------------------------------
>> # CLIENT CONNECTION DEFAULTS
>>#---------------------------------------------------------------------------
>>
>># - Statement Behavior -
>>
>>#search_path = '$user,public' # schema names
>>#check_function_bodies = true
>>#default_transaction_isolation = 'read committed'
>>#default_transaction_read_only = false
>>#statement_timeout = 0 # 0 is disabled, in milliseconds
>>
>># - Locale and Formatting -
>>
>>#datestyle = 'iso, mdy'
>>#timezone = unknown # actually, defaults to TZ environment
>> setting
>>#australian_timezones = false
>>#extra_float_digits = 0 # min -15, max 2
>>#client_encoding = sql_ascii # actually, defaults to database
>> encoding
>>
>># These settings are initialized by initdb -- they may be changed
>> lc_messages = 'es_VE.UTF-8' # locale for system error
>> message strings
>>lc_monetary = 'es_VE.UTF-8' # locale for monetary
>> formatting lc_numeric = 'es_VE.UTF-8' # locale for number
>> formatting lc_time = 'es_VE.UTF-8' # locale for time
>> formatting
>>
>># - Other Defaults -
>>
>>explain_pretty_print = true
>>#dynamic_library_path = '$libdir'
>>#max_expr_depth = 10000 # min 10
>>
>>
>>#---------------------------------------------------------------------------
>> # LOCK MANAGEMENT
>>#---------------------------------------------------------------------------
>>
>>#deadlock_timeout = 1000 # in milliseconds
>>#max_locks_per_transaction = 64 # min 10, ~260*max_connections bytes
>> each
>>
>>
>>#---------------------------------------------------------------------------
>> # VERSION/PLATFORM COMPATIBILITY
>>#---------------------------------------------------------------------------
>>
>># - Previous Postgres Versions -
>>
>>#add_missing_from = true
>>#regex_flavor = advanced # advanced, extended, or basic
>>#sql_inheritance = true
>>
>># - Other Platforms & Clients -
>>
>>#transform_null_equals = false
>>
>>
>>
>>BUT THE PERFORMANCE IT´S VERY SLOW
>>
>>what can do ?????
>>
>>Thank
>>
>>
>>Mario Soto
>>
>>
>>
>>---------------------------(end of
>> broadcast)--------------------------- TIP 2: you can get off all lists
>> at once with the unregister command
>> (send "unregister YourEmailAddressHere" to
>> majordomo(at)postgresql(dot)org)
>>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Bruce Momjian 2004-05-26 16:43:23 Re: [HACKERS] COPY formatting
Previous Message Matt Van Mater 2004-05-26 16:34:05 Re: [HACKERS] COPY formatting

Browse pgsql-performance by date

  From Date Subject
Next Message Chris Browne 2004-05-26 16:37:24 Re: tuning for AIX 5L with large memory
Previous Message Bill Montgomery 2004-05-26 16:25:45 Re: [GENERAL] performance very slow