Тема: InnoDB+UFS+SSD
Показать сообщение отдельно
  #14  
Старый 13.01.2021, 18:52
Sergey Anohin
Guest
 
Сообщений: n/a
По умолчанию Re: InnoDB+UFS+SSD

Sergey Anohin написал(а) к Alex Korchmar в Jan 21 17:36:29 по местному времени:

Нello, Alex!

EG>> Размер страницы InnoDB и размер блока UFS крайне желательно
EG>> иметь одинаковыми и изменить размер страницы однажды созданной базы InnoDB
AK> я, кстати, рекомендую еще разок перечитать вот это из найденной пострадавшим
AK> компилятивной доки:
AK> As discussed above, ZFS LZ4 compression is incredibly fast, so we
AK> should leave compression to ZFS and not use InnoDBs built in page
AK> compression. As an added benefit, leaving compression to ZFS doesnt
AK> disrupt the block alignment. Optimising the storage stack for 16KB
AK> writes and then using compression at InnoDB level would
AK> То есть, если не планируется делать чего-то совсем странного, про страдания с
AK> попаданием в page size можно смело забывать - это in-memory pages, при
AK> записи все будет пожамкано в непредсказуемый размер. Читается оно с prefetch,
AK> поэтому никто от этого особо не страдает.

Для innodb prefetch все рекомендуют отключать :) В той же доке
Since InnoDB does it’s own prefetching, we can disable ZFS’ own prefetching (since it is redundant in this specific usage) by setting the kernel module paramter zfsprefetchdisable=1. This is especially important in environments where disk I/O is heavily constrained and provisioning more IOPS is expensive (e.g. in cloud environments).

AK> (Но вот размер записи в логи - насколько я понимаю, фиксированный.)

Ну тут доверяй но проверяй, кейзы разные всегда, вот например есть такой пример,

zroot/var/db/mysql recordsize 8k
zroot/var/db/mysql/ibdata recordsize 16k
zroot/var/db/mysql/iblogs recordsize 128k

только при innodbpertable=1 или как его там он все равно хранит где попало в /var/db/mysql/<dbname>/.ibd
то есть в моем случае надо и на
zroot/var/db/mysql 16k recordsize

Или вот еще про ZFS кеш, что типа InnoDB свой имеет кеш и нет смысла all кешировать, кешируется только metadata.
Все бы ничего если бы InnoDB bufferpool влезал в раму как рекомендуется.
Я пока пробую в ARC metadata в L2ARC all хз, ну я б не сказал что MySQL полетел прямо как будто от на SSD диске сидит :)

# zfs get all zroot/var/db/mysql
NAME PROPERTY VALUE SOURCE
zroot/var/db/mysql type filesystem -
zroot/var/db/mysql creation пт марта 16 22:18 2018 -
zroot/var/db/mysql used 16,5G -
zroot/var/db/mysql available 1,33T -
zroot/var/db/mysql referenced 15,8G -
zroot/var/db/mysql compressratio 1.65x -
zroot/var/db/mysql mounted yes -
zroot/var/db/mysql quota none default
zroot/var/db/mysql reservation none default
zroot/var/db/mysql recordsize 16K local
zroot/var/db/mysql mountpoint /var/db/mysql inherited from zroot/var
zroot/var/db/mysql sharenfs off default
zroot/var/db/mysql checksum fletcher4 inherited from zroot
zroot/var/db/mysql compression lz4 local
zroot/var/db/mysql atime off local
zroot/var/db/mysql devices on default
zroot/var/db/mysql exec off inherited from zroot/var/db
zroot/var/db/mysql setuid off inherited from zroot/var/db
zroot/var/db/mysql readonly off default
zroot/var/db/mysql jailed off default
zroot/var/db/mysql snapdir hidden default
zroot/var/db/mysql aclmode discard default
zroot/var/db/mysql aclinherit restricted default
zroot/var/db/mysql createtxg 11403386 -
zroot/var/db/mysql canmount on default
zroot/var/db/mysql xattr off temporary
zroot/var/db/mysql copies 1 default
zroot/var/db/mysql version 5 -
zroot/var/db/mysql utf8only off -
zroot/var/db/mysql normalization none -
zroot/var/db/mysql casesensitivity sensitive -
zroot/var/db/mysql vscan off default
zroot/var/db/mysql nbmand off default
zroot/var/db/mysql sharesmb off default
zroot/var/db/mysql refquota none default
zroot/var/db/mysql refreservation none default
zroot/var/db/mysql guid 13227566777127831999 -
zroot/var/db/mysql primarycache metadata local
zroot/var/db/mysql secondarycache all local
zroot/var/db/mysql usedbysnapshots 0 -
zroot/var/db/mysql usedbydataset 15,8G -
zroot/var/db/mysql usedbychildren 704M -
zroot/var/db/mysql usedbyrefreservation 0 -
zroot/var/db/mysql logbias throughput local
zroot/var/db/mysql dedup off default
zroot/var/db/mysql mlslabel -
zroot/var/db/mysql sync disabled local
zroot/var/db/mysql dnodesize legacy default
zroot/var/db/mysql refcompressratio 1.64x -
zroot/var/db/mysql written 15,8G -
zroot/var/db/mysql logicalused 26,9G -
zroot/var/db/mysql logicalreferenced 25,7G -
zroot/var/db/mysql volmode default default
zroot/var/db/mysql filesystem_limit none default
zroot/var/db/mysql snapshot_limit none default
zroot/var/db/mysql filesystem_count none default
zroot/var/db/mysql snapshot_count none default
zroot/var/db/mysql redundant_metadata all default

# zfs get all zroot/var/db/mysql/iblogs
NAME PROPERTY VALUE SOURCE
zroot/var/db/mysql/iblogs type filesystem -
zroot/var/db/mysql/iblogs creation пт марта 16 22:20 2018 -
zroot/var/db/mysql/iblogs used 325M -
zroot/var/db/mysql/iblogs available 1,33T -
zroot/var/db/mysql/iblogs referenced 325M -
zroot/var/db/mysql/iblogs compressratio 1.58x -
zroot/var/db/mysql/iblogs mounted yes -
zroot/var/db/mysql/iblogs quota none default
zroot/var/db/mysql/iblogs reservation none default
zroot/var/db/mysql/iblogs recordsize 128K local
zroot/var/db/mysql/iblogs mountpoint /var/db/mysql/iblogs inherited from zroot/var
zroot/var/db/mysql/iblogs sharenfs off default
zroot/var/db/mysql/iblogs checksum fletcher4 inherited from zroot
zroot/var/db/mysql/iblogs compression lz4 inherited from zroot/var/db/mysql
zroot/var/db/mysql/iblogs atime off inherited from zroot/var/db/mysql
zroot/var/db/mysql/iblogs devices on default
zroot/var/db/mysql/iblogs exec off inherited from zroot/var/db
zroot/var/db/mysql/iblogs setuid off inherited from zroot/var/db
zroot/var/db/mysql/iblogs readonly off default
zroot/var/db/mysql/iblogs jailed off default
zroot/var/db/mysql/iblogs snapdir hidden default
zroot/var/db/mysql/iblogs aclmode discard default
zroot/var/db/mysql/iblogs aclinherit restricted default
zroot/var/db/mysql/iblogs createtxg 11403407 -
zroot/var/db/mysql/iblogs canmount on default
zroot/var/db/mysql/iblogs xattr off temporary
zroot/var/db/mysql/iblogs copies 1 default
zroot/var/db/mysql/iblogs version 5 -
zroot/var/db/mysql/iblogs utf8only off -
zroot/var/db/mysql/iblogs normalization none -
zroot/var/db/mysql/iblogs casesensitivity sensitive -
zroot/var/db/mysql/iblogs vscan off default
zroot/var/db/mysql/iblogs nbmand off default
zroot/var/db/mysql/iblogs sharesmb off default
zroot/var/db/mysql/iblogs refquota none default
zroot/var/db/mysql/iblogs refreservation none default
zroot/var/db/mysql/iblogs guid 2433669013503756839 -
zroot/var/db/mysql/iblogs primarycache metadata inherited from zroot/var/db/mysql
zroot/var/db/mysql/iblogs secondarycache all inherited from zroot/var/db/mysql
zroot/var/db/mysql/iblogs usedbysnapshots 0 -
zroot/var/db/mysql/iblogs usedbydataset 325M -
zroot/var/db/mysql/iblogs usedbychildren 0 -
zroot/var/db/mysql/iblogs usedbyrefreservation 0 -
zroot/var/db/mysql/iblogs logbias latency local
zroot/var/db/mysql/iblogs dedup off default
zroot/var/db/mysql/iblogs mlslabel -
zroot/var/db/mysql/iblogs sync disabled local
zroot/var/db/mysql/iblogs dnodesize legacy default
zroot/var/db/mysql/iblogs refcompressratio 1.58x -
zroot/var/db/mysql/iblogs written 325M -
zroot/var/db/mysql/iblogs logicalused 512M -
zroot/var/db/mysql/iblogs logicalreferenced 512M -
zroot/var/db/mysql/iblogs volmode default default
zroot/var/db/mysql/iblogs filesystem_limit none default
zroot/var/db/mysql/iblogs snapshot_limit none default
zroot/var/db/mysql/iblogs filesystem_count none default
zroot/var/db/mysql/iblogs snapshot_count none default
zroot/var/db/mysql/iblogs redundant_metadata all default

# zfs get all zroot/var/db/mysql/ibdata
NAME PROPERTY VALUE SOURCE
zroot/var/db/mysql/ibdata type filesystem -
zroot/var/db/mysql/ibdata creation пт марта 16 22:20 2018 -
zroot/var/db/mysql/ibdata used 379M -
zroot/var/db/mysql/ibdata available 1,33T -
zroot/var/db/mysql/ibdata referenced 379M -
zroot/var/db/mysql/ibdata compressratio 2.36x -
zroot/var/db/mysql/ibdata mounted yes -
zroot/var/db/mysql/ibdata quota none default
zroot/var/db/mysql/ibdata reservation none default
zroot/var/db/mysql/ibdata recordsize 16K local
zroot/var/db/mysql/ibdata mountpoint /var/db/mysql/ibdata inherited from zroot/var
zroot/var/db/mysql/ibdata sharenfs off default
zroot/var/db/mysql/ibdata checksum fletcher4 inherited from zroot
zroot/var/db/mysql/ibdata compression lz4 inherited from zroot/var/db/mysql
zroot/var/db/mysql/ibdata atime off inherited from zroot/var/db/mysql
zroot/var/db/mysql/ibdata devices on default
zroot/var/db/mysql/ibdata exec off inherited from zroot/var/db
zroot/var/db/mysql/ibdata setuid off inherited from zroot/var/db
zroot/var/db/mysql/ibdata readonly off default
zroot/var/db/mysql/ibdata jailed off default
zroot/var/db/mysql/ibdata snapdir hidden default
zroot/var/db/mysql/ibdata aclmode discard default
zroot/var/db/mysql/ibdata aclinherit restricted default
zroot/var/db/mysql/ibdata createtxg 11403406 -
zroot/var/db/mysql/ibdata canmount on default
zroot/var/db/mysql/ibdata xattr off temporary
zroot/var/db/mysql/ibdata copies 1 default
zroot/var/db/mysql/ibdata version 5 -
zroot/var/db/mysql/ibdata utf8only off -
zroot/var/db/mysql/ibdata normalization none -
zroot/var/db/mysql/ibdata casesensitivity sensitive -
zroot/var/db/mysql/ibdata vscan off default
zroot/var/db/mysql/ibdata nbmand off default
zroot/var/db/mysql/ibdata sharesmb off default
zroot/var/db/mysql/ibdata refquota none default
zroot/var/db/mysql/ibdata refreservation none default
zroot/var/db/mysql/ibdata guid 12007562024988368572 -
zroot/var/db/mysql/ibdata primarycache metadata inherited from zroot/var/db/mysql
zroot/var/db/mysql/ibdata secondarycache all inherited from zroot/var/db/mysql
zroot/var/db/mysql/ibdata usedbysnapshots 0 -
zroot/var/db/mysql/ibdata usedbydataset 379M -
zroot/var/db/mysql/ibdata usedbychildren 0 -
zroot/var/db/mysql/ibdata usedbyrefreservation 0 -
zroot/var/db/mysql/ibdata logbias throughput inherited from zroot/var/db/mysql
zroot/var/db/mysql/ibdata dedup off default
zroot/var/db/mysql/ibdata mlslabel -
zroot/var/db/mysql/ibdata sync disabled local
zroot/var/db/mysql/ibdata dnodesize legacy default
zroot/var/db/mysql/ibdata refcompressratio 2.36x -
zroot/var/db/mysql/ibdata written 379M -
zroot/var/db/mysql/ibdata logicalused 738M -
zroot/var/db/mysql/ibdata logicalreferenced 738M -
zroot/var/db/mysql/ibdata volmode default default
zroot/var/db/mysql/ibdata filesystem_limit none default
zroot/var/db/mysql/ibdata snapshot_limit none default
zroot/var/db/mysql/ibdata filesystem_count none default
zroot/var/db/mysql/ibdata snapshot_count none default
zroot/var/db/mysql/ibdata redundant_metadata all default


innodbdata_homedir=/var/db/mysql/ibdata
innodblog_group_homedir = /var/db/mysql/iblogs

Кеш L2ARC на чтение ведь пашет? Ну может какой-то профит от него есть для MySQL, не очень глазу заметнй

С наилучшими пожеланиями, Sergey Anohin.

--- wfido
Ответить с цитированием