ืกื˜ืึธืจื™ื“ื–ืฉ ื’ื™ื›ืงื™ื™ึทื˜ ืคึผืึทืกื™ืง ืคึฟืึทืจ ืขื˜ืง? ืœืึธืžื™ืจ ืคึฟืจืขื’ืŸ ืคึฟื™ืึธ

ืกื˜ืึธืจื™ื“ื–ืฉ ื’ื™ื›ืงื™ื™ึทื˜ ืคึผืึทืกื™ืง ืคึฟืึทืจ ืขื˜ืง? ืœืึธืžื™ืจ ืคึฟืจืขื’ืŸ ืคึฟื™ืึธ

ื ืงื•ืจืฆืข ืžืขืฉื” ื•ื•ืขื’ืŸ ืคื™ืื• ืื•ืŸ ื•ื›ื•'

ืงื ื•ื™ืœ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืขื˜ืงื“ ืœืึทืจื’ืขืœื™ ื“ืขืคึผืขื ื“ืก ืื•ื™ืฃ ื“ื™ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ ื–ื™ื™ึทืŸ ืกื˜ืึธืจื™ื“ื–ืฉ. ืขื˜ืง ืขืงืกืคึผืึธืจืฅ ืขื˜ืœืขื›ืข ืžืขื˜ืจื™ืงืก ืฆื• ืคึผืจืึธืžืขื˜ื”ืขื•ืกืฆื• ืฆื•ืฉื˜ืขืœืŸ ื“ื™ ื’ืขื‘ืขื˜ืŸ ืกื˜ืึธืจื™ื“ื–ืฉ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ื“ื™ wal_fsync_duration_seconds ืžืขื˜ืจื™ืง. ื“ื™ ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ ืคึฟืึทืจ ืขื˜ืง ื–ืื’ื˜: ืคึฟืึทืจ ืกื˜ืึธืจื™ื“ื–ืฉ ืฆื• ื–ื™ื™ืŸ ื’ืขืจืขื›ื ื˜ ื•ื•ื™ ืฉื ืขืœ ื’ืขื ื•ื’, ื“ื™ 99 ืคึผืจืึธืฆืขื ื˜ ืคื•ืŸ ื“ืขื ืžืขื˜ืจื™ืง ืžื•ื–ืŸ ื–ื™ื™ืŸ ื•ื•ื™ื™ื ื™ืงืขืจ ื•ื•ื™ 10ms. ืื•ื™ื‘ ืื™ืจ ื–ืขื ื˜ ืคึผืœืึทื ื™ืจื•ื ื’ ืฆื• ืœื•ื™ืคืŸ ืึทืŸ ืขื˜ืง ืงื ื•ื™ืœ ืื•ื™ืฃ ืœื™ื ื•ืงืก ืžืืฉื™ื ืขืŸ ืื•ืŸ ื•ื•ื™ืœืŸ ืฆื• ืึธืคึผืฉืึทืฆืŸ ืื•ื™ื‘ ื“ื™ื™ืŸ ืกื˜ืึธืจื™ื“ื–ืฉ ืื™ื– ืฉื ืขืœ ื’ืขื ื•ื’ (ืœืžืฉืœ SSD), ืื™ืจ ืงืขื ืขืŸ ื ื•ืฆืŸ fio ืื™ื– ืึท ืคืึธืœืงืก ื’ืขืฆื™ื™ึทื’ ืคึฟืึทืจ ื˜ืขืกื˜ื™ื ื’ ื™ / ืึธ ืึทืคึผืขืจื™ื™ืฉืึทื ื–. ืœื•ื™ืคืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ื‘ืึทืคึฟืขืœ, ื•ื•ื• ื˜ืขืกื˜-ื“ืึทื˜ืŸ ืื™ื– ื“ื™ ื•ื•ืขื’ื•ื•ื™ื™ึทื–ืขืจ ืื•ื ื˜ืขืจ ื“ื™ ืกื˜ืึธืจื™ื“ื–ืฉ ื‘ืืจื’ ืคื•ื ื˜:

fio --rw=write --ioengine=sync --fdatasync=1 --directory=test-data --size=22m --bs=2300 --name=mytest

ืื™ืจ ื ืึธืจ ื“ืึทืจืคึฟืŸ ืฆื• ืงื•ืงืŸ ืื™ืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื•ืŸ ืงืึธื ื˜ืจืึธืœื™ืจืŸ ืึทื– ื“ื™ 99 ืคึผืจืึธืฆืขื ื˜ ืคื•ืŸ ื“ื™ ื’ืขื“ื•ื™ืขืจ fdatasync ื•ื•ื™ื™ื ื™ืงืขืจ ื•ื•ื™ 10 ืžื™ื–. ืื•ื™ื‘ ืึทื–ื•ื™, ืื™ืจ ื”ืึธื‘ืŸ ืจื™ื–ืึทื ืึทื‘ืœื™ ืฉื ืขืœ ืกื˜ืึธืจื™ื“ื–ืฉ. ื“ืึธ ืื™ื– ืึท ื‘ื™ื™ึทืฉืคึผื™ืœ ืคื•ืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ:

  sync (usec): min=534, max=15766, avg=1273.08, stdev=1084.70
  sync percentiles (usec):
   | 1.00th=[ 553], 5.00th=[ 578], 10.00th=[ 594], 20.00th=[ 627],
   | 30.00th=[ 709], 40.00th=[ 750], 50.00th=[ 783], 60.00th=[ 1549],
   | 70.00th=[ 1729], 80.00th=[ 1991], 90.00th=[ 2180], 95.00th=[ 2278],
   | 99.00th=[ 2376], 99.50th=[ 9634], 99.90th=[15795], 99.95th=[15795],
   | 99.99th=[15795]

ื”ืขืจื•ืช

  • ืžื™ืจ ื”ืึธื‘ืŸ ืงืึทืกื˜ืึทืžื™ื™ื–ื“ ื“ื™ -- ื’ืจื™ื™ืก ืื•ืŸ --bs ืึธืคึผืฆื™ืขืก ืคึฟืึทืจ ืื•ื ื“ื–ืขืจ ื‘ืึทื–ื•ื ื“ืขืจ ืกืฆืขื ืึทืจ. ืฆื• ื‘ืึทืงื•ืžืขืŸ ืึท ื ื•ืฆื™ืง ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ fio, ืฆื•ืฉื˜ืขืœืŸ ื“ื™ื™ืŸ ืื™ื™ื’ืขื ืข ื•ื•ืึทืœื•ืขืก. ื•ื•ื• ืฆื• ื‘ืึทืงื•ืžืขืŸ ื–ื™ื™? ืœื™ื™ืขื ืขืŸ ื•ื•ื™ ืžื™ืจ ื’ืขืœืขืจื ื˜ ืฆื• ืงืึทื ืคื™ื’ื™ืขืจ ืคื™ืึธ.
  • ื‘ืขืฉืึทืก ื˜ืขืกื˜ื™ื ื’, ืึทืœืข ื™ / ืึธ ืžืึทืกืข ืงื•ืžื˜ ืคึฟื•ืŸ ืคื™ืึธ. ืื™ืŸ ืึท ืคืึทืงื˜ื™ืฉ-ืœืขื‘ืŸ ืกืฆืขื ืึทืจ, ืขืก ื•ื•ืขื˜ ืžืกืชึผืžื ื–ื™ื™ืŸ ืื ื“ืขืจืข ืฉืจื™ื™ึทื‘ืŸ ืจื™ืงื•ื•ืขืก ืงื•ืžืขืŸ ืื™ืŸ ื“ื™ ืกื˜ืึธืจื™ื“ื–ืฉ ืึทื—ื•ืฅ ื“ื™ ืฉื™ื™ึทื›ื•ืช ืฆื• wal_fsync_duration_seconds. ื“ื™ ืขืงืกื˜ืจืข ืžืึทืกืข ื•ื•ืขื˜ ืคืึทืจื’ืจืขืกืขืจืŸ ื“ื™ ื•ื•ืขืจื˜ ืคื•ืŸ wal_fsync_duration_seconds. ืึทื–ื•ื™ ืื•ื™ื‘ ื“ื™ 99 ืคึผืขืจืกืขื ื˜ื™ืœ ืื™ื– ื ืึธืขื ื˜ ืฆื• 10ms, ื“ื™ื™ืŸ ืกื˜ืึธืจื™ื“ื–ืฉ ืื™ื– ืคืœื™ืกื ื“ื™ืง ืื•ื™ืก ืคื•ืŸ ื’ื™ื›ืงื™ื™ึทื˜.
  • ื ืขืžืขืŸ ื“ื™ ื•ื•ืขืจืกื™ืข fio ื ื™ื˜ ื ื™ื“ืขืจื™ืงืขืจ ื•ื•ื™ 3.5 (ื“ื™ ืคืจื™ืขืจื“ื™ืงืข ืึธื ืขืก ื˜ืึธืŸ ื ื™ื˜ ื•ื•ื™ื™ึทื–ืŸ ืคื“ืึทื˜ืึทืกื™ื ืง ื’ืขื“ื•ื™ืขืจ ืคึผืขืจืกืขื ื˜ื™ื™ืœื–).
  • ืื•ื™ื‘ืŸ ืื™ื– ื‘ืœื•ื™ื– ืึท ืกื ื™ืคึผืึทื˜ ืคื•ืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืคื•ืŸ ืคื™ืึธ.

ืœืื ื’ืข ืžืขืฉื” ื•ื•ืขื’ืŸ ืคื™ืื• ืื•ืŸ ื•ื›ื•'

ื•ื•ืึธืก ืื™ื– WAL ืื™ืŸ ืขื˜ืง

ื•ืกื•ืึทืœืœื™ ื“ืึทื˜ืึทื‘ื™ื™ืกื™ื– ื ื•ืฆืŸ ืฉืจื™ื™ึทื‘ืŸ ืคืึธืจื•ื™ืก ืงืœืึธืฅ; etcd ื ื™ืฆื˜ ืขืก ืื•ื™ืš. ืžื™ืจ ื•ื•ืขืœืŸ ื ื™ืฉื˜ ื“ื™ืกืงื•ื˜ื™ืจืŸ ื“ื™ ืฉืจื™ื™ึทื‘ืŸ ืคืึธืจื•ื™ืก ืงืœืึธืฅ (WAL) ืื™ืŸ ื“ืขื˜ืึทืœ ื“ืึธ. ืขืก ืื™ื– ื’ืขื ื•ื’ ืคึฟืึทืจ ืื•ื ื“ื– ืฆื• ื•ื•ื™ืกืŸ ืึทื– ื™ืขื“ืขืจ ืžื™ื˜ื’ืœื™ื“ ืคื•ืŸ ื“ืขืจ ืขื˜ืง ืงื ื•ื™ืœ ื”ืืœื˜ ืขืก ืื™ืŸ ืคึผืขืจืกื™ืกื˜ืขื ื˜ ืกื˜ืึธืจื™ื“ื–ืฉ. etcd ืฉืจื™ื™ื‘ื˜ ื™ืขื“ืขืจ ืฉืœื™ืกืœ-ื•ื•ืขืจื˜ ืึธืคึผืขืจืึทืฆื™ืข (ืึทื–ืึท ื•ื•ื™ ืึท ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงืŸ) ืฆื• WAL ืื™ื™ื“ืขืจ ืึทืคึผืœื™ื™ื™ื ื’ ืขืก ืฆื• ื“ื™ ืงืจืึธื. ืื•ื™ื‘ ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ืกื˜ืึธืจื™ื“ื–ืฉ ืžื™ื˜ื’ืœื™ื“ืขืจ ืงืจืึทืฉื™ื– ืื•ืŸ ืจื™ืกื˜ืึทืจื˜ ืฆื•ื•ื™ืฉืŸ ืกื ืึทืคึผืฉืึทืฅ, ืขืก ืงืขื ืขืŸ ืœืึธื•ืงืึทืœื™ ื•ืžืงืขืจืŸ ื˜ืจืึทื ื–ืึทืงืฉืึทื ื– ื–ื™ื ื˜ ื“ื™ ืœืขืฆื˜ืข ืžืึธืžืขื ื˜ื‘ื™ืœื“ ื“ื•ืจืš WAL ืื™ื ื”ืึทืœื˜.

ื•ื•ืขืŸ ืึท ืงืœื™ืขื ื˜ ืžื•ืกื™ืฃ ืึท ืฉืœื™ืกืœ ืฆื• ื“ื™ ืฉืœื™ืกืœ / ื•ื•ืขืจื˜ ืงืจืึธื ืึธื“ืขืจ ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜ ื“ื™ ื•ื•ืขืจื˜ ืคื•ืŸ ืึท ื™ื’ื–ื™ืกื˜ื™ื ื’ ืฉืœื™ืกืœ, ืขื˜ืง ืจืขืงืึธืจื“ื™ืจื˜ โ€‹โ€‹โ€‹โ€‹ื“ื™ ืึธืคึผืขืจืึทืฆื™ืข ืื™ืŸ WAL, ื•ื•ืึธืก ืื™ื– ืึท ืจืขื’ื•ืœืขืจ ื˜ืขืงืข ืื™ืŸ ืคึผืขืจืกื™ืกื˜ืขื ื˜ ืกื˜ืึธืจื™ื“ื–ืฉ. etcd ืžื•ื–ืŸ ื–ื™ื™ืŸ ื’ืึธืจ ื–ื™ื›ืขืจ ืึทื– ื“ื™ WAL ืคึผืึธื–ื™ืฆื™ืข ืื™ื– ืึทืงืฉืœื™ ืคืืจื’ืขืงื•ืžืขืŸ ืื™ื™ื“ืขืจ ืคืึธืจื–ืขืฆืŸ ืžื™ื˜ ืคึผืจืึทืกืขืกื™ื ื’. ืื•ื™ืฃ ืœื™ื ื•ืงืก, ืื™ื™ืŸ ืกื™ืกื˜ืขื ืจื•ืคืŸ ืื™ื– ื ื™ืฉื˜ ื’ืขื ื•ื’ ืคึฟืึทืจ ื“ืขื. ืฉืจื™ื™ึทื‘ืŸ, ื–ื™ื ื˜ ื“ื™ ืคืึทืงื˜ื™ืฉ ืฉืจื™ื™ึทื‘ืŸ ืฆื• ื’ืฉืžื™ื•ืช ืกื˜ืึธืจื™ื“ื–ืฉ ืงืขืŸ ื–ื™ื™ืŸ ื“ื™ืœื™ื™ื“. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืœื™ื ื•ืงืก ืงืขืŸ ืงืจืึธื ืึท WAL ืคึผืึธื–ื™ืฆื™ืข ืื™ืŸ ืึท ืงืึทืฉ ืื™ืŸ ืงืขืจืŸ ื–ื›ึผืจื•ืŸ (ืึทื–ืึท ื•ื•ื™ ืึท ื‘ืœืึทื˜ ืงืึทืฉ) ืคึฟืึทืจ ืขื˜ืœืขื›ืข ืžืึธืœ. ืื•ืŸ ื›ึผื“ื™ ื“ื™ ื“ืึทื˜ืŸ ื–ืึธืœ ื–ื™ื™ืŸ ืึทืงื™ืขืจืึทื˜ืœื™ ื’ืขืฉืจื™ื‘ืŸ ืฆื• ืคึผืขืจืกื™ืกื˜ืขื ื˜ ืกื˜ืึธืจื™ื“ื–ืฉ, ื“ื™ fdatasync ืกื™ืกื˜ืขื ืจื•ืคืŸ ืื™ื– ื“ืืจืฃ ื ืึธืš ื“ื™ ืฉืจื™ื™ึทื‘ืŸ, ืื•ืŸ ืขื˜ืง ื ืึธืจ ื ื™ืฆื˜ ืขืก (ื•ื•ื™ ืื™ืจ ืงืขื ืขืŸ ื–ืขืŸ ืื™ืŸ ื“ืขืจ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ื“ื™ ืึทืจื‘ืขื˜ ืฉื˜ืจืขื ื’, ื•ื•ื• 8 ืื™ื– ื“ื™ WAL ื˜ืขืงืข ื“ื™ืกืงืจื™ืคึผื˜ืึธืจ):

21:23:09.894875 lseek(8, 0, SEEK_CUR)   = 12808 <0.000012>
21:23:09.894911 write(8, ". 20210220361223255266632$10 20103026"34"rn3fo"..., 2296) = 2296 <0.000130>
21:23:09.895041 fdatasync(8)            = 0 <0.008314>

ืฆื•ื ื‘ืึทื“ื•ื™ืขืจืŸ, ืฉืจื™ื™ื‘ืŸ ืฆื• ืคึผืขืจืกื™ืกื˜ืขื ื˜ ืกื˜ืึธืจื™ื“ื–ืฉ ื˜ื•ื˜ ื ื™ืฉื˜ ืคึผืึทืกื™ืจืŸ ื˜ื™ื™ืงืขืฃ. ืื•ื™ื‘ ื“ื™ fdatasync ืจื•ืคืŸ ืื™ื– ืคึผืึทืžืขืœืขืš, ื“ื™ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ ื“ื™ ืขื˜ืง ืกื™ืกื˜ืขื ื•ื•ืขื˜ ืœื™ื™ึทื“ืŸ. ื“ื™ ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ ืคึฟืึทืจ ืขื˜ืง ื–ืื’ื˜ืึทื– ื“ื™ ืกื˜ืึธืจื™ื“ื–ืฉ ืื™ื– ื’ืขืจืขื›ื ื˜ ื•ื•ื™ ืฉื ืขืœ ื’ืขื ื•ื’ ืื•ื™ื‘, ืื™ืŸ ื“ื™ 99 ืคึผืจืึธืฆืขื ื˜ื™ืœ, fdatasync ืจื•ืคื˜ ื ืขืžืขืŸ ื•ื•ื™ื™ื ื™ืงืขืจ ื•ื•ื™ 10ms ืฆื• ืฉืจื™ื™ึทื‘ืŸ ืฆื• ื“ื™ WAL ื˜ืขืงืข. ืขืก ื–ืขื ืขืŸ ืื ื“ืขืจืข ื ื•ืฆื™ืง ืžืขื˜ืจื™ืงืก ืคึฟืึทืจ ืกื˜ืึธืจื™ื“ื–ืฉ, ืึธื‘ืขืจ ืื™ืŸ ื“ืขื ืคึผืึธืกื˜ืŸ ืžื™ืจ ื–ืขื ืขืŸ ื‘ืœื•ื™ื– ื’ืขืจืขื“ื˜ ื•ื•ืขื’ืŸ ื“ืขื ืžืขื˜ืจื™ืง.

ืขืกื˜ื™ืžืึทื˜ืขื“ ืกื˜ืึธืจื™ื“ื–ืฉ ืžื™ื˜ ืคื™ืึธ

ืื•ื™ื‘ ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืึธืคึผืฉืึทืฆืŸ ืื•ื™ื‘ ื“ื™ื™ืŸ ืกื˜ืึธืจื™ื“ื–ืฉ ืื™ื– ืคึผืึทืกื™ืง ืคึฟืึทืจ ืขื˜ืง, ื ื•ืฆืŸ fio, ืึท ื–ื™ื™ืขืจ ืคืึธืœืงืก I/O ืžืึทืกืข ื˜ืขืกื˜ื™ื ื’ ื’ืขืฆื™ื™ึทื’. ืขืก ื–ืึธืœ ื–ื™ื™ืŸ ื“ืขืจืžืื ื˜ ืึทื– ื“ื™ืกืง ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืงืขื ืขืŸ ื–ื™ื™ืŸ ื–ื™ื™ืขืจ ืึทื ื“ืขืจืฉ: ืกื™ื ื˜ืฉืจืึธื ืึธื•ืก ืื•ืŸ ื™ื™ืกื™ื ื’ืงืจืึทื ืึทืก, ืคื™ืœืข ืงืœืืกืŸ ืคื•ืŸ ืกื™ืกื˜ืขื ืงืึทืœืœืก, ืืื–"ื• ื•. ื•ื•ื™ ืึท ืจืขื–ื•ืœื˜ืึทื˜, ืคื™ืึธ ืื™ื– ื’ืึทื ืฅ ืฉื•ื•ืขืจ ืฆื• ื ื•ืฆืŸ. ืขืก ื”ืื˜ ืคื™ืœืข ืคึผืึทืจืึทืžืขื˜ืขืจืก, ืื•ืŸ ืคืึทืจืฉื™ื“ืขื ืข ืงืึทืžื‘ืึทื ื™ื™ืฉืึทื ื– ืคื•ืŸ ื–ื™ื™ืขืจ ื•ื•ืึทืœื•ืขืก ืคึผืจืึธื“ื•ืฆื™ืจืŸ ื–ื™ื™ืขืจ ืคืึทืจืฉื™ื“ืขื ืข ื™ / ืึธ ื•ื•ืขืจืงืœืึธื•ื“ื–. ืฆื• ื‘ืึทืงื•ืžืขืŸ ื˜ื•ื™ื’ืŸ ืคื™ื’ื™ืขืจื– ืคึฟืึทืจ ืขื˜ืง, ืื™ืจ ื–ืึธืœ ืžืึทื›ืŸ ื–ื™ื›ืขืจ ืึทื– ื“ื™ ืคึผืจืึธื‘ืข ืฉืจื™ื™ึทื‘ืŸ ืžืึทืกืข ืคื•ืŸ โ€‹โ€‹ืคื™ืึธ ืื™ื– ื•ื•ื™ ื ืึธืขื ื˜ ื•ื•ื™ ืžืขื’ืœืขืš ืฆื• ื“ื™ ืคืึทืงื˜ื™ืฉ ืžืึทืกืข ืคื•ืŸ โ€‹โ€‹ืขื˜ืง ื•ื•ืขืŸ ืฉืจื™ื™ื‘ืŸ WAL ื˜ืขืงืขืก.

ื“ืขืจื™ื‘ืขืจ, ืคื™ืึธ ื–ืึธืœ, ื‘ื™ื™ึท ืึท ืžื™ื ื™ืžื•ื, ืžืึทื›ืŸ ืึท ืžืึทืกืข ืื™ืŸ ื“ื™ ืคืึธืจืขื ืคื•ืŸ ืึท ืกืขืจื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ืงืึทื ืกืขืงื•ื˜ื™ื•ื•ืข ืฉืจื™ื™ื‘ื˜ ืฆื• ื“ืขืจ ื˜ืขืงืข, ื™ืขื“ืขืจ ืฉืจื™ื™ึทื‘ืŸ ื•ื•ืขื˜ ืฆื•ื ื•ื™ืคืฉื˜ืขืœื  ื–ื™ืš ืคื•ืŸ ืึท ืกื™ืกื˜ืขื ืจื•ืคืŸ ืฉืจื™ื™ึทื‘ืŸื ืื›ื’ืขื’ืื ื’ืขืŸ ื“ื•ืจืš ื“ื™ fdatasync ืกื™ืกื˜ืขื ืจื•ืคืŸ. ืกืึทืงื•ื•ืขื ื˜ืฉืึทืœ ืฉืจื™ื™ื‘ื˜ ืฆื• ืคื™ืึธ ื“ืึทืจืคืŸ ื“ื™ --rw = ืฉืจื™ื™ึทื‘ืŸ ืึธืคึผืฆื™ืข. ืคึฟืึทืจ ืคื™ืึธ ืฆื• ื ื•ืฆืŸ ื“ื™ ืฉืจื™ื™ึทื‘ืŸ ืกื™ืกื˜ืขื ืจื•ืคืŸ ื•ื•ืขืŸ ืฉืจื™ื™ื‘ืŸ, ืืœื ื•ื•ื™ ืฉืจื™ื™ึทื‘ืŸ, ืื™ืจ ื–ืึธืœ ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื“ื™ --ioengine = ืกื™ื ืง ืคึผืึทืจืึทืžืขื˜ืขืจ. ืฆื•ื ืกื•ืฃ, ืื™ืŸ ืกื“ืจ ืฆื• ืจื•ืคืŸ fdatasync ื ืึธืš ื™ืขื“ืขืจ ืฉืจื™ื™ึทื‘ืŸ, ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืœื™ื™ื’ืŸ ื“ื™ --fdatasync = 1 ืคึผืึทืจืึทืžืขื˜ืขืจ. ื“ื™ ืื ื“ืขืจืข ืฆื•ื•ื™ื™ ืึธืคึผืฆื™ืขืก ืื™ืŸ ื“ืขื ื‘ื™ื™ึทืฉืคึผื™ืœ (--ื’ืจื™ื™ืก ืื•ืŸ -ื‘ืก) ื–ืขื ืขืŸ ืฉืจื™ืคื˜-ืกืคึผืขืฆื™ืคื™ืฉ. ืื™ืŸ ื“ืขืจ ื•ื•ื™ื™ึทื˜ืขืจ ืึธืคึผื˜ื™ื™ืœื•ื ื’, ืžื™ืจ ื•ื•ืขื˜ ื•ื•ื™ื™ึทื–ืŸ ืื™ืจ ื•ื•ื™ ืฆื• ืฉื˜ืขืœืŸ ื–ื™ื™.

ืคืืจื•ื•ืืก ืคึผื•ื ืงื˜ ืคื™ืึธ ืื•ืŸ ื•ื•ื™ ืžื™ืจ ื’ืขืœืขืจื ื˜ ืฆื• ืฉื˜ืขืœืŸ ืขืก ืึทืจื•ื™ืฃ

ืื™ืŸ ื“ืขื ืคึผืึธืกื˜ืŸ, ืžื™ืจ ื‘ืึทืฉืจื™ื™ึทื‘ืŸ ืึท ืคืึทืงื˜ื™ืฉ ืคืึทืœ. ืžื™ืจ ื”ืึธื‘ืŸ ืึท ืงื ื•ื™ืœ Kubernetes ื•ื•1.13 ื•ื•ืึธืก ืžื™ืจ ืžืึธื ื™ื˜ืึธืจืขื“ ืžื™ื˜ ืคึผืจืึธืžืขื˜ื”ืขื•ืก. etcd v3.2.24 ืื™ื– ื›ืึธื•ืกื˜ื™ื“ ืื•ื™ืฃ ืึท ืกืกื“. ืขื˜ืง ืžืขื˜ืจื™ืงืก ื’ืขื•ื•ื™ื–ืŸ ืคื“ืึทื˜ืึทืกื™ื ืง ืœื™ื™ื˜ืึทื ืกื™ ืฆื• ื”ื•ื™ืš, ืืคื™ืœื• ื•ื•ืขืŸ ื“ืขืจ ืงื ื•ื™ืœ ืื™ื– ื˜ืืŸ ื’ืึธืจื ื™ืฉื˜. ื“ื™ ืžืขื˜ืจื™ืงืก ื–ืขื ืขืŸ ื’ืขื•ื•ืขืŸ ืžืึธื“ื ืข ืื•ืŸ ืžื™ืจ ื”ืึธื‘ืŸ ื ื™ื˜ ื˜ืึทืงืข ื•ื•ื™ืกืŸ ื•ื•ืึธืก ื–ื™ื™ ืžื™ื™ื ืขืŸ. ื“ืขืจ ืงื ื•ื™ืœ ืงืึธื ืกื™ืกื˜ืขื“ ืคื•ืŸ ื•ื•ื™ืจื˜ื•ืึทืœ ืžืืฉื™ื ืขืŸ, ืขืก ืื™ื– ื ื™ื™ื˜ื™ืง ืฆื• ืคึฟืึทืจืฉื˜ื™ื™ืŸ ื•ื•ืึธืก ื“ื™ ืคึผืจืึธื‘ืœืขื ืื™ื–: ืื™ืŸ ื’ืฉืžื™ื•ืช ืกืกื“ืก ืึธื“ืขืจ ืื™ืŸ ื“ื™ ื•ื•ื™ืจื˜ื•ืึทืœื™ื–ืึทื˜ื™ืึธืŸ ืฉื™ื›ื˜ืข. ืื™ืŸ ืึทื“ื™ืฉืึทืŸ, ืžื™ืจ ืึธืคื˜ ื’ืขืžืื›ื˜ ืขื ื“ืขืจื•ื ื’ืขืŸ ืฆื• ื“ื™ ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืื•ืŸ ื•ื•ื™ื™ื›ื•ื•ืืจื’ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ, ืื•ืŸ ืžื™ืจ ื“ืึทืจืคึฟืŸ ืึท ื•ื•ืขื’ ืฆื• ืึธืคึผืฉืึทืฆืŸ ื–ื™ื™ืขืจ ืจืขื–ื•ืœื˜ืึทื˜ืŸ. ืžื™ืจ ืงืขืŸ ืœื•ื™ืคืŸ ืขื˜ืง ืื™ืŸ ื™ืขื“ืขืจ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืื•ืŸ ืงื•ืง ืื™ืŸ ืคึผืจืึธืžืขื˜ื”ืขื•ืก ืžืขื˜ืจื™ืงืก, ืึธื‘ืขืจ ื“ืึธืก ืื™ื– ืฆื• ืคื™ืœ ืคื•ืŸ ืึท ื›ืึทืกืึทืœ. ืžื™ืจ ื–ืขื ืขืŸ ืงื•ืงืŸ ืคึฟืึทืจ ืึท ืคืขืจืœื™ ืคึผืฉื•ื˜ ื•ื•ืขื’ ืฆื• ืึธืคึผืฉืึทืฆืŸ ืึท ืกืคึผืขืฆื™ืคื™ืฉ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ. ืžื™ืจ ื’ืขื•ื•ืืœื˜ ืฆื• ืงืึธื ื˜ืจืึธืœื™ืจืŸ ืื•ื™ื‘ ืžื™ืจ ืคึฟืึทืจืฉื˜ื™ื™ืŸ ืคึผืจืึธืžืขื˜ื”ืขื•ืก ืžืขื˜ืจื™ืงืก ืคึฟื•ืŸ ืขื˜ืง ืจื™ื›ื˜ื™ืง.

ืื‘ืขืจ ื“ืขืจืคืืจ ื”ืื˜ ืžืขืŸ ื’ืขืžื•ื–ื˜ ืื•ื™ืกืœื™ื™ื–ืŸ ืฆื•ื•ื™ื™ ืคืจืื‘ืœืขืžืขืŸ. ืขืจืฉื˜ืขืจ, ื•ื•ื™ ืงื•ืงื˜ ื“ื™ I/O ืžืึทืกืข ืึทื– ืขื˜ืง ืงืจื™ื™ื™ืฅ ื•ื•ืขืŸ ืฉืจื™ื™ื‘ืŸ ืฆื• WAL? ื•ื•ืึธืก ืกื™ืกื˜ืขื ืจื•ืคื˜ ื–ืขื ืขืŸ ื’ืขื ื™ืฆื˜? ื•ื•ืึธืก ืื™ื– ื“ื™ ื’ืจื™ื™ืก ืคื•ืŸ ื“ื™ ืจืขืงืึธืจื“ืก? ืฆื•ื•ื™ื™ื˜ื ืก, ืื•ื™ื‘ ืžื™ืจ ืขื ื˜ืคึฟืขืจืŸ ื“ื™ ืคึฟืจืื’ืŸ, ื•ื•ื™ ื˜ืึธืŸ ืžื™ืจ ืจืขืคึผืจืึธื“ื•ืฆื™ืจืŸ ืึท ืขื ืœืขืš ื•ื•ืขืจืงืœืึธื•ื“ ืžื™ื˜ ืคื™ืึธ? ื“ื• ื–ืืœืกื˜ ื ื™ืฉื˜ ืคืึทืจื’ืขืกืŸ ืึทื– ืคื™ืึธ ืื™ื– ืึท ื–ื™ื™ืขืจ ืคืœืขืงืกืึทื‘ืึทืœ ื’ืขืฆื™ื™ึทื’ ืžื™ื˜ ืคื™ืœืข ืึธืคึผืฆื™ืขืก. ืžื™ืจ ืกืึทืœื•ื•ื“ ื‘ื™ื™ื“ืข ืคึผืจืึธื‘ืœืขืžืก ืื™ืŸ ืื™ื™ืŸ ืฆื•ื’ืึทื ื’ - ื ื™ืฆืŸ ื“ื™ ืงืึทืžืึทื ื“ื– ืœืกืึธืฃ ะธ ืฉื˜ืจืขื ื’. lsof ืจืฉื™ืžื•ืช ืึทืœืข ื˜ืขืงืข ื“ื™ืกืงืจื™ืคึผื˜ืึธืจืก ื’ืขื ื™ืฆื˜ ื“ื•ืจืš ื“ืขื ืคึผืจืึธืฆืขืก ืื•ืŸ ื–ื™ื™ืขืจ ืคึฟืึทืจื‘ื•ื ื“ืŸ ื˜ืขืงืขืก. ืื•ืŸ ืžื™ื˜ ืกื˜ืจืึทืกืข, ืื™ืจ ืงืขื ืขืŸ ื•ื ื˜ืขืจื–ื•ื›ืŸ ืึท ืฉื•ื™ืŸ ืคืœื™ืกื ื“ื™ืง ืคึผืจืึธืฆืขืก, ืึธื“ืขืจ ืึธื ื”ื™ื™ื‘ืŸ ืึท ืคึผืจืึธืฆืขืก ืื•ืŸ ื•ื ื˜ืขืจื–ื•ื›ืŸ ืขืก. ืกื˜ืจืึทืกืข ืคึผืจื™ื ืฅ ืึทืœืข ืกื™ืกื˜ืขื ืจื•ืคื˜ ืคื•ืŸ ื“ืขื ืคึผืจืึธืฆืขืก ื•ื•ืึธืก ืื™ื– ื™ื’ื–ืึทืžืึทื ื“ (ืื•ืŸ ื–ื™ื™ืŸ ืงื™ื ื“ ืคึผืจืึทืกืขืกืึทื–). ื“ื™ ืœืขืฆื˜ืข ืื™ื– ื–ื™ื™ืขืจ ื•ื•ื™ื›ื˜ื™ืง, ื•ื•ื™ื™ึทืœ ืขื˜ืง ืื™ื– ื ืึธืจ ื’ืขื ื•ืžืขืŸ ืึท ืขื ืœืขืš ืฆื•ื’ืึทื ื’.

ืžื™ืจ ืขืจืฉื˜ืขืจ ื’ืขื•ื•ื™ื™ื ื˜ ืกื˜ืจืึทืกืข ืฆื• ื•ื™ืกืคืึธืจืฉืŸ ื“ื™ ืขื˜ืง ืกืขืจื•ื•ืขืจ ืคึฟืึทืจ Kubernetes ื•ื•ืขืŸ ืขืก ืื™ื– ืงื™ื™ืŸ ืžืึทืกืข ืื•ื™ืฃ ื“ืขื ืงื ื•ื™ืœ. ืžื™ืจ ื’ืขื–ืขืŸ ืึทื– ื›ึผืžืขื˜ ืึทืœืข WAL ืจืขืงืึธืจื“ืก ื–ืขื ืขืŸ ื•ื•ืขื’ืŸ ื“ื™ ื–ืขืœื‘ืข ื’ืจื™ื™ืก: 2200-2400 ื‘ื™ื˜ืขืก. ื“ืขืจื™ื‘ืขืจ, ืื™ืŸ ื“ื™ ื‘ืึทืคึฟืขืœ ืื™ืŸ ื“ื™ ืึธื ื”ื™ื™ื‘ ืคื•ืŸ ื“ืขื ืคึผืึธืกื˜ืŸ, ืžื™ืจ ืกืคึผืขืฆื™ืคื™ืฆื™ืจื˜ ื“ืขื ืคึผืึทืจืึทืžืขื˜ืขืจ -bs=2300 (bs ืžื™ื˜ืœ ื“ื™ ื’ืจื™ื™ืก ืื™ืŸ ื‘ื™ื˜ืขืก ืคึฟืึทืจ ื™ืขื“ืขืจ ืคื™ืึธ ืคึผืึธื–ื™ืฆื™ืข). ื‘ืึทืžืขืจืงื•ื ื’ ืึทื– ื“ื™ ื’ืจื™ื™ืก ืคื•ืŸ ื“ื™ ืขื˜ืง ืคึผืึธื–ื™ืฆื™ืข ื“ืขืคึผืขื ื“ืก ืื•ื™ืฃ ื“ื™ ืขื˜ืง ื•ื•ืขืจืกื™ืข, ืคืึทืจืฉืคึผืจื™ื™ื˜ื•ื ื’, ืคึผืึทืจืึทืžืขื˜ืขืจ ื•ื•ืึทืœื•ืขืก, ืืื–"ื• ื•, ืื•ืŸ ืึทืคืขืงืฅ ื“ื™ Fdatasync ื’ืขื“ื•ื™ืขืจ. ืื•ื™ื‘ ืื™ืจ ื”ืึธื‘ืŸ ืึท ืขื ืœืขืš ืกืฆืขื ืึทืจ, ื•ื ื˜ืขืจื–ื•ื›ืŸ ื“ื™ื™ืŸ ืขื˜ืง ืคึผืจืึทืกืขืกืึทื– ืžื™ื˜ ืกื˜ืจืึทืกืข ืฆื• ื’ืขืคึฟื™ื ืขืŸ ื“ื™ ืคึผื™ื ื˜ืœืขืš ื ื•ืžืขืจืŸ.

ื“ืขืจื ืึธืš, ืฆื• ื‘ืึทืงื•ืžืขืŸ ืึท ื’ื•ื˜ืข ื’ืขื“ืึทื ืง ืคื•ืŸ ื•ื•ืึธืก ื“ื™ ืขื˜ืง ื˜ืขืงืข ืกื™ืกื˜ืขื ืื™ื– ื˜ืืŸ, ืžื™ืจ ืกื˜ืึทืจื˜ืขื“ ืขืก ืžื™ื˜ ืกื˜ืจืึทืกืข ืื•ืŸ ื“ื™ -ffttT ืึธืคึผืฆื™ืขืก. ืึทื–ื•ื™ ืžื™ืจ ื’ืขืคืจื•ื•ื•ื˜ ืฆื• ื•ื ื˜ืขืจื–ื•ื›ืŸ ื“ื™ ืงื™ื ื“ ืคึผืจืึทืกืขืกืึทื– ืื•ืŸ ืจืขืงืึธืจื“ื™ืจืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ื™ืขื“ืขืจ ืคื•ืŸ ื–ื™ื™ ืื™ืŸ ืึท ื‘ืึทื–ื•ื ื“ืขืจ ื˜ืขืงืข, ืื•ืŸ ืื•ื™ืš ื‘ืึทืงื•ืžืขืŸ ื“ื™ื˜ื™ื™ืœื“ ืจื™ืคึผืึธืจืฅ ื•ื•ืขื’ืŸ ื“ื™ ืึธื ื”ื™ื™ื‘ ืื•ืŸ ื’ืขื“ื•ื™ืขืจ ืคื•ืŸ ื™ืขื“ืขืจ ืกื™ืกื˜ืขื ืจื•ืคืŸ. ืžื™ืจ ื’ืขื•ื•ื™ื™ื ื˜ lsof ืฆื• ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ืื•ื ื“ื–ืขืจ ืึทื ืึทืœื™ืกื™ืก ืคื•ืŸ ื“ื™ ืกื˜ืจืึทืกืข ืจืขื–ื•ืœื˜ืึทื˜ ืื•ืŸ ื–ืขืŸ ื•ื•ืึธืก ื˜ืขืงืข ื“ื™ืกืงืจื™ืคึผื˜ืึธืจ ืื™ื– ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ ื•ื•ืึธืก ืฆื™ืœ. ืึทื–ื•ื™ ืžื™ื˜ ื“ื™ ื”ื™ืœืฃ ืคื•ืŸ ืกื˜ืจืึทืกืข, ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ ื’ืขื•ื•ื™ื–ืŸ ืื•ื™ื‘ืŸ ื–ืขื ืขืŸ ื‘ืืงื•ืžืขืŸ. ืกื™ื ื’ืงืจืึทื ืึทื–ื™ื™ืฉืึทืŸ ืฆื™ื™ื˜ ืกื˜ืึทื˜ื™ืกื˜ื™ืง ื‘ืืฉื˜ืขื˜ื™ืงื˜ ืึทื– wal_fsync_duration_seconds ืคึฟื•ืŸ ืขื˜ืง ืื™ื– ืงืึธื ืกื™ืกื˜ืขื ื˜ ืžื™ื˜ fdatasync ืงืึทืœืœืก ืžื™ื˜ WAL ื˜ืขืงืข ื“ื™ืกืงืจื™ืคึผื˜ืึธืจืก.

ืžื™ืจ ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ื“ื™ ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ ืคึฟืึทืจ ืคื™ืึธ ืื•ืŸ ืื•ื™ืกื“ืขืจื•ื•ื™ื™ืœื˜ ืึธืคึผืฆื™ืขืก ืคึฟืึทืจ ืื•ื ื“ื–ืขืจ ืฉืจื™ืคื˜ ืึทื–ื•ื™ ืึทื– ืคื™ืึธ ื•ื•ืึธืœื˜ ื“ื–ืฉืขื ืขืจื™ื™ื˜ ืึท ืžืึทืกืข ืขื ืœืขืš ืฆื• ืขื˜ืง. ืžื™ืจ ืื•ื™ืš ืึธืคึผื’ืขืฉื˜ืขืœื˜ ืกื™ืกื˜ืขื ืงืึทืœืœืก ืื•ืŸ ื–ื™ื™ืขืจ ื’ืขื“ื•ื™ืขืจ ื“ื•ืจืš ืœื•ื™ืคืŸ ืคื™ืึธ ืคึฟื•ืŸ ืกื˜ืจืึทืกืข, ืขื ืœืขืš ืฆื• ืขื˜ืง.

ืžื™ืจ ื”ืึธื‘ืŸ ืงืขืจืคืึทืœื™ ืื•ื™ืกื“ืขืจื•ื•ื™ื™ืœื˜ ื“ื™ ื•ื•ืขืจื˜ ืคื•ืŸ ื“ื™ - ื’ืจื™ื™ืก ืคึผืึทืจืึทืžืขื˜ืขืจ ืฆื• ืคืึธืจืฉื˜ืขืœืŸ ื“ื™ ื’ืื ืฆืข ื™ / ืึธ ืžืึทืกืข ืคื•ืŸ โ€‹โ€‹ืคื™ืึธ. ืื™ืŸ ืื•ื ื“ื–ืขืจ ืคืึทืœ, ื“ืึธืก ืื™ื– ื“ื™ ื’ืึทื ืฅ ื ื•ืžืขืจ ืคื•ืŸ ื‘ื™ื˜ืขืก ื’ืขืฉืจื™ื‘ืŸ ืฆื• ื“ื™ ืกื˜ืึธืจื™ื“ื–ืฉ. ืขืก ืื™ื– ื’ืขื•ื•ืขืŸ ื’ืœื™ื™ึทืš ืคึผืจืึทืคึผืึธืจืฉืึทื ืึทืœ ืฆื• ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ืฉืจื™ื™ึทื‘ืŸ (ืื•ืŸ ืคื“ืึทื˜ืึทืกื™ื ืง) ืกื™ืกื˜ืขื ืจื•ืคื˜. ืคึฟืึทืจ ืึท ื–ื™ื›ืขืจ ื•ื•ืขืจื˜ ืคื•ืŸ bs, ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ fdatasync ืจื•ืคื˜ = ื’ืจื™ื™ืก / ื‘ืก. ื•ื•ื™ื‘ืืœื“ ืžื™ืจ ื”ืื‘ืŸ ื–ื™ืš ืคืืจืื™ื ื˜ืขืจืขืกื™ืจื˜ ืžื™ื˜ ื“ืขื ืคืจืืฆืขื ื˜ื™ืœ, ื”ืื‘ืŸ ืžื™ืจ ื’ืขืžื•ื–ื˜ ื”ืื‘ืŸ ื’ืขื ื•ื’ ืžื•ืกื˜ืขืจืŸ ืฆื• ื–ื™ื™ืŸ ื–ื™ื›ืขืจ, ืื•ืŸ ืžื™ืจ ื”ืื‘ืŸ ืื•ื™ืกื’ืขืจืขื›ื ื˜ ืื– 10^4 ื•ื•ืืœื˜ ืื•ื ื– ื’ืขื ื•ื’ ื’ืขื•ื•ืขืŸ (ื“ืืก ืื™ื– 22 ืžื‘ื™ื™ื˜ืก). ืื•ื™ื‘ - ื’ืจื™ื™ืก ืื™ื– ืงืœืขื ืขืจืขืจ, โ€‹โ€‹ืึทื•ื˜ืœื™ื™ืขืจื– ืงืขืŸ ืคึผืึทืกื™ืจืŸ (ืœืžืฉืœ, ืขื˜ืœืขื›ืข ืคื“ืึทื˜ืึทืกื™ื ืง ืงืึทืœืœืก ื ืขืžืขืŸ ืžืขืจ ื•ื•ื™ ื’ืขื•ื•ื™ื™ื ื˜ืœืขืš ืื•ืŸ ื•ื•ื™ืจืงืŸ ื“ื™ 99 ืคึผืขืจืกืขื ื˜ื™ืœ).

ืคืจื•ื‘ื™ืจื˜ ื“ืึธืก ื–ื™ืš

ืžื™ืจ ื’ืขื•ื•ื™ื–ืŸ ืื™ืจ ื•ื•ื™ ืฆื• ื ื•ืฆืŸ ืคื™ืึธ ืื•ืŸ ื–ืขืŸ ืื•ื™ื‘ ื“ื™ ืกื˜ืึธืจื™ื“ื–ืฉ ืื™ื– ืฉื ืขืœ ื’ืขื ื•ื’ ืคึฟืึทืจ ืขื˜ืง ืฆื• ื“ื•ืจื›ืคื™ืจืŸ ื’ื•ื˜. ืื™ืฆื˜ ืื™ืจ ืงืขื ืขืŸ ืคึผืจื•ื‘ื™ืจืŸ ืขืก ืคึฟืึทืจ ื–ื™ืš ื ื™ืฆืŸ, ืœืžืฉืœ, ื•ื•ื™ืจื˜ื•ืึทืœ ืžืืฉื™ื ืขืŸ ืžื™ื˜ SSD ืกื˜ืึธืจื™ื“ื–ืฉ ืื™ืŸ IBM Cloud.

ืžืงื•ืจ: www.habr.com

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’