consulta on_config

hola :

Tenemos la siguiente configuración en el servidor de producción (Intel(R) Xeon(R) E5405 Núcleo Cuádruple 2.00GHz,ram 4gb, disco rigido 1 tb con Microsoft Windows 2000 Server SP4 Español ), queria saber si es posible mejorarla o que esta mal configurado, ya que hay consultas sobre el sqleditor que tardan muchisimos cuando la misma consulta la realizamos en access 2007 o sql server 2008 y no tardan nada. Lo tenemos instalado sobre una maquina virtual Proxmox. muchas gracias

#**************************************************************************

INFORMIX SOFTWARE, INC.

Title: onconfig.std

Description: Informix Dynamic Server Configuration Parameters

#**************************************************************************

Root Dbspace Configuration

ROOTNAME rootdbs # Root dbspace name
ROOTPATH C:\IFMXDATA\ol_guarani3\rootdbs_dat.000
# Path for device containing root dbspace
ROOTOFFSET 0 # Offset of root dbspace into device (Kbytes)
ROOTSIZE 300000 # Size of root dbspace (Kbytes)

Disk Mirroring Configuration Parameters

MIRROR 0 # Mirroring flag (Yes = 1, No = 0)
MIRRORPATH # Path for device containing mirrored root
MIRROROFFSET 0 # Offset into mirrored device (Kbytes)

Physical Log Configuration

PHYSDBS logsdbs # Location (dbspace) of physical log
PHYSFILE 200000 # Physical log file size (Kbytes)

Logical Log Configuration

LOGFILES 43 # Number of logical log files
LOGSIZE 20000 # Logical log size (Kbytes)
LOG_BACKUP_MODE MANUAL # Logical log backup mode (MANUAL, CONT)

Diagnostics

MSGPATH C:\informix\ol_guarani3.log # System message log file path
CONSOLE C:\informix\conol_guarani3.log # System console message path
ALARMPROGRAM C:\informix\etc\log_full.bat # Alarm program path
TBLSPACE_STATS 1 # Maintain tblspace statistics

System Diagnostic Script.

SYSALARMPROGRAM - Full path of the system diagnostic script (e.g.

c:\informix\etc\evidence.bat.) Set this parameter

if you want a different Diagnostic Script than

{INFORMIXDIR}\etc\evidence.bat, which is default.

System Archive Tape Device

#TAPEDEV \.\TAPE0 # Tape device path
TAPEDEV E:\IFMXBKUP\backup.bak
TAPEBLK 16 # Tape block size (Kbytes)
TAPESIZE 2147483647 # Maximum amount of data to put on tape (Kbytes)

Log Archive Tape Device

#LTAPEDEV \.\TAPE1 # Log tape device path
LTAPEDEV E:\IFMXBKUP\log.bak
LTAPEBLK 16 # Log tape block size (Kbytes)
LTAPESIZE 2147483647 # Max amount of data to put on log tape (Kbytes)

Optical

STAGEBLOB # Informix Dynamic Server/Optical staging area
OPTICAL_LIB_PATH # Location of Optical Subsystem driver DLL

System Configuration

SERVERNUM 0 # Unique id corresponding to a server instance
DBSERVERNAME ol_guarani3 # Name of default Dynamic Server
DBSERVERALIASES # List of alternate dbservernames
NETTYPE soctcp,1,NET # Override sqlhosts nettype parameters
DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed env.
RESIDENT 0 # Forced residency flag (Yes = 1, No = 0)

MULTIPROCESSOR 0 # 0 for single-processor, 1 for multi-processor
NUMCPUVPS 1 # Number of user (cpu) vps
SINGLE_CPU_VP 0 # If non-zero, limit number of cpu vps to one

NOAGE 0 # Process aging
AFF_SPROC 0 # Affinity start processor
AFF_NPROCS 0 # Affinity number of processors

Shared Memory Parameters

LOCKS 50000 # Maximum number of locks
BUFFERS 52425 # Maximum number of shared buffers
NUMAIOVPS 1 # Number of IO vps
PHYSBUFF 32 # Physical log buffer size (Kbytes)
LOGBUFF 32 # Logical log buffer size (Kbytes)
LOGSMAX 60 # Maximum number of logical log files
CLEANERS 1 # Number of buffer cleaner processes
SHMBASE 0xc000000 # Shared memory base address
SHMVIRTSIZE 8192 # initial virtual shared memory segment size
SHMADD 8192 # Size of new shared memory segments (Kbytes)
SHMTOTAL 0 # Total shared memory (Kbytes). 0=>unlimited
CKPTINTVL 300 # Check point interval (in sec)
LRUS 8 # Number of LRU queues
LRU_MAX_DIRTY 60 # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY 50 # LRU percent dirty end cleaning limit
LTXHWM 50 # Long transaction high water mark percentage
LTXEHWM 60 # Long transaction high water mark (exclusive)
TXTIMEOUT 0x12c # Transaction timeout (in sec)
STACKSIZE 64 # Stack size (Kbytes)

System Page Size

BUFFSIZE - Dynamic Server no longer supports this configuration parameter.

To determine the page size used by Dynamic Server on your platform

see the last line of output from the command, ‘onstat -b’.

Recovery Variables

OFF_RECVRY_THREADS:

Number of parallel worker threads during fast recovery or an offline restore.

ON_RECVRY_THREADS:

Number of parallel worker threads during an online restore.

OFF_RECVRY_THREADS 10 # Default number of offline worker threads
ON_RECVRY_THREADS 1 # Default number of online worker threads

Data Replication Variables

DRINTERVAL 30 # DR max time between DR buffer flushes (in sec)
DRTIMEOUT 30 # DR network timeout (in sec)
DRLOSTFOUND \tmp # DR lost+found file path

CDR Variables

CDR_LOGBUFFERS 2048 # size of log reading buffer pool (Kbytes)
CDR_EVALTHREADS 1,2 # evaluator threads (per-cpu-vp,additional)
CDR_DSLOCKWAIT 5 # DS lockwait timeout (seconds)
CDR_QUEUEMEM 4096 # Maximum amount of memory for any CDR queue (Kbytes)
CDR_LOGDELTA 30 # % of log space allowed in queue memory
CDR_NUMCONNECT 16 # Expected connections per server
CDR_NIFRETRY 300 # Connection retry (seconds)
CDR_NIFCOMPRESS 0 # Link level compression (-1 never, 0 none, 9 max)

Backup/Restore variables

BAR_ACT_LOG C:\informix\bar_ol_guarani3.log #Path of log file for onbar.exe
BAR_MAX_BACKUP 0
BAR_RETRY 1
BAR_NB_XPORT_COUNT 10
BAR_XFER_BUF_SIZE 15
BAR_BSALIB_PATH C:\ISM\2.20\bin\libbsa.dll # Location of ISM XBSA DLL

RESTARTABLE_RESTORE off #To support restartable restore…values on/off

Informix Storage Manager variables

ISM_DATA_POOL ISMData
ISM_LOG_POOL ISMLogs

Read Ahead Variables

RA_PAGES # Number of pages to attempt to read ahead
RA_THRESHOLD # Number of pages left before next group

DBSPACETEMP:

Dynamic Server equivalent of DBTEMP for SE. This is the list of dbspaces

that the Dynamic Server SQL Engine will use to create temp tables etc.

If specified it must be a colon separated list of dbspaces that exist

when the Dynamic Server system is brought online. If not specified, or if

all dbspaces specified are invalid, various ad hoc queries will create

temporary files in /tmp instead.

DBSPACETEMP C:\IFMXDATA\ol_guarani3\tempdbs_dat.000 # Default temp dbspaces

DUMP*:

The following parameters control the type of diagnostics information which

is preserved when an unanticipated error condition (assertion failure) occurs

during Dynamic Server operations.

For DUMPSHMEM, DUMPGCORE and DUMPCORE 1 means Yes, 0 means No.

DUMPDIR C:\tmp # Preserve diagnostics in this directory
DUMPSHMEM 1 # Dump a copy of shared memory
DUMPGCORE 0 # Dump a core image using ‘gcore’
DUMPCORE 0 # Dump a core image (Warning:this aborts Dynamic
DUMPCNT 1 # Number of shared memory or gcore dumps for
# a single user’s session

FILLFACTOR 90 # Fill factor for building indexes

method for Dynamic Server to use when determining current time

USEOSTIME 0 # 0: use internal time(fast), 1: get time from OS(slow)

Parallel Database Queries (pdq)

MAX_PDQPRIORITY 100 # Maximum allowed pdqpriority
DS_MAX_QUERIES 32 # Maximum number of decision support queries
DS_TOTAL_MEMORY 4096 # Decision support memory (Kbytes)
DS_MAX_SCANS 1048576 # Maximum number of decision support scans
DATASKIP off # List of dbspaces to skip

OPTCOMPIND

0 => Nested loop joins will be preferred (where

possible) over sortmerge joins and hash joins.

1 => If the transaction isolation mode is not

“repeatable read”, optimizer behaves as in (2)

below. Otherwise it behaves as in (0) above.

2 => Use costs regardless of the transaction isolation

mode. Nested loop joins are not necessarily

preferred. Optimizer bases its decision purely

on costs.

OPTCOMPIND 2 # To hint the optimizer

DIRECTIVES 1 # Optimizer DIRECTIVES ON (1/Default) or OFF (0)

ONDBSPACEDOWN 2 # Dbspace down option: 0 = CONTINUE, 1 = ABORT, 2 = WAIT
LBU_PRESERVE 1 # Preserve last log for log backup
OPCACHEMAX 0 # Maximum optical cache size (Kbytes)

HETERO_COMMIT (Gateway participation in distributed transactions)

1 => Heterogeneous Commit is enabled

0 (or any other value) => Heterogeneous Commit is disabled

HETERO_COMMIT 0

SBSPACENAME sbspace # Default sbspace

BLOCKTIMEOUT 3600 # Default timeout for system block

Optimization goal: -1 = ALL_ROWS(Default), 0 = FIRST_ROWS

OPT_GOAL -1

ALLOW_NEWLINE 0 # embedded newlines(Yes = 1, No = 0 or anything but 1)
SYSSBSPACENAME sbspace # Default System sbspace

The following are default settings for enabling Java in the database.

#VPCLASS jvp,num=1 # Number of JVPs to start with
JVPJAVAHOME # JDK installation root directory
JVPHOME C:\informix\extend\krakatoa # Krakatoa installation directory
JVPPROPFILE C:\informix\extend\krakatoa.jvpprops_ol_guarani3
# JVP property file
JDKVERSION 1.2 # JDK version supported by this server
JVMTHREAD native # Java VM thread type (green or native)

The path to the JRE libraries relative to JVPJAVAHOME

JVPJAVALIB \jre\bin\

The JRE libraries to use for the Java VM

JVPJAVAVM hpi;jvm;java;net;math;zip;jpeg

Classpath to use upon Java VM start-up (use _g version for debugging)

JVPCLASSPATH C:\informix\extend\krakatoa\krakatoa.jar;C:\informix\extend\krakatoa\jdbc.jar

JVPLOGFILE C:\informix\extend\krakatoa/jvp.log # JVP log file.

te faltaria especificar cantidad de ram del equipo y si esta sirviendo algun servicio ademas de informix
algunas cosas que podes mejorar:

NUMCPUVPS: ponele 4 para aprovechar los 4 nucleos de tu cpu
SHMVIRTSIZE: entre el 25% y 50% de la ram si es el unico servicio del equipo
SHMADD: podes poner más grande para que no este solicitando muy de seguido memoria al S.O.

tambien podes acelerar un poco
bajando de extranet /SIU-Guaraní/Documentos y otros/Documentos para técnicos/update_statistic.rar
y corre el script en tu base

Otra que podes hacer es si la unidad D y F son discos diferentes del C, ubicar alli los dbspaces temporales, el del fisical/logical logs. Es decir distribuir los dbspaces entre los diferentes discos fisicos que tengas, ya que al tener mas de un procesador se puede optimizar el tiempo de acceso del motor a los datos.

NUMCPUVPS debería sere el numero de procesadores físicos - 1.
En tu caso yo probaría con 3.
A mi gusto tenés demasiados logical logs y muy grandes. Además… en que dbspace están definidos? en el rootdbs?
Si es así habría que moverlos a otro.
me olvidé de MULTIPROCESSOR =1

hola gracias a todos:

Cuantos logical log me recomendas?y de que tamaño?
Como cambio a otro dbspace?.

Muchas gracias!!!

Probá con 20 de 15000.
Para cambiar el lugar donde se almacenan los logical logs hay que llevar el motor al estado Quiescent. Para esto no debe haber actividad en el sistema:

onmode -sy

La salida del siguiente comando:

onstat -

Debe ser:
Informix Dynamic Server 2000 Version 9.21.TC4 -- Quiescent --
Luego hacer un respaldo de los logical logs:

ontape -a

Al finalizar el respaldo la revisar la salida de este otro:

onstat -l

Revisar que la tercer posición de la columna flags estén con el valor B:
address number flags uniqid begin size used %used c22689c 1 U------ 84 62c149 3750 3750 100.00 c2268b8 2 U------ 85 62cfef 3750 3750 100.00 c2268d4 3 U---C-L 86 62de95 3750 2585 68.93 c2268f0 4 U-B---- 67 62ed3b 3750 3750 100.00 c22690c 5 U-B---- 68 62fbe1 3750 3750 100.00 c226928 6 U-B---- 69 630a87 3750 3750 100.00 c226944 7 U-B---- 70 61f435 3750 3750 100.00 c226960 8 U-B---- 71 6202db 3750 3750 100.00 c22697c 9 U-B---- 72 621181 3750 3750 100.00
Ahora hay que eliminiar los logical logs actuales (consultar columna number del listado anterior para saber el número del logical log):

onparams -d -l <numero_de_logical_log>

Así, uno por uno. Tenés que tener en todo momento 3 como mínimo.
Luego empezá a agregar los nuevos con el nuevo tamaño y ubicación:

 onparams  -a -d <nombre_de_dbspace> -s 15000

Así hasta llegar a 18 (suponiendo que te quedaste con 3 antes de empezar a agregar.
Luego borrá los tres “viejos” y hacé un respaldo total de la instancia:

ontape -s -L 0

Otro tema. Fijate el tema de LOCKS y BUFFERS, me parecen que están muy altos. Probá con:

LOCKS 20000
BUFFERS 3000

Esto cambialo despues de monitorear el rendimiento de la instancia luego del cambio de los logical logs.

hola :

gracias estoy probando las configuraciones.

hola:

Probe lo que me dijieron, y me estuve fijando y encontre esta pagina con esta configuracion que recomendaban
http://publib.boulder.ibm.com/tividd/td/tec/SC32-1233-00/es_ES/HTML/ecoimst94.htm, la probamos en un servidor de prueba, y mejoro mucho cuando se muestra un reporte que tarda desde la aplicacion, y que mientras tanto se pueden realizar consultas desde sqleditor, y abrir otra aplicacion y sigue funcionando perfectamente sin colgar el informix, lo unico que las consultas desde sqleditor tardan lo mismo, falta algo?.

muchas gracias!!!