Skip to end of metadata
Go to start of metadata

x_cons <database_name> show io

Displays the number of read and write operations per volume as well as the number of 8 KB page reads. These numbers are independent of whether the I/O is synchronous or asynchronous.

Devspace                         No.    Read(s)     RPages   Write(s)     WPages
knltrace                           0          0          0          1          1
/sapdb/BXT/sapdata1/DISKD0001      1    4610727    4610727     220109     325074
/sapdb/BXT/sapdata1/DISKD0002      2    4683045    4683045     235005     364871
/sapdb/BXT/sapdata1/DISKD0003      3    4677526    4677526     253973     382362
/sapdb/BXT/sapdata1/DISKD0004      4    4687355    4687355     252497     389578
/sapdb/BXT/sapdata1/DISKD0005      5    4675325    4675325     248444     377477
/sapdb/BXT/sapdata1/DISKD0006      6    4678049    4678049     247589     377831
/sapdb/BXT/sapdata1/DISKD0007      7    4669834    4669834     241047     370269
/sapdb/BXT/sapdata1/DISKD0008      8    4668793    4668793     250094     375246
/sapdb/BXT/sapdata1/DISKD0009      9    4683032    4683032     261756     394749
/sapdb/BXT/sapdata1/DISKD0010     10    4662186    4662186     249049     383504
/sapdb/BXT/sapdata1/DISKD0011     11    4671659    4671659     252089     386578
/sapdb/BXT/sapdata1/DISKD0012     12    4662242    4662242     245421     374033
/sapdb/BXT/sapdata1/DISKD0013     13    4662073    4662073     244606     374503
/sapdb/BXT/sapdata1/DISKD0014     14    3070600    3070600     389015     635025
/sapdb/BXT/sapdata1/DISKD0015     15    3408013    3408013     389001     668276
/sapdb/BXT/sapdata1/DISKD0016     16    3836097    3836097     388995     652942
/sapdb/BXT/sapdata1/DISKD0017     17    2896986    2896986     389004     668548
/sapdb/BXT/sapdata1/DISKD0018     18    3486976    3486976     388998     701578
/sapdb/BXT/saplog1/DISKL001       19     213353    1706686    5164989    5687590
/sapdb/BXT/saplog2/DISKM001       20          1          1    5164989    5687590
total I/O                              77603872   79097205   15476671   19577625
  • Devspace : Name of the media which the thread is currently accessing.
  • Devs. No. : Id of the devspace
  • Read Count : Read count
  • Read Pages : Number of pages read
  • Write Count : Write count
  • Write Pages : Number of pages written

In MaxDB 7.6, several data volumes and log volumes can be configured. For each data volume, several worker threads exist and each worker thread has its own request queue protected by spinlock. The number of queues for a volume can be configured using database parameter, _IOPROCS_PER_DEV. For log volumes, even though there can be multiple log voumes, logging is serialized so only one is active at a time.
In MaxDB 7.7, volume job queues are separated from worker threads and operate without spinlocks. By implementing lock-free mechanism, the scalability problem that could be caused by lock based operation can be avoided. Instead of assigning a fixed number of worker threads to each volume, there is a worker pool with a special FIFO queue which manages tickets that trigger actual operations in I/O. When I/O is done, the worker thread goes back to the pool. By having a pool of worker threads instead of assigning worker threads to each volume, MaxDB can configure any number of queues per volume without using many resources. If one volume is heavily used, large number of workers can be allocated for that volume since workers are shared by all volumes. Therefore, you do not have to split a data volume to several small volumes to achieve good parallelism. Also, the new I/O mechanism allows asynchronous operations for tasks for log writing and data cache handling and better job priority handling.