powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / длинный чекпойнт
58 сообщений из 58, показаны все 3 страниц
длинный чекпойнт
    #32367055
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
...Раз пошла такая пьянка , то может кто подскажет...
хотелось бы уменьшить время чекпойнтов

10:05:36 Checkpoint Completed: duration was 5 seconds.
10:10:42 Checkpoint Completed: duration was 5 seconds.
10:15:47 Checkpoint Completed: duration was 6 seconds.
10:20:53 Checkpoint Completed: duration was 5 seconds.
10:26:01 Checkpoint Completed: duration was 8 seconds.
10:31:08 Checkpoint Completed: duration was 8 seconds.
10:36:26 Checkpoint Completed: duration was 17 seconds.
10:41:37 Checkpoint Completed: duration was 11 seconds.
10:46:42 Checkpoint Completed: duration was 5 seconds.
10:51:55 Checkpoint Completed: duration was 13 seconds.
10:57:12 Checkpoint Completed: duration was 17 seconds.
11:02:16 Checkpoint Completed: duration was 4 seconds.
11:07:22 Checkpoint Completed: duration was 7 seconds.
11:12:32 Checkpoint Completed: duration was 9 seconds.
11:17:38 Checkpoint Completed: duration was 6 seconds.
11:22:42 Checkpoint Completed: duration was 4 seconds.
11:27:51 Checkpoint Completed: duration was 9 seconds.
11:33:00 Checkpoint Completed: duration was 9 seconds.
11:38:11 Checkpoint Completed: duration was 11 seconds.
11:43:21 Checkpoint Completed: duration was 10 seconds.
11:48:30 Checkpoint Completed: duration was 9 seconds.
11:53:45 Checkpoint Completed: duration was 15 seconds.
11:58:54 Checkpoint Completed: duration was 9 seconds.
12:04:00 Checkpoint Completed: duration was 6 seconds.
12:09:06 Checkpoint Completed: duration was 6 seconds.
12:14:15 Checkpoint Completed: duration was 9 seconds.
12:19:20 Checkpoint Completed: duration was 5 seconds.
12:24:29 Checkpoint Completed: duration was 9 seconds.
12:29:23 Checkpoint Completed: duration was 12 seconds.
12:29:25 Checkpoint Completed: duration was 1 seconds.
12:29:26 Checkpoint Completed: duration was 1 seconds.
12:29:27 Checkpoint Completed: duration was 1 seconds.
12:30:03 Checkpoint Completed: duration was 10 seconds.
12:30:05 Checkpoint Completed: duration was 1 seconds.
12:30:06 Checkpoint Completed: duration was 1 seconds.
12:30:07 Checkpoint Completed: duration was 1 seconds.
12:30:08 Checkpoint Completed: duration was 1 seconds.
12:35:31 Checkpoint Completed: duration was 12 seconds.
12:40:40 Checkpoint Completed: duration was 9 seconds.
12:45:49 Checkpoint Completed: duration was 9 seconds.
12:51:00 Checkpoint Completed: duration was 11 seconds.
12:56:14 Checkpoint Completed: duration was 14 seconds.
12:57:55 Checkpoint Completed: duration was 7 seconds.

вот конфигурация


#*************************************************************
#
# INFORMIX SOFTWARE, INC.
#
# Title: onconfig.std
# Description: Informix Dynamic Server Configuration Parameters
#
#*************************************************************

# Root Dbspace Configuration

ROOTNAME rootdbs # Root dbspace name
ROOTPATH /dev/md/rdsk/d50 # Path for device containing root dbspace
ROOTOFFSET 0 # Offset of root dbspace into device (Kbytes)
ROOTSIZE 2097150 # Size of root dbspace (Kbytes)

# Disk Mirroring Configuration Parameters

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

# Physical Log Configuration

PHYSDBS rootdbs # Location (dbspace) of physical log
PHYSFILE 10000 # Physical log file size (Kbytes)

# Logical Log Configuration

LOGFILES 60 # Number of logical log files
LOGSIZE 2000 # Logical log size (Kbytes)

# Diagnostics

MSGPATH /opt/informix/online.log # System message log file path
CONSOLE /dev/console # System console message path
ALARMPROGRAM /opt/informix/etc/log_full.sh # Alarm program path
SYSALARMPROGRAM /opt/informix/etc/evidence.sh # System Alarm program path
TBLSPACE_STATS 1

# System Archive Tape Device

TAPEDEV /dev/rmt/0 # Tape device path
TAPEDEV /dev/rmt/0 # Tape device path
#TAPEDEV /dev/null
TAPEBLK 4096 # Tape block size (Kbytes)
TAPESIZE 51000000 # Maximum amount of data to put on tape (Kbytes)

# Log Archive Tape Device

LTAPEDEV /dev/null # Log tape device path
LTAPEBLK 4096 # Log tape block size (Kbytes)
LTAPESIZE 10240 # Max amount of data to put on log tape (Kbytes)

# Optical

STAGEBLOB # Informix Dynamic Server/Optical staging area

# System Configuration

SERVERNUM 0 # Unique id corresponding to a Dynamic Server instance
DBSERVERNAME sf880on # Name of default database server
DBSERVERALIASES fast0spx,sf880tli # List of alternate dbservernames
NETTYPE ipcshm,2,100,CPU # Configure poll thread(s) for nettype
#NETTYPE tlispx,5,10,NET # Configure poll thread(s) for nettype
NETTYPE tlitcp,1,10,NET # Configure poll thread(s) for nettype
DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed env.
RESIDENT 1 # Forced residency flag (Yes = 1, No = 0)

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

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

# Shared Memory Parameters

LOCKS 3000000 # Maximum number of locks
BUFFERS 700000 # Maximum number of shared buffers
NUMAIOVPS # 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 8 # Number of buffer cleaner processes
SHMBASE 0x10A000000L # Shared memory base address
SHMVIRTSIZE 8000 # 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 300 # Transaction timeout (in sec)
STACKSIZE 256 # 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
# DRAUTO: 0 manual, 1 retain type, 2 reverse type
DRAUTO 0 # DR automatic switchover
DRINTERVAL -1 # DR max time between DR buffer flushes (in sec)
DRTIMEOUT 30 # DR network timeout (in sec)
DRLOSTFOUND /opt/informix/etc/dr.lostfound # 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 /tmp/bar_act.log
BAR_DEBUG_LOG /usr/informix/bar_dbug.log # ON-Bar Debug Log - not in /tmp pleas
BAR_MAX_BACKUP 0
BAR_RETRY 1
BAR_NB_XPORT_COUNT 10
BAR_XFER_BUF_SIZE 31

# Informix Storage Manager variables
ISM_DATA_POOL ISMData # If the data pool name is changed, be sure to
# update $INFORMIXDIR/bin/onbar. Change to
# ism_catalog -create_bootstrap -pool <new name>
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 tempdbs # 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 /tmp # Preserve diagnostics in this directory
DUMPSHMEM 0 # Dump a copy of shared memory
DUMPGCORE 0 # Dump a core image using 'gcore'
DUMPCORE 0 # Dump a core image (Warning:this aborts Dynamic Server)
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 # Maximum number of decision support queries
DS_TOTAL_MEMORY # 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 0 # To hint the optimizer

ONDBSPACEDOWN 2 # Dbspace down option: 0 = CONTINUE, 1 = ABORT, 2 = WAIT
LBU_PRESERVE 0 # 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

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

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

# Status of restartable restore
RESTARTABLE_RESTORE off
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32367063
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
солярис 8
4 процессора
приложение oltp
Ввод документов осуществляется вручную довольно плотно и внезапные тормоза неприятны. юзеры не то чтобы возмущаются особо, но все равно лучше бы снизить по возможности.

bash-2.03$ onstat -d|more

Informix Dynamic Server Version 7.31.FD6 -- On-Line (Prim) -- Up 1 days 21:59:53 -- 2291712 Kbytes

Dbspaces
address number flags fchunk nchunks flags owner name
17607a1c0 1 1002 1 1 M informix rootdbs
177a0a028 2 2001 2 1 N T informix tempdbs
177a0a110 3 2 3 8 M informix maindbs
177a0a1f8 4 2 11 7 M informix logdbs
177a0a2e0 5 2 18 17 M informix docdbs
5 active, 2047 maximum

Chunks
address chk/dbs offset size free bpages flags pathname
17607a2a8 1 1 0 1048575 923314 PO- /dev/md/rdsk/d50
17607a3c0 1 1 0 1048575 0 MO- /dev/md/rdsk/d84
17607aa98 2 2 0 1048575 1021234 PO- /dev/md/rdsk/d51
17607abb0 3 3 0 1048575 13 PO- /dev/md/rdsk/d52
1760c3c50 3 3 0 1048575 0 MO- /dev/md/rdsk/d86
17607acc8 4 3 0 1048575 2 PO- /dev/md/rdsk/d53
1760c3d68 4 3 0 1048575 0 MO- /dev/md/rdsk/d87
17607ade0 5 3 0 1048575 2 PO- /dev/md/rdsk/d54
1760c3e80 5 3 0 1048575 0 MO- /dev/md/rdsk/d88
17607aef8 6 3 0 1048575 36149 PO- /dev/md/rdsk/d55
1770fe028 6 3 0 1048575 0 MO- /dev/md/rdsk/d89
17607b010 7 3 0 1048575 524524 PO- /dev/md/rdsk/d56
1770fe140 7 3 0 1048575 0 MO- /dev/md/rdsk/d90
17607b128 8 3 0 1048575 458591 PO- /dev/md/rdsk/d57
1770fe258 8 3 0 1048575 0 MO- /dev/md/rdsk/d91
17607b240 9 3 0 1048575 533569 PO- /dev/md/rdsk/d58
1770fe370 9 3 0 1048575 0 MO- /dev/md/rdsk/d92
17607b358 10 3 0 1048575 1048572 PO- /dev/md/rdsk/d59
1770fe488 10 3 0 1048575 0 MO- /dev/md/rdsk/d93
17607b470 11 4 0 1048575 56 PO- /dev/md/rdsk/d60
1770fe5a0 11 4 0 1048575 0 MO- /dev/md/rdsk/d94
17607b588 12 4 0 1048575 13 PO- /dev/md/rdsk/d61
1770fe6b8 12 4 0 1048575 0 MO- /dev/md/rdsk/d95
17607b6a0 13 4 0 1048575 226 PO- /dev/md/rdsk/d62
1770fe7d0 13 4 0 1048575 0 MO- /dev/md/rdsk/d96
17607b7b8 14 4 0 1048575 590858 PO- /dev/md/rdsk/d63
1770fe8e8 14 4 0 1048575 0 MO- /dev/md/rdsk/d97
17607b8d0 15 4 0 1048575 1047920 PO- /dev/md/rdsk/d64
1770fea00 15 4 0 1048575 0 MO- /dev/md/rdsk/d98
17607b9e8 16 4 0 1048575 1048572 PO- /dev/md/rdsk/d65
1770feb18 16 4 0 1048575 0 MO- /dev/md/rdsk/d99
17607bb00 17 4 0 524287 523696 PO- /dev/md/rdsk/d66
1770fec30 17 4 0 524287 0 MO- /dev/md/rdsk/d100
17607bc18 18 5 0 1048575 48522 PO- /dev/md/rdsk/d67
1770fed48 18 5 0 1048575 0 MO- /dev/md/rdsk/d101
17607bd30 19 5 0 1048575 0 PO- /dev/md/rdsk/d68
1770fee60 19 5 0 1048575 0 MO- /dev/md/rdsk/d102
17607be48 20 5 0 1048575 48572 PO- /dev/md/rdsk/d69
1770fef78 20 5 0 1048575 0 MO- /dev/md/rdsk/d103
1760b3050 21 5 0 1048575 48572 PO- /dev/md/rdsk/d70
1770ff090 21 5 0 1048575 0 MO- /dev/md/rdsk/d104
1760b3168 22 5 0 1048575 48572 PO- /dev/md/rdsk/d71
1770ff1a8 22 5 0 1048575 0 MO- /dev/md/rdsk/d105
1760b3280 23 5 0 1048575 48572 PO- /dev/md/rdsk/d72
1770ff2c0 23 5 0 1048575 0 MO- /dev/md/rdsk/d106
1760b3398 24 5 0 1048575 48572 PO- /dev/md/rdsk/d73
1770ff3d8 24 5 0 1048575 0 MO- /dev/md/rdsk/d107
1760b34b0 25 5 0 1048575 48572 PO- /dev/md/rdsk/d74
1770ff4f0 25 5 0 1048575 0 MO- /dev/md/rdsk/d108
1760b35c8 26 5 0 1048575 848572 PO- /dev/md/rdsk/d75
1770ff608 26 5 0 1048575 0 MO- /dev/md/rdsk/d109
1760b36e0 27 5 0 1048575 1048572 PO- /dev/md/rdsk/d76
1770ff720 27 5 0 1048575 0 MO- /dev/md/rdsk/d110
1760b37f8 28 5 0 1048575 1048572 PO- /dev/md/rdsk/d77
1770ff838 28 5 0 1048575 0 MO- /dev/md/rdsk/d111
1760b3910 29 5 0 1048575 1048572 PO- /dev/md/rdsk/d78
1770ff950 29 5 0 1048575 0 MO- /dev/md/rdsk/d112
1760b3a28 30 5 0 1048575 1048572 PO- /dev/md/rdsk/d79
1770ffa68 30 5 0 1048575 0 MO- /dev/md/rdsk/d113
1760b3b40 31 5 0 1048575 1048572 PO- /dev/md/rdsk/d80
1770ffb80 31 5 0 1048575 0 MO- /dev/md/rdsk/d114
1760b3c58 32 5 0 1048575 1048572 PO- /dev/md/rdsk/d81
1770ffc98 32 5 0 1048575 0 MO- /dev/md/rdsk/d115
1760b3d70 33 5 0 1048575 1048572 PO- /dev/md/rdsk/d82
1770ffdb0 33 5 0 1048575 0 MO- /dev/md/rdsk/d116
1760b3e88 34 5 0 524287 524284 PO- /dev/md/rdsk/d83
1770ffec8 34 5 0 524287 0 MO- /dev/md/rdsk/d117
34 active, 2047 maximum
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32367080
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
bash-2.03$ onstat -F
статистика за ~30 min характерного режима

Informix Dynamic Server Version 7.31.FD6 -- On-Line (Prim) -- Up 1 days 22:10:37 -- 2291712 Kbytes


Fg Writes LRU Writes Chunk Writes
0 0 14073

address flusher state data
17607c708 0 I 0 = 0X0
17607cde8 1 I 0 = 0X0
17607d4c8 2 I 0 = 0X0
17607dba8 3 I 0 = 0X0
17607e288 4 I 0 = 0X0
17607e968 5 I 0 = 0X0
17607f048 6 I 0 = 0X0
17607f728 7 I 0 = 0X0
states: Exit Idle Chunk Lru

15:09:58 Checkpoint Completed: duration was 7 seconds.
15:15:12 Checkpoint Completed: duration was 14 seconds.
15:20:23 Checkpoint Completed: duration was 10 seconds.
15:25:35 Checkpoint Completed: duration was 12 seconds.
15:30:43 Checkpoint Completed: duration was 8 seconds.
15:35:50 Checkpoint Completed: duration was 7 seconds.
15:40:55 Checkpoint Completed: duration was 5 seconds.

это не LRU однозначно
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32367085
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
bash-2.03$ onstat -R

Informix Dynamic Server Version 7.31.FD6 -- On-Line (Prim) -- Up 1 days 22:14:51 -- 2291712 Kbytes

8 buffer LRU queue pairs priority levels
# f/m pair total % of length LOW MED_LOW MED_HIGH HIGH
0 f 87465 98.8% 86438 26771 55021 4473 173
1 m 1.2% 1026 1 1021 5 0
2 F 87370 99.0% 86471 26740 55410 4139 182
3 m 1.0% 899 0 896 2 0
4 f 87497 98.9% 86566 26676 55545 4168 177
5 m 1.1% 931 0 923 7 0
6 f 87422 98.8% 86410 26693 55162 4369 186
7 m 1.2% 1012 0 1001 11 0
8 f 87383 98.8% 86352 26618 55243 4323 168
9 m 1.2% 1031 0 1022 9 0
10 f 87460 98.8% 86435 26700 55346 4201 188
11 m 1.2% 1025 0 1015 10 0
12 f 87401 98.8% 86376 26653 55331 4212 180
13 m 1.2% 1025 0 1019 6 0
14 f 87386 98.8% 86302 26653 55101 4385 163
15 m 1.2% 1084 0 1070 14 0
8033 dirty, 699383 queued, 700000 total, 1048576 hash buckets, 2048 buffer size
start clean at 60% (of pair total) dirty, or 52500 buffs dirty, stop at 50%
0 priority downgrades, 0 priority upgrades
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32367109
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
>По поводу причины, я думаю, что она одназначно в том, что у тебя слишком >много буфферов, 700000 - это 1.4Гб!!, то, что они достаточно долго >сливаются, с чем не справляются либо диски либо очередей слишком мало. >Т.е. надо мониторить во время чекпоинта onstat -R, onstat -F и т.д

Я може чего-то не врубаюсь, но AFAIK сливать ему надо не все 1.4 гига а только измененные страницы. (?)
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32367156
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
Я може чего-то не врубаюсь, но AFAIK сливать ему надо не все  1 . 4  гига а только измененные страницы. (?)


Да.

8033 dirty - если чекпоинт будет сейчас, значит надо записать ~16 МГб.

Я перепутал - хотел onstat -D. Хотя все равно не понятно сколько дисков.
В общем смотри чем информикс занимается во время чекпоинта, если он пишет то старайся сбалансировать запись по дискам.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32367167
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема в том что синхронизировать буферы и диск надо :). Вопрос в том когда это делать, во время чекпоинта? или все время?

автор
Fg Writes LRU Writes Chunk Writes
0 0 14073


15:25:35 Checkpoint Completed: duration was 12 seconds.
15:30:43 Checkpoint Completed: duration was 8 seconds.
15:35:50 Checkpoint Completed: duration was 7 seconds.
15:40:55 Checkpoint Completed: duration was 5 seconds.

это не LRU однозначно

Да Chunk Writes. Буферы и диск синхронизируются только во время чекпоинта.
Это хорошо - это дает максимальную скорость записи между чекпоинтами (пишем в память). Купи более быструю дисковую систему -> время чекпоинта сократится.
Или переходи на LRU Writes. Производительность информикса упадет (будет тратится время на синхронизацию буферов и диска), и чекпоинт укоротится.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32367201
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
дисковая система файбер ченал
быстрее не бывает млин
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32367203
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для полноты картины нужен был бы еще onstat -p и onstat -g iof.
onstat -R интересен именно в момент выполнения чекпоинта.

Вот этот кусочек новодит на раздумья:
12:29:23 Checkpoint Completed: duration was 12 seconds.
12:29:25 Checkpoint Completed: duration was 1 seconds.
12:29:26 Checkpoint Completed: duration was 1 seconds.
12:29:27 Checkpoint Completed: duration was 1 seconds.
12:30:03 Checkpoint Completed: duration was 10 seconds.
12:30:05 Checkpoint Completed: duration was 1 seconds.
12:30:06 Checkpoint Completed: duration was 1 seconds.
12:30:07 Checkpoint Completed: duration was 1 seconds.
12:30:08 Checkpoint Completed: duration was 1 seconds

Если такое (слишком частые чекпоинты) бывает часто, то следует увеличить PHYSFILE. Еще хорошо бы помониторить кто именно вызывает подобные проблемы. Например, создание временных таблиц без WITH NO LOG.

По onstat -F действительно видно, что LRU не юзаются, если заставить их работать (путем уменьшения параметров LRU_MAX_DIRTY,LRU_MIN_DIRTY), упадет производительность системы, но зато чекпоинт ускорится.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32372009
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, то, что производительность упадет при увеличении LRU writes - не факт. Если диск стоит недогружен (мало чтения, в основном inserts) - то производительность между чекпойнтами почти не изменится.

В таком вот аксепте
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32372015
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, при таком количестве буферов (700000) и dirty buffers (~8000) весьма трудно заставить работать LRU, поскольку это порог получается меньше 2%.
Поставь LRU_MAX 2, LRU_MIN 1 и или уменьши число буферов, или увеличь физический лог (чекпойнт начинается при заполнении 75% phys log).

В таком вот аксепте
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32372065
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
TBLSPACE_STATS 0
не уменьшил чекпойнты,
но (стук по дереву) кажется убрал тормоза при архивации нулевого уровня,
впрочем надо еще с месяц покопироваться и будет видно.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32372119
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подземный стук через "TBLSPACE_STATS 0" к сожалению не лечится :-(. У меня оно отродясь в нулях стоит, тормоза на архиве нуля наблюдаю раз в месяц при еженедельном выполнении.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32375797
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
"TBLSPACE_STATS 0" не ликвидирует тормоза, но похоже уменьшает.
У меня тормоза уже возникали раз в 4 дня, теперь видимо реже, но еще не достаточно времени для того чтобы делать окончательные выводы.

Уменьшали количество буферов с 700000 до 100000 - эффект нулевой.

И вообще есть сильные подозрения на тормоза при записи на винты.
Может кто сталкивался -
у нас большие винты по 36 гигов разбиты соляровским дисксъютом на мета устройства по 2 гига, тк соляра не позволяет создать более 8и партиций.

Сброс чекпойнта производится со скоростью не более 6-и метров в секунду на файбрченал винте, что не правильно совсем.
Простое копирование на файловую систему более 20и метров в секунду.

каио включено.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32375882
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, я бы прислушался к совету Выбегалло.
"LRU_MAX 2, LRU_MIN 1 ".
Кстати, тогда заработают LRU и появится смысл увеличивать их количество. Кроме того, чанков много, а CLENERS-ов всего 8, я бы их тоже увеличил.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32376149
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
а я прислушиваюсь ...

токо руки не до всего доходят сразу

пока читаю пэйджер типа ...
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32376408
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Не понял, про какие тормоза теперь идет речь : при чекпойнте или при архивации нулевого уровня ? Был такой nasty bug который заставлял изменять таймстемп на странице во время архивирования при пол-обороте таймстемпа, но в твоей версии его кажись починили.

2. Если скорость записи при чекпойнте намного меньше скорости прямой записи на диск, то скорей всего Информикс не успевает сортировать буфера в LRU по причине их большой длины. Надо увеличить число LRU и CLEANERов

3. Если есть подозрения на соляровский LVM, то надо сравнивать яблоки с яблоками - создать raw 2GB LV и попытаться писать в него, а не в файловую систему.

В таком вот аксепте
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32376469
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, о длинных архивированиях уровня 0 :
http://dbforums.com/t586429.html

----------------
BUG: 101062 ARCHIVE PERFORMANCE DEGRADATION WHEN MANY CALLS TO
ARC_VERY_OLD_PAGE()

Description:
Highly oltp systems that also contain a large amount of static
pages, occasional archive performance severly degrades when those
pages qualify as very old pages. This is because of a re-read of
the pages in the archive buffer from disk to update the Timestamp.

in my opinion you have two choices:
1) upgrade to a newer/higher IDS-Version
2)
The functionality introduced by the fix to Bug 101062 is not turned on by
default. You must enable the new functionality by setting the following
ONCONFIG parameter before bringing the engine online.

CCFLAGS 0x400000

To verify that the proper CCFLAGS settings are in effect:

Using dbaccess, select database 'sysmaster'. Run the
following query:

select hex(value) from sysshmhdr where name = "ccflags";

This will return: (expression) 0x00400000
--------------

Баг-то починили, но в Onconfig надо вставлять CCFLAGS 0x400000

Чтобы убедиться, что архив тормозит именно по этой причине, рекомендую несколько раз проверить onstat -g stk <ontape thread>. Если нить постоянно торчит в процедуре ARC_VERY_OLD_PAGE - то это именно оно и есть.

Первый бэкап после установки CCFLAG - ненадежный, надо сразу сделать второй.


В таком вот аксепте
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32376597
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Памятуя количество индусов, по крайней мере в Informix ODBC Team, могу сказать, что баг то починили, но он остался :-(. Я получил сей баг сразу после перехода на 7.3, надеялся, что при переходе 9.2 он уйдет, а фиг Вам.
Весьма подробный рассказ на эту тему.
Резюме:
1. Upgrade до 9.21.UC7 >
2. Upgrade до 7.31.UC7 + CCFLAGS.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32377568
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так по твоей ссылке английским по белому пишут, что "по умолчанию" фикс включен в 9.3, у всех остальных его надо включать ручками через CCFLAGS.

В таком вот аксепте
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32377608
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык, это понятно :-)). Другое дело что делать мне с моим 9.21.UC2. Под Solaris X86 более свежей версии нет и видимо не будет :-(
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32377707
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А самого Соляриса-86 свежего-то будет ?
Я бы смотрел в сторону Линукса.

В таком вот аксепте
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32377713
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К моменту когда IBM подумал-подумал и забил на выпуск под x86 и Informix и Lotus Notes, Sun раздуплился и объявил что передумал сворачивать проект x86. Так что новая Соляра есть, а свежих версий аппликух - фигвам.
Думать, то я про Линух думаю, но в любом случае время на перенос системы у меня по графику не раньше, чем через 2 года :-).
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32377839
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Диьиэй, мечтающий о переходе на новую систему - это неправильный, негодный дибиэй :-)

В таком вот аксепте
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32378085
Фотография Daugava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думать!=Мечтать :-). У меня сейчас запас по мощности примерно на порядок. Сконфигурированных чанков еще на 2 года хватит, потом можно будет или докупить еще одну стойку (имею 2 свободных канала на контролере) или поменять винты на покрупнее. Приложение менятся скорее всего не будет, так что зачем мечтать о большем :-).
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32382319
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
мда картина несколько отличается от той что по ссылке

session #RSAM total used
id user tty pid hostname threads memory memory
88816 informix 64 14336 sf880 3 17006592 16881984

tid name rstcb flags curstk status
88970 ontape 15b09f868 --AP--M 3935 sleeping(secs: 1)
89002 arcbacku 15b098a68 ----X-- 4943 sleeping(Forever)
89003 arcbacku 15b093108 ------- 2879 sleeping(secs: 1)

Memory pools count 1
name class addr totalsize freesize #allocfrag #freefrag
88816 V 15e3e2028 17006592 124608 422 19

name free used name free used
overhead 0 176 scb 0 144
opentable 0 5664 filetable 0 2696
log 0 6504 temprec 0 1656
keys 0 424 gentcb 0 21336
ostcb 0 2824 net 0 16821328
sort 0 104 sqscb 0 11080
rdahead 0 224 hashfiletab 0 1656
osenv 0 2392 sqtcb 0 3696
fragman 0 80

Informix Dynamic Server Version 7.31.FD6 -- On-Line (Prim) -- Up 2 days 23:34:48 -- 2331648 Kbytes

Stack for thread: 89002 arcbackup1
base: 0x000000016e44a000
len: 270336
pc: 0x00000001004e57b0
tos: 0x000000016e48aed1
state: sleeping
vp: 4

0x1004e57b0 ?unknown? :: ?unknown? + 0x0 sp=0x16e48b6d0(0x9204f8, 0x5c5d0cd0, 0x925400, 0x5b014ed8, 0x6e4fe0d0, 0x5b014e60)
0x1004fd320 ?unknown? :: ?unknown? + 0x0 sp=0x16e48b780 delta_sp=176(0x5c98dae8, 0x9202d4, 0x3, 0x9204f8, 0x5c98dae8, 0x45)
0x100349f84 ?unknown? :: ?unknown? + 0x0 sp=0x16e48b830 delta_sp=176(0x2000, 0x9253c0, 0x587a4000, 0x800, 0x1, 0x29)
0x10034a954 ?unknown? :: ?unknown? + 0x0 sp=0x16e48ba70 delta_sp=576(0x8, 0x1, 0x6d870400, 0x5, 0x5b0c5e80, 0xb0f48)
0x10041f9ec ?unknown? :: ?unknown? + 0x0 sp=0x16e48bb40 delta_sp=208(0x0, 0x6cdc9c00, 0x3ff800, 0x6e48be44, 0x910e90, 0xd814)
0x10041f868 ?unknown? :: ?unknown? + 0x0 sp=0x16e48bcd0 delta_sp=400(0x6e48be44, 0x6e48be48, 0x265, 0x5d6f8240, 0x5d9dc678, 0x6e48be48)
0x10041e6a4 ?unknown? :: ?unknown? + 0x0 sp=0x16e48bd80 delta_sp=176(0xffffbfff, 0x8590, 0x4f030, 0x1, 0x5d6f8240, 0x1)
0x1004f31a4 ?unknown? :: ?unknown? + 0x0 sp=0x16e48be50 delta_sp=208(0x9204f8, 0x7, 0x925400, 0x5b014ed8, 0x0, 0x5b014e60)
0x1004eb284 ?unknown? :: ?unknown? + 0x0 sp=0x16e48bf00 delta_sp=176(0x0, 0x0, 0x0, 0x0, 0x0, 0x0)

^Constat>



CCFLAGS не установлен
на днях собираюсь поменять
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32413256
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
долго не меняли тк решили сначала получить подтверждение суппорта.
Подтверждение получили, параметр CCFLAGS установлен,
все зашибись!

До чекпойнта пока руки не дошли :-(
...
Рейтинг: 0 / 0
длинный чекпойнт
    #32431365
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так что, продолжим о чекпойнтах ?
Сведем основные предложения и мои рекомендации:
- увеличить PHYSFILE - 10000 маловато даже для средней системы.
Кстати, я обычно всегда мониторю среднее кол-во КТ и сравниваю его с "нормальным", т.е. по параметру TXTIMEOUT. Резкое отличие (в период работы) говорит, обычно, о срабатывании КТ по заполненности физжурнала, хотя есть и другие причины.
Причины длинных КТ по причине, не связанной с сбросом страниц на диск, кстати, тоже могут быть видны в onstat -p (numckpts).
- уменьшить LRU_MAX_DIRTY 60 и LRU_MIN_DIRTY 50 до значений, для начала
20 и 5 и мониторить, как уже говорили, заполненность LRU в момент КТ.
- увеличить до максимального LRUS 8 (сделать 127).
Думаю, что и bufwaits должен уменьшиться
- возможно, увеличить CLEANERS 8 до больших значений. Надо мониторить активность по onstat -u и желательно, чтобы всегда был хоть один процесс сброса, у которого ативность на два порядка меньше остальных (для снятия пиковых нагрузок на запись).
- RA_PAGES и RA_THRESHOLD тоже неплохо бы использовать, например 128 64, но тут Игорь может постращать глюками на этот счет :))

P.S.
> Если такое (слишком частые чекпоинты) бывает часто ... хорошо бы
> помониторить кто именно вызывает подобные проблемы. Например, создание > временных таблиц без WITH NO LOG.

А вот эта причина меня удивила. Никогда о таком не читал. Т.е. создание временной таблицы в логируемом пространстве вызывает КТ ? А где это вычитал ?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
длинный чекпойнт
    #33795597
Чемберлен
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprдолго не меняли тк решили сначала получить подтверждение суппорта.
Подтверждение получили, параметр CCFLAGS установлен,
все зашибись!

До чекпойнта пока руки не дошли :-(

А сейчас дошли? Чем закончилась история? Побороли длинный чекпоинт? И какая версия Информикса при этом использовалась? CCFLAGS на что-то повлиял?
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33816141
Paul Tatarenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тишина...
А вопрос ведь интересный. И по прежнему актуальный...

--
Legions of Informix forever!
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33816234
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема действительно интересная. Я не смог ее победить и понять тоже не смог.

Для меня осталось загадкой чем занимается информикс во время чекпоинта.
Я понял что мои сервера скидывают индексные страницы на диск во время фаззи и не фаззи чекпоинта, но при кол-ве грязных страниц 1%, это не так много. Еще скидывается физ.лог.
Т.е. вроде бы получается рекомендация положить данные/индексы на раид с быстрым рандомным доступом, а физ.лог на раид с быстрой последовательной записью.

Но возможно проблема в том что при большом кол-ве буферов алгоритм поиска грязных буферов становится неоптимальным. В новых версиях это побеждено, к тому же размер страницы можно сделать 8-16кб, т.е. кол-во буферов уменьшится, уменьшится blevel (если кого-то это заботит).

-----------------------------------------------------------------------------------------------------------------------------------------
нужно делать то что нужно, а то что не нужно -- делать не нужно (перефразируя В-Пуха).
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33975403
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Проблема длинного чекпойнта так и не решена.
На сегодняшний момент установлен старт очистителя с 1% грязных страниц до 0.
Переехали на SF890 и стало полегче.

По проблеме удалось только экспериментально определиться что Solaris Volume Manager не причем (во что впрочем и не очень то верилось). Разворачивал тестовый пример на чистом дбспэйсе на нормальных рав-девайсах без метаустройств - эффект тотже.
Чем занят Informix во время сброса чек-пойнта непонятно :-(

Уменьшать же количество буферов не выход, т.к. упадет кэширование. К тому же это никакое не решение, а только другой способ заставить работать LRU еще раньше.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33978167
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33978433
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr...
Переехали на SF890 и стало полегче.
Кстати что такое SF890? Кэш у нее сколько? Rootdbs (PHYSDBS) не пробовал на отдельный от данных (raid) lun положить?
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33978572
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Журавлев Денис cpr...
Переехали на SF890 и стало полегче.
Кстати что такое SF890? Кэш у нее сколько? Rootdbs (PHYSDBS) не пробовал на отдельный от данных (raid) lun положить?

sf890 - Ultra SPARC IV , двухъядерный процессор.

rootdbs, logdbs, пространства с данными находятся на независимых устройствах.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33978730
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И еще: предположим во время чекпоинта надо записать 15 мег., мои дисковые массивы при direct random write при 4кб записях показывают от 0.5 до 15 мег/сек (меряю iozone), поэтому легко можно и 30 секунд писать на дешевом массиве с маленьким кэшем на запись.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33978883
Чемберлен
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cpr
Чем занят Informix во время сброса чек-пойнта непонятно :-(

Уменьшать же количество буферов не выход, т.к. упадет кэширование. К тому же это никакое не решение, а только другой способ заставить работать LRU еще раньше.

А результаты onstat -u по ходу такого чекпоинта можно увидеть?
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33988271
Алексан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день всем.
На Вашем сервере слишком малое количество LRU-очередей и они, как следуствие, слишком длинные. Просто просканировать такие очереди занимает время! Кроме того, число клинеров в несколько раз меньше числа чанков.
Мне кажется, полегчает, если Вы увеличите количество LRU-очередей хотя бы до 63 (а лучше до 128, тем более что это ничего не стоит) и количество клинеров увеличите до того же числа (ресурсов они не занимают, поскольку эти нити существуют только во время их работы).
Эти действия также уменьшат конкуренцию за сами LRU-очереди, если у Вас достаточно много конкурентных пользовательских сессий.

-------
С уважением,
Александр Спирин
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33988695
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АлексанДобрый день всем.
На Вашем сервере слишком малое количество LRU-очередей и они, как следуствие, слишком длинные. Просто просканировать такие очереди занимает время! Кроме того, число клинеров в несколько раз меньше числа чанков.
Мне кажется, полегчает, если Вы увеличите количество LRU-очередей хотя бы до 63 (а лучше до 128, тем более что это ничего не стоит) и количество клинеров увеличите до того же числа (ресурсов они не занимают, поскольку эти нити существуют только во время их работы).
Эти действия также уменьшат конкуренцию за сами LRU-очереди, если у Вас достаточно много конкурентных пользовательских сессий.

-------
С уважением,
Александр Спирин

Вообще то в настоящий момент 34 очереди и никакой разницы с 8-ю.
ИМХО механизм скана LRU у Informix сделан оптимально.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33988698
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
АлексанДобрый день всем.
На Вашем сервере слишком малое количество LRU-очередей и они, как следуствие, слишком длинные. Просто просканировать такие очереди занимает время! Кроме того, число клинеров в несколько раз меньше числа чанков.
Мне кажется, полегчает, если Вы увеличите количество LRU-очередей хотя бы до 63 (а лучше до 128, тем более что это ничего не стоит) и количество клинеров увеличите до того же числа (ресурсов они не занимают, поскольку эти нити существуют только во время их работы).
Эти действия также уменьшат конкуренцию за сами LRU-очереди, если у Вас достаточно много конкурентных пользовательских сессий.

-------
С уважением,
Александр Спирин

Делал тестовый скрипт, который запускал на машине с одним чанком, скорость сброса 4 метра в секунду.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33988700
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Журавлев ДенисИ еще: предположим во время чекпоинта надо записать 15 мег., мои дисковые массивы при direct random write при 4кб записях показывают от 0.5 до 15 мег/сек (меряю iozone), поэтому легко можно и 30 секунд писать на дешевом массиве с маленьким кэшем на запись.

к сожалению все на локальных FC дисках. Возможности поработать с RAID-ом нет.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33988702
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Журавлев ДенисИ еще: предположим во время чекпоинта надо записать 15 мег., мои дисковые массивы при direct random write при 4кб записях показывают от 0.5 до 15 мег/сек (меряю iozone), поэтому легко можно и 30 секунд писать на дешевом массиве с маленьким кэшем на запись.

А какое железо с операционкой?
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33989249
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr Журавлев ДенисИ еще: предположим во время чекпоинта надо записать 15 мег., мои дисковые массивы при direct random write при 4кб записях показывают от 0.5 до 15 мег/сек (меряю iozone), поэтому легко можно и 30 секунд писать на дешевом массиве с маленьким кэшем на запись.

А какое железо с операционкой?Да разное железо (и p4 с win и parisc с hpux (у меня несколько SAN сетей)), я же про внешние фиберченал дисковые массивы, с кэшами на запись и батарейками.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33989332
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если обратится к документации и почитать про чекпоинты то увидим:

1. Ждать можно на 1-м шаге выход пользовательских нитей из крит. секции (иногда очень долго 10-20-30 мин. :).

2. Ждать можно сброса буферов на шаге 4, с медленными дисками ждать можно долго. Это можно разрулить либо перейдя на LRUwrites LRU_MAX_DIRTY 0.5; либо перейти на собственный чекпоинт CKPTINTVL 9999, в цикле onmode -B&&onmode -C пауза 10 мин. onmode -B -- сброс буферов (нити не блокирует).
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33989343
Алексан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr АлексанДобрый день всем.
На Вашем сервере слишком малое количество LRU-очередей и они, как следуствие, слишком длинные. Просто просканировать такие очереди занимает время! Кроме того, число клинеров в несколько раз меньше числа чанков.
Мне кажется, полегчает, если Вы увеличите количество LRU-очередей хотя бы до 63 (а лучше до 128, тем более что это ничего не стоит) и количество клинеров увеличите до того же числа (ресурсов они не занимают, поскольку эти нити существуют только во время их работы).
Эти действия также уменьшат конкуренцию за сами LRU-очереди, если у Вас достаточно много конкурентных пользовательских сессий.

-------
С уважением,
Александр Спирин

Вообще то в настоящий момент 34 очереди и никакой разницы с 8-ю.
ИМХО механизм скана LRU у Informix сделан оптимально.

Конфигурационый файл вашего сервера относится к 2003 году, и в нём указано 8 очередей. Не предоставите ли Вы свежий выход onstat -a ?
Статистика sar -d может подтвердить ваше предположение о недостаточной дисковой подсистеме.

-------
С уважением,
Александр Спирин
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33989408
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33990363
Фотография Тан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cprВообще то в настоящий момент 34 очереди и никакой разницы с 8-ю.
ИМХО механизм скана LRU у Informix сделан оптимально.
Откуда разница, если механизм LRU writes не работает?
По крайней мере он не работал 3 года назад, когда LRU_MAX_DIRTY/LRU_MIN_DIRTY были 60/50
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33990952
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Журавлев Денис Madison Pruet onmode -B does not flush the pages from the buffer pool. It simply
writes dirty pages to disk. The page still remains in the buffer pool.
onmode -B is probably a much better solution to the long checkpoint
issue than using very low LRU values because it uses chunk writes
rather than LRU writes.

Ранее не видел такого ясного определения и даже сделал FAQ:
"Для чего нужен onmode -B - недокументированный ключ стандартной утилиты ?" http://www.sql.ru/faq/faq_topic.aspx?fid=646
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33991118
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vasilisРанее не видел такого ясного определения и даже сделал FAQ:
Наверно Мэдисон автор фичи, недавно он вообще предположил возможность реализации неблокирующего чекпоинта.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33994445
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Тан cprВообще то в настоящий момент 34 очереди и никакой разницы с 8-ю.
ИМХО механизм скана LRU у Informix сделан оптимально.
Откуда разница, если механизм LRU writes не работает?
По крайней мере он не работал 3 года назад, когда LRU_MAX_DIRTY/LRU_MIN_DIRTY были 60/50

сейчас LRU_MAX_DIRTY/LRU_MIN_DIRTY были 1/0
вот он то сейчас и работает
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33994479
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Журавлев ДенисЕсли обратится к документации и почитать про чекпоинты то увидим:

1. Ждать можно на 1-м шаге выход пользовательских нитей из крит. секции (иногда очень долго 10-20-30 мин. :).

2. Ждать можно сброса буферов на шаге 4, с медленными дисками ждать можно долго. Это можно разрулить либо перейдя на LRUwrites LRU_MAX_DIRTY 0.5; либо перейти на собственный чекпоинт CKPTINTVL 9999, в цикле onmode -B&&onmode -C пауза 10 мин. onmode -B -- сброс буферов (нити не блокирует).

а на 7.31 доступен собственный чекпойнт?
дорбный процент для старта очистителя точно недоступен
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33994610
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr
а на 7.31 доступен собственный чекпойнт?Тебе трудно нажать onmode -B[enter]? Версию хотя бы полностью скажи.

cpr
дорбный процент для старта очистителя точно недоступенЭто да, только в 9.4 наверно.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33994953
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Журавлев Денис cpr
а на 7.31 доступен собственный чекпойнт?Тебе трудно нажать onmode -B[enter]? Версию хотя бы полностью скажи.

cpr
дорбный процент для старта очистителя точно недоступенЭто да, только в 9.4 наверно.

дык писал выше - 7.31 FD6
нажать кнопку легко, но меня терзают смутные сомнения.
Насколько я понимаю согласованность данных на диске при сбросе чекпойнта как раз гарантируется тем, что все остальные нити блокируются.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33995670
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cprдык писал выше - 7.31 FD6
нажать кнопку легко, но меня терзают смутные сомнения.
Насколько я понимаю согласованность данных на диске при сбросе чекпойнта как раз гарантируется тем, что все остальные нити блокируются.Чекпоинт гарантирует слегка не это, но это не важно, настоящий чекпоинт ты тоже сделаешь onmode -c (т.е. создашь наст. контр. точку и еще раз сфлашишь), просто перед ним ты "почистишь" буфера.
Я тебе предлагал попробовать выполнить onmode -B в любой момент, посмотреть что onmode ответит -- хуже от этого не будет.

Цитату Мэдисона читал? Он один из девелоперов информикса, если он говорит что можно и нужно использовать onmode -B (вместо maxdirty 1), то так и нужно делать.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33995716
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Журавлев Денис cprдык писал выше - 7.31 FD6
нажать кнопку легко, но меня терзают смутные сомнения.
Насколько я понимаю согласованность данных на диске при сбросе чекпойнта как раз гарантируется тем, что все остальные нити блокируются.Чекпоинт гарантирует слегка не это, но это не важно, настоящий чекпоинт ты тоже сделаешь onmode -c (т.е. создашь наст. контр. точку и еще раз сфлашишь), просто перед ним ты "почистишь" буфера.
Я тебе предлагал попробовать выполнить onmode -B в любой момент, посмотреть что onmode ответит -- хуже от этого не будет.

Цитату Мэдисона читал? Он один из девелоперов информикса, если он говорит что можно и нужно использовать onmode -B (вместо maxdirty 1), то так и нужно делать.

onmode -B
ничего не сказал
;-)
...
Рейтинг: 0 / 0
длинный чекпойнт
    #33995726
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr
onmode -B
ничего не сказал
;-)перед чекпоинтом попробуй time onmode -B посмотри время.
...
Рейтинг: 0 / 0
длинный чекпойнт
    #34000095
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cpr
onmode -B
ничего не сказал
;-)
На 9.30.ТС2 тоже ничего не говорит, но и ничего не делает, т.е. грязные страницы из буферного пула не сбрасывает :((
А жаль... Интересно, с какой все таки версии (или с какого времени) данная фича работает ?
...
Рейтинг: 0 / 0
длинный чекпойнт
    #34614229
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Трабл исчез когда перенесли данные с локальных дисков на аппаратный RAID.
У локальных дисков кэш на запись отключен принудельно.
У RAID кэш 4 гига.
Запись при при чекпойнте выполняется на порядок быстрее.
Да и количество буферов еще увеличили.
...
Рейтинг: 0 / 0
58 сообщений из 58, показаны все 3 страниц
Форумы / Informix [игнор отключен] [закрыт для гостей] / длинный чекпойнт
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]