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

ื”ืขืœื

ืื™ืš ื‘ืึทืฉืœืึธืกืŸ ืฆื• ื˜ื™ื™ืœืŸ ืžื™ื™ืŸ ื’ืขืคึฟื™ื ืขืŸ - ื“ื™ ืคืจื•ื›ื˜ ืคื•ืŸ ื’ืขื“ืึทื ืง, ืคึผืจืึธืฆืขืก ืื•ืŸ ื˜ืขื•ืช.
ื“ื•ืจืš ืื•ืŸ ื’ืจื•ื™ืก: ื“ืึธืก ืื™ื– ื ื™ืฉื˜ ืึท ื’ืขืคึฟื™ื ืขืŸ, ืคื•ืŸ ืงื•ืจืก - ืึทืœืข ื“ืขื ื–ืึธืœ ื”ืึธื‘ืŸ ื’ืขื•ื•ืขืŸ ื‘ืืงืื ื˜ ืคึฟืึทืจ ืึท ืœืึทื ื’ ืฆื™ื™ึทื˜, ืฆื• ื“ื™ ื•ื•ืืก ื–ืขื ืขืŸ ื™ื ื•ื•ืึทืœื•ื•ื“ ืื™ืŸ ื’ืขื•ื•ืขื ื“ื˜ ืกื˜ืึทื˜ื™ืกื˜ื™ืฉ ื“ืึทื˜ืŸ ืคึผืจืึทืกืขืกื™ื ื’ ืื•ืŸ ืึทืคึผื˜ืึทืžืึทื–ื™ื™ืฉืึทืŸ ืคื•ืŸ ืงื™ื™ืŸ ืกื™ืกื˜ืขืžืขืŸ, ื ื™ื˜ ื“ืึทื•ื•ืงืข ืกืคึผืึทืกื™ืคื™ืงืœื™ ื“ื™ DBMS.
ืื•ืŸ: ื™ืึธ, ื–ื™ื™ ื•ื•ื™ืกืŸ, ื–ื™ื™ ืฉืจื™ื™ึทื‘ืŸ ื˜ืฉื™ืงืึทื•ื•ืข ืึทืจื˜ื™ืงืœืขืŸ ืื•ื™ืฃ ื–ื™ื™ืขืจ ืคืึธืจืฉื•ื ื’, ื‘ื™ื™ึทืฉืคึผื™ืœ (UPD.: ืื™ืŸ ื“ื™ ื‘ืึทืžืขืจืงื•ื ื’ืขืŸ ื–ื™ื™ ืื ื’ืขื•ื•ื™ื–ืŸ ืึท ื–ื™ื™ืขืจ ื˜ืฉื™ืงืึทื•ื•ืข ืคึผืจื•ื™ืขืงื˜: ottertune )
ืื•ื™ืฃ ื“ื™ ืื ื“ืขืจืข ื”ืึทื ื˜: ืึธืคืึทื ื“ ืื™ืš ื˜ืึธืŸ ื ื™ื˜ ื–ืขืŸ ืงื™ื™ืŸ ื•ื•ื™ื™ื“ืกืคึผืจืขื“ ื“ืขืจืžืึธื ืขืŸ ืึธื“ืขืจ ื“ื™ืกืขืžืึทื ื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ืขื ืฆื•ื’ืึทื ื’ ืื•ื™ืฃ ื“ืขืจ ืื™ื ื˜ืขืจื ืขืฅ ืฆื•ื•ื™ืฉืŸ IT ืกืคึผืขืฉืึทืœืึทืกืฅ, ื“ื‘ืึท.

ืึทื–ื•ื™, ืฆื• ื“ื™ ืคื•ื ื˜.

ืœืึธืžื™ืจ ื™ื‘ืขืจื ืขืžืขืŸ ืึทื– ืžื™ืจ ื”ืึธื‘ืŸ ืึท ืึทืจื‘ืขื˜: ืฆื• ืฉื˜ืขืœืŸ ืึท ื–ื™ื›ืขืจ ื“ื™ื ืกื˜ ืกื™ืกื˜ืขื ืฆื• ื“ื™ื ืขืŸ ืขื˜ืœืขื›ืข ืžื™ืŸ ืคื•ืŸ ืึทืจื‘ืขื˜.

ืขืก ืื™ื– ื‘ืืงืื ื˜ ื•ื•ืขื’ืŸ ื“ืขื ืึทืจื‘ืขื˜: ื•ื•ืึธืก ืขืก ืื™ื–, ื•ื•ื™ ื“ื™ ืงื•ื•ืึทืœื™ื˜ืขื˜ ืคื•ืŸ ื“ืขื ืึทืจื‘ืขื˜ ืื™ื– ื’ืขืžืืกื˜ืŸ, ืื•ืŸ ื•ื•ืึธืก ืื™ื– ื“ื™ ืงืจื™ื˜ืขืจื™ืึธืŸ ืคึฟืึทืจ ืžืขืกื˜ืŸ ื“ื™ ืงื•ื•ืึทืœื™ื˜ืขื˜.

ืœืึธืžื™ืจ ืื•ื™ืš ื™ื‘ืขืจื ืขืžืขืŸ ืึทื– ืขืก ืื™ื– ืžืขืจ ืึธื“ืขืจ ื•ื•ื™ื™ื ื™ืงืขืจ ื‘ืืงืื ื˜ ืื•ืŸ ืคืืจืฉื˜ืื ืขืŸ: ืคึผื•ื ืงื˜ ื•ื•ื™ ืึทืจื‘ืขื˜ ืื™ื– ื’ืขื˜ืืŸ ืื™ืŸ (ืึธื“ืขืจ ืžื™ื˜) ื“ืขื ื“ื™ื ืกื˜ ืกื™ืกื˜ืขื.

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

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

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

ื ื•. ื“ืึธืก ืื™ื– ื›ึผืžืขื˜ ืฉื˜ืขื ื“ื™ืง ื“ืขืจ ืคืึทืœ.

ื•ื•ืึธืก ืงืขื ืขืŸ ืื™ืจ ื˜ืึธืŸ ื“ืึธ?

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

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

ืึธื ื•ื•ืขื ื“ืŸ ืึท ืคึผืจืึธื‘ืข ืžืึทืกืข ืฆื• ืขืก, ื ื™ืฆืŸ ื“ืขื ื–ื™ื™ืขืจ ื’ืขืฆื™ื™ึทื’-ื ื•ืฅ ืžืึทืกืข ื’ืขื ืขืจืึทื˜ืึธืจ.
ืื•ืŸ ืงื•ืง ืื™ืŸ ื“ื™ ื•ื•ืขืจื˜ - ื“ืขืจ ืขื ื˜ืคืขืจ, ืึธื“ืขืจ ืึท ืžืขื˜ืจื™ืง ืคื•ืŸ ื“ื™ ืงื•ื•ืึทืœื™ื˜ืขื˜ ืคื•ืŸ ื“ื™ ืกื™ืกื˜ืขื.

ื“ืขืจ ืฆื•ื•ื™ื™ื˜ืขืจ ื’ืขื“ืึทื ืง ืงืขืŸ ื–ื™ื™ืŸ ื“ื™ ืžืกืงื ื ืึทื– ื“ืึธืก ืื™ื– ืึท ื–ื™ื™ืขืจ ืœืึทื ื’ ืฆื™ื™ึทื˜.

ื ื•, ื“ืึธืก ืื™ื–: ืื•ื™ื‘ ืขืก ื–ืขื ืขืŸ ืึท ืคึผืœืึทืฅ ืคื•ืŸ ื˜ื•ื ื™ื ื’ ืคึผืึทืจืึทืžืขื˜ืขืจืก, ืื•ื™ื‘ ื“ื™ ืจื™ื™ื ื“ื–ืฉืึทื– ืคื•ืŸ ื–ื™ื™ืขืจ ื•ื•ืึทืœื•ืขืก ืงืึทื•ื•ืขืจื“ ื–ืขื ืขืŸ ื’ืจื•ื™ืก, ืื•ื™ื‘ ื™ืขื“ืขืจ ื™ื—ื™ื“ ืžืึทืกืข ืคึผืจื•ื‘ื™ืจืŸ ื ืขืžื˜ ืึท ืคึผืœืึทืฅ ืคื•ืŸ ืฆื™ื™ื˜ ืฆื• ืคืึทืจืขื ื“ื™ืงืŸ, ื“ืขืžืึธืœื˜: ื™ืึธ, ืึทืœืข ื“ืขื ืงืขืŸ ื ืขืžืขืŸ ืึท ืึทื ืึทืงืกืขืคึผื˜ืึทื‘ืึทืœ ืกื•ืžืข ืคื•ืŸ ืฆื™ื™ื˜.

ื ื•, ื“ืึธ ืก ื•ื•ืึธืก ืื™ืจ ืงืขื ืขืŸ ืคึฟืึทืจืฉื˜ื™ื™ืŸ ืื•ืŸ ื’ืขื“ืขื ืงืขืŸ.

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

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

ื“ืึธืก ื”ื™ื™ืกื˜

ื–ืืœ ืื•ื ื“ื– ืึธื ื•ื•ื™ื™ึทื–ืŸ ื“ื™ ืกื™ืกื˜ืขื ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ื•ื•ืขืงื˜ืึธืจ ื•ื•ื™ ื“ื™ ื•ื•ื™ืกื ืฉืืคื˜ืœืขื›ืข ืฉื˜ื•ืจื›ืขืŸ ืื•ืคึฟืŸ, ืึธื“ืขืจ ื•ื•ื™ ืฆื• ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืึท ื“ืึทื˜ืึทื‘ื™ื™ืก ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืžื™ื˜ ื‘ืขื ื˜ืฉืžืึทืจืงืก ืื•ืŸ ืึทืŸ ืึทืคึผื˜ืึทืžืึทื–ื™ื™ืฉืึทืŸ ืึทืœื’ืขืจื™ื“ืึทืื•ื•ื• ื“ื™ ื•ื•ื™ืกื ืฉืืคื˜ืœืขื›ืข ืฉื˜ื•ืจื›ืขืŸ ืื•ืคึฟืŸ, ืึธื“ืขืจ ื•ื•ื™ ืฆื• ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืึท ื“ืึทื˜ืึทื‘ื™ื™ืก ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืžื™ื˜ ื‘ืขื ื˜ืฉืžืึทืจืงืก ืื•ืŸ ืึทืŸ ืึทืคึผื˜ืึทืžืึทื–ื™ื™ืฉืึทืŸ ืึทืœื’ืขืจื™ื“ืึทื; ื•ื•ืื• ื“ื™ ื•ื•ื™ืกื ืฉืืคื˜ืœืขื›ืข ืฉื˜ื•ืจื›ืขืŸ ืื•ืคึฟืŸ, ืึธื“ืขืจ ื•ื•ื™ ืฆื• ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืึท ื“ืึทื˜ืึทื‘ื™ื™ืก ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืžื™ื˜ ื‘ืขื ื˜ืฉืžืึทืจืงืก ืื•ืŸ ืึทืŸ ืึทืคึผื˜ืึทืžืึทื–ื™ื™ืฉืึทืŸ ืึทืœื’ืขืจื™ื“ืึทื - ื ื•ืžืขืจ ืคื•ืŸ ืกื™ืกื˜ืขื ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืคึผืึทืจืึทืžืขื˜ืขืจืก, ื•ื•ื™ ืคื™ืœืข ืคื•ืŸ โ€‹โ€‹ื“ื™ ืคึผืึทืจืึทืžืขื˜ืขืจืก ืขืก ื–ืขื ืขืŸ.

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

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

ืึธื•ืงื™ื™, ืึธื‘ืขืจ ื“ืึธ ืึท ืึธืจื’ืึทื ืึทื–ื™ื™ืฉืึทื ืึทืœ ืื•ืŸ ื’ืขื•ื•ืขื ื“ื˜ ืงืฉื™ื ืขืจื™ื™ื–ืึทื–: ื•ื•ืึธืก ืึทืœื’ืขืจื™ื“ืึทื ืฆื• ื ื•ืฆืŸ.

  1. ืื™ืŸ ื“ืขื ื–ื™ื ืขืŸ - ืึทื–ื•ื™ ืึทื– ืื™ืจ ืงืขื ืขืŸ ืงืึธื“ ื•ื•ื™ื™ื ื™ืงืขืจ ื“ื•ืจืš ื”ืึทื ื˜.
  2. ืื•ืŸ ืคึฟืึทืจ ืขืก ืฆื• ืึทืจื‘ืขื˜ืŸ, ื“.ื”. ื’ืขืคื•ื ืขืŸ ื“ื™ ืขืงืกื˜ืจืขื (ืื•ื™ื‘ ืขืก ืื™ื– ืื™ื™ืŸ), ื ื•, ืœืคึผื—ื•ืช ืคืึทืกื˜ืขืจ ื•ื•ื™ ืงืึธื•ืึธืจื“ืึทื ืึทื˜ ืึทืจืึธืคึผื’ืึทื ื’.

ื“ืขืจ ืขืจืฉื˜ืขืจ ืคื•ื ื˜ ื”ื™ื ืฅ ืึทื– ืžื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืงื•ืงืŸ ืฆื• ืขื˜ืœืขื›ืข ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ ืื™ืŸ ื•ื•ืึธืก ืึทื–ืึท ืึทืœื’ืขืจื™ื“ืึทืžื– ื”ืึธื‘ืŸ ืฉื•ื™ืŸ ื™ืžืคึผืœืึทืžืขื ืึทื“, ืื•ืŸ ื–ืขื ืขืŸ, ืื™ืŸ ืขื˜ืœืขื›ืข ืคืึธืจืขื, ื’ืจื™ื™ื˜ ืคึฟืึทืจ ื ื•ืฆืŸ ืื™ืŸ ืงืึธื“.
ื ื•, ืื™ืš ื•ื•ื™ืกืŸ python ะธ cran-r

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

ืื•ืŸ ื•ื•ืึธืก ื–ื™ื™ ื’ืขื‘ืŸ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื ื•ืฆื™ืง ื–ื™ื™ึทื˜ ื™ืคืขืงืก - ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืึธื“ืขืจ ื’ืœื™ื™ึทืš ืคึฟื•ืŸ ื“ื™ ืึทืœื’ืขืจื™ื“ืึทื ื–ื™ืš.

ืึธื“ืขืจ ื–ื™ื™ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื‘ืืงื•ืžืขืŸ ืคื•ืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืคื•ืŸ ื“ื™ ืึทืœื’ืขืจื™ื“ืึทื.

ื ืคึผืœืึทืฅ ื“ืขืคึผืขื ื“ืก ืื•ื™ืฃ ื“ื™ ืึทืจื™ื™ึทื ืฉืจื™ื™ึทื‘ ื˜ื ืึธื™ื.

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

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

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

ืึธืจื™ื’ื™ื ืขืœ:

  1. ื–ืืœ ืขืก ื–ื™ื™ืŸ, ื•ื•ื™ ืึท ื“ื™ื ืกื˜ ืกื™ืกื˜ืขื: oracle xe 18c
  2. ืœืึธื–ืŸ ืขืก ื“ื™ื ืขืŸ ื˜ืจืึทื ืกืึทืงื˜ื™ืึธื ืึทืœ ื˜ืขื˜ื™ืงื™ื™ื˜ ืื•ืŸ ื“ืขืจ ืฆื™ืœ: ืฆื• ื‘ืึทืงื•ืžืขืŸ ื“ื™ ื”ืขื›ืกื˜ืŸ ืžืขื’ืœืขืš ื˜ืจื•ืคึผื•ื˜ ืคื•ืŸ ื“ื™ ืกื•ื‘ื“ืึทื˜ืึทื‘ื™ื™ืก ืื™ืŸ ื˜ืจืึทื ื–ืึทืงืฉืึทื ื– / ืกืขืง.
  3. ื˜ืจืึทื ื–ืึทืงืฉืึทื ื– ืงืขื ืขืŸ ื–ื™ื™ืŸ ื–ื™ื™ืขืจ ืึทื ื“ืขืจืฉ ืื™ืŸ ื“ื™ ื ืึทื˜ื•ืจ ืคื•ืŸ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ ืื•ืŸ ื“ื™ ืงืึธื ื˜ืขืงืกื˜ ืคื•ืŸ ืึทืจื‘ืขื˜.
    ื–ืืœ ืก ืฉื˜ื™ืžืขืŸ ืึทื– ื“ืึธืก ื–ืขื ืขืŸ ื˜ืจืึทื ื–ืึทืงืฉืึทื ื– ื•ื•ืึธืก ื˜ืึธืŸ ื ื™ื˜ ืคึผืจืึธืฆืขืก ืึท ื’ืจื•ื™ืก ืกื•ืžืข ืคื•ืŸ โ€‹โ€‹ื˜ืึทื‘ื•ืœืึทืจ ื“ืึทื˜ืŸ.
    ืื™ืŸ ื“ืขื ื–ื™ื ืขืŸ ืึทื– ื–ื™ื™ ื˜ืึธืŸ ื ื™ื˜ ื“ื–ืฉืขื ืขืจื™ื™ื˜ ืžืขืจ ื•ืคืžืึทื›ืŸ ื“ืึทื˜ืŸ ื•ื•ื™ ืจืขื“ืึธ ืื•ืŸ ื˜ืึธืŸ ื ื™ื˜ ืคึผืจืึธืฆืขืก ื’ืจื•ื™ืก ืคึผืขืจืกืขื ื˜ื™ื“ื–ืฉื™ื– ืคื•ืŸ ืจืึธื•ื– ืื•ืŸ ื’ืจื•ื™ืก ื˜ื™ืฉืŸ.

ื“ืืก ื–ืขื ืขืŸ ื˜ืจืึทื ื–ืึทืงืฉืึทื ื– ื•ื•ืึธืก ื˜ื•ื™ืฉืŸ ืื™ื™ืŸ ืจื•ื“ืขืจืŸ ืื™ืŸ ืึท ืžืขืจ ืึธื“ืขืจ ื•ื•ื™ื™ื ื™ืงืขืจ ื’ืจื•ื™ืก ื˜ื™ืฉ, ืžื™ื˜ ืึท ืงืœื™ื™ืŸ ื ื•ืžืขืจ ืคื•ืŸ ื™ื ื“ืขืงืกื™ื– ืื•ื™ืฃ ื“ืขื ื˜ื™ืฉ.

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

ืึธืคึผืœื™ื™ืงืขื ื•ื ื’ - ืื•ื™ื‘ ืžื™ืจ ืจืขื“ืŸ ืกืคึผืึทืกื™ืคื™ืงืœื™ ื•ื•ืขื’ืŸ ื“ื™ ืกื•ื‘ื“ื‘ ืกืขื˜ื˜ื™ื ื’ืก.

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

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

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

  1. ื–ืืœ ืื•ื ื“ื– ื™ื‘ืขืจื ืขืžืขืŸ, ืคึฟืึทืจ ื“ืขืคื™ื ื™ื˜ืขื ืขืกืก, ืึทื– 100% ืคื•ืŸ ื“ื™ SQL ืงืึทืžืึทื ื“ื– ื“ืขืจืœืื ื’ื˜ ืฆื• ื“ื™ ื“ืึทื˜ืึทื‘ื™ื™ืก ื–ืขื ืขืŸ DML ืงืึทืžืึทื ื“ื–.
    ืœืึธื–ืŸ ื“ื™ ืงืขืจืึทืงื˜ืขืจื™ืกื˜ื™ืงืก ืคื•ืŸ ื‘ืึทื ื™ืฆืขืจ ืึทืจื‘ืขื˜ ืžื™ื˜ ื“ื™ ืกื•ื‘ื“ืึทื˜ืึทื‘ื™ื™ืก ื–ื™ื™ืŸ ื“ื™ ื–ืขืœื‘ืข ืื™ืŸ ื˜ืขืกืฅ.
    ื ื™ื™ืžืœื™: ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ืกืงืœ ืกืขืฉืึทื ื–, ื˜ืึทื‘ื•ืœืึทืจ ื“ืึทื˜ืŸ, ื•ื•ื™ ืกืงืœ ืกืขืฉืึทื ื– ืึทืจื‘ืขื˜ ืžื™ื˜ ื–ื™ื™.
  2. ืกื•ื‘ื“ ืึทืจื‘ืขื˜ ืื™ืŸ FORCE LOGGING, ARCHIVELOG ืžืึธื“ืก. ืคืœืึทืฉื‘ืึทืงืง-ื“ื™ื™ื˜ืึทื‘ื™ื™ืก ืžืึธื“ืข ืื™ื– ืื•ื™ืกื’ืขื“ืจื™ื™ื˜ ืึทื•ื•ืขืง ืื•ื™ืฃ ื“ื™ ืกื•ื‘ื“ ืžื“ืจื’ื”.
  3. ืจืขื“ืึธ ืœืึธื’ืก: ืœื™ื’ืŸ ืื™ืŸ ืึท ื‘ืึทื–ื•ื ื“ืขืจ ื˜ืขืงืข ืกื™ืกื˜ืขื, ืื•ื™ืฃ ืึท ื‘ืึทื–ื•ื ื“ืขืจ "ื“ื™ืกืง";
    ื“ื™ ืจืขืฉื˜ ืคื•ืŸ ื“ื™ ื’ืฉืžื™ื•ืช ืงืึธืžืคึผืึธื ืขื ื˜ ืคื•ืŸ ื“ื™ ื“ืึทื˜ืึทื‘ื™ื™ืก: ืื™ืŸ ืืŸ ืื ื“ืขืจ, ื‘ืึทื–ื•ื ื“ืขืจ ื˜ืขืงืข ืกื™ืกื˜ืขื, ืื•ื™ืฃ ืึท ื‘ืึทื–ื•ื ื“ืขืจ "ื“ื™ืกืง":

ืžืขืจ ื“ืขื˜ืึทื™ืœืก ื•ื•ืขื’ืŸ ื“ืขื ื’ืฉืžื™ื•ืช ืžื™ื˜ืœ. ืœืึทื‘ืึธืจืึทื˜ืึธืจื™ืข ื“ืึทื˜ืึทื‘ื™ื™ืก ืงืึทืžืคึผืึธื•ื ืึทื ืฅ

SQL> select status||' '||name from v$controlfile;
 /db/u14/oradata/XE/control01.ctl
SQL> select GROUP#||' '||MEMBER from v$logfile;
1 /db/u02/oradata/XE/redo01_01.log
2 /db/u02/oradata/XE/redo02_01.log
SQL> select FILE_ID||' '||TABLESPACE_NAME||' '||round(BYTES/1024/1024,2)||' '||FILE_NAME as col from dba_data_files;
4 UNDOTBS1 2208 /db/u14/oradata/XE/undotbs1_01.dbf
2 SLOB 128 /db/u14/oradata/XE/slob01.dbf
7 USERS 5 /db/u14/oradata/XE/users01.dbf
1 SYSTEM 860 /db/u14/oradata/XE/system01.dbf
3 SYSAUX 550 /db/u14/oradata/XE/sysaux01.dbf
5 MONITOR 128 /db/u14/oradata/XE/monitor.dbf
SQL> !cat /proc/mounts | egrep "/db/u[0-2]"
/dev/vda1 /db/u14 ext4 rw,noatime,nodiratime,data=ordered 0 0
/dev/mapper/vgsys-ora_redo /db/u02 xfs rw,noatime,nodiratime,attr2,nobarrier,inode64,logbsize=256k,noquota 0 0

ื˜ื›ื™ืœืขืก, ืื•ื ื˜ืขืจ ื“ื™ ืžืึทืกืข ื˜ื ืึธื™ื, ืื™ืš ื’ืขื•ื•ืืœื˜ ืฆื• ื ื•ืฆืŸ ื˜ืจืึทื ืกืึทืงื˜ื™ืึธืŸ ืกื•ื‘ื“ SLOB-ื ื•ืฅ
ืขืก ื”ืื˜ ืึทื–ืึท ืึท ื•ื•ื•ื ื“ืขืจืœืขืš ืฉื˜ืจื™ืš, ืื™ืš ื•ื•ืขื˜ ืฆื™ื˜ื™ืจืŸ ื“ืขื ืžื—ื‘ืจ:

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

ื“ื™ ื“ืขืงืœืึทืจืึทืฆื™ืข: ืงืึธืจืึทืกืคึผืึทื ื“ื–, ืขืก ืื™ื–.
ืขืก ืื™ื– ื‘ืึทืงื•ื•ืขื ืฆื• ืจืขื’ื•ืœื™ืจืŸ ื“ื™ ื’ืจืึทื“ ืคื•ืŸ ืคึผืึทืจืึทืœืขืœื™ืกื ืคื•ืŸ ืงืœ ืกืขืฉืึทื ื–, ื“ืึธืก ืื™ื– ื“ืขืจ ืฉืœื™ืกืœ -t ืงืึทื˜ืขืจ ื“ื™ ื ื•ืฆืŸ runit.sh ืคื•ืŸ SLOB
ื“ืขืจ ืคึผืจืึธืฆืขื ื˜ ืคื•ืŸ DML ืงืึทืžืึทื ื“ื– ืื™ื– ืจืขื’ื™ืึทืœื™ื™ื˜ืึทื“, ืื™ืŸ ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ื˜ืขืงืกื˜ ืึทืจื˜ื™ืงืœืขืŸ ื•ื•ืึธืก ื–ืขื ืขืŸ ื’ืขืฉื™ืงื˜ ืฆื• ื“ื™ ืกื•ื‘ื“, ื™ืขื“ืขืจ ื˜ืขืงืกื˜ ืกืขืกื™ืข, ืคึผืึทืจืึทืžืขื˜ืขืจ UPDATE_PCT
ืกืขืคึผืขืจืึทื˜ืœื™ ืื•ืŸ ื–ื™ื™ืขืจ ื‘ืึทืงื•ื•ืขื: SLOB ื–ื™ืš, ืื™ื™ื“ืขืจ ืื•ืŸ ื ืึธืš ื“ื™ ืžืึทืกืข ืกืขืกื™ืข - ืคึผืจื™ืคึผืขืจื– ืึท ืกื˜ืึทืฅืคึผืึทืง, ืึธื“ืขืจ awr-snapshots (ื•ื•ืึธืก ืื™ื– ื‘ืึทืฉื˜ื™ืžื˜ ืฆื• ื–ื™ื™ืŸ ืฆื•ื’ืขื’ืจื™ื™ื˜).

ืึธื‘ืขืจ, ืขืก ืคืืจืงืขืจื˜ ืื•ื™ืก ืึทื– SLOB ืฉื˜ื™ืฆื˜ ื ื™ืฉื˜ ืกืงืœ ืกืขืฉืึทื ื– ืžื™ื˜ ืึท ื’ืขื“ื•ื™ืขืจ ืคื•ืŸ ื•ื•ื™ื™ื ื™ืงืขืจ ื•ื•ื™ 30 ืกืขืงื•ื ื“ืขืก.
ื“ืขืจื™ื‘ืข ืจ ื”ื ื‘ ืื™ ืš ืฆื•ืขืจืฉ ื˜ ื’ืขืงืื“ ื˜ ืžืฒ ืŸ ืืฒื’ืขื ืข , ืืจื‘ืขื˜ืขืจึพืคื•ื™ืขืจื™ืฉ ืข ื•ื•ืขืจืกื™ืข , ืคื• ืŸ ื“ืข ืจ ืœืื“ืข ืจ ืื• ืŸ ื“ื ืŸ ืื™ ื– ื’ืขื‘ืœื™ื‘ ืŸ ืื™ ืŸ ืืคืขืจืืฆื™ืข .

ืœืึธื–ืŸ ืžื™ืจ ื“ืขืจืงืœืขืจืŸ ื•ื•ืึธืก ื“ื™ ืœืึธื•ื“ืขืจ ื˜ื•ื˜ ืื•ืŸ ื•ื•ื™ ืขืก ื˜ื•ื˜ ืขืก, ืคึฟืึทืจ ืงืœืขืจื™ื˜ื™.
ื‘ื™ื™ืกื™ืงืœื™, ื“ื™ ืœืึธื•ื“ืขืจ ืงื•ืงื˜ ื•ื•ื™ ื“ืึธืก:

ืึทืจื‘ืขื˜ืขืจ ืงืึธื“

function dotx()
{
local v_period="$2"
[ -z "v_period" ] && v_period="0"
source "/home/oracle/testingredotracะต/config.conf"

$ORACLE_HOME/bin/sqlplus -S system/${v_system_pwd} << __EOF__
whenever sqlerror exit failure
set verify off
set echo off
set feedback off

define wnum="$1"
define period="$v_period"
set appinfo worker_&&wnum

declare
 v_upto number;
 v_key  number;
 v_tots number;
 v_cts  number;
begin
 select max(col1) into v_upto from system.testtab_&&wnum;
 SELECT (( SYSDATE - DATE '1970-01-01' ) * 86400 ) into v_cts FROM DUAL;
 v_tots := &&period + v_cts;
 while v_cts <= v_tots
 loop
  v_key:=abs(mod(dbms_random.random,v_upto));
  if v_key=0 then
   v_key:=1;
  end if;
  update system.testtab_&&wnum t
  set t.object_name=translate(dbms_random.string('a', 120), 'abcXYZ', '158249')
  where t.col1=v_key
  ;
  commit;
  SELECT (( SYSDATE - DATE '1970-01-01' ) * 86400 ) into v_cts FROM DUAL;
 end loop;
end;
/

exit
__EOF__
}
export -f dotx

ื•ื•ืึธืจืงืขืจืก ื–ืขื ืขืŸ ืœืึธื ื˜ืฉื˜ ื“ืขื ื•ื•ืขื’:

ืœื•ื™ืคื ื“ื™ืงืข ืืจื‘ืขื˜ืขืจ

echo "starting test, duration: ${TEST_DURATION}" >> "$v_logfile"
for((i=1;i<="$SQLSESS_COUNT";i++))
do
 echo "sql-session: ${i}" >> "$v_logfile"
 dotx "$i" "${TEST_DURATION}" &
done
echo "waiting..." >> "$v_logfile"
wait

ืื•ืŸ ื˜ื™ืฉืŸ ืคึฟืึทืจ ื˜ื•ืขืจืก ื–ืขื ืขืŸ ืฆื•ื’ืขื’ืจื™ื™ื˜ ื•ื•ื™ ื“ืึธืก:

ืฉืืคืŸ ื˜ืึทื‘ืœืขืก

function createtable() {
source "/home/oracle/testingredotracะต/config.conf"
$ORACLE_HOME/bin/sqlplus -S system/${v_system_pwd} << __EOF__
whenever sqlerror continue
set verify off
set echo off
set feedback off

define wnum="$1"
define ts_name="slob"

begin
 execute immediate 'drop table system.testtab_&&wnum';
exception when others then null;
end;
/

create table system.testtab_&&wnum tablespace &&ts_name as
select rownum as col1, t.*
from sys.dba_objects t
where rownum<1000
;
create index testtab_&&wnum._idx on system.testtab_&&wnum (col1);
--alter table system.testtab_&&wnum nologging;
--alter index system.testtab_&&wnum._idx nologging;
exit
__EOF__
}
export -f createtable

seq 1 1 "$SQLSESS_COUNT" | xargs -n 1 -P 4 -I {} -t bash -c "createtable "{}"" | tee -a "$v_logfile"
echo "createtable done" >> "$v_logfile"

ื™ืขื ืข. ืคึฟืึทืจ ื™ืขื“ืขืจ ืึทืจื‘ืขื˜ืขืจ (ืคึผืจืึทืงื˜ืึทืงืœื™: ืึท ื‘ืึทื–ื•ื ื“ืขืจ ืกืงืœ ืกืขืกื™ืข ืื™ืŸ ื“ื™ ื“ื‘) ืื™ื– ื‘ืืฉืืคืŸ ืึท ื‘ืึทื–ื•ื ื“ืขืจ ื˜ื™ืฉ, ืžื™ื˜ ื•ื•ืึธืก ื“ืขืจ ืึทืจื‘ืขื˜ืขืจ ืึทืจื‘ืขื˜.

ื“ืึธืก ื™ื ืฉื•ืจื– ื“ืขืจ ืึทื•ื•ืขืง ืคื•ืŸ ื˜ืจืึทื ืกืึทืงื˜ื™ืึธื ืึทืœ ืœืึทืงืก ืฆื•ื•ื™ืฉืŸ ืึทืจื‘ืขื˜ืขืจ ืกืขืฉืึทื ื–.
ื™ืขื“ืขืจ ืืจื‘ืขื˜ืขืจ: ื˜ื•ื˜ ื“ื™ ื–ืขืœื‘ืข ื–ืืš, ืžื™ื˜ ื–ื™ื™ืŸ ืื™ื™ื’ืขื ืขื ื˜ื™ืฉ, ื“ื™ ื˜ื™ืฉืŸ ื–ืขื ืขืŸ ืืœืข ื“ื™ ื–ืขืœื‘ืข.
ืืœ ืข ืืจื‘ืขื˜ืข ืจ ืคื™ืจ ืŸ ืืจื‘ืขื˜ ืŸ ืื™ ืŸ ื“ืข ืจ ื–ืขืœื‘ืข ืจ ืฆืฒื˜ .
ื“ืขืจืฆื•, ืคึฟืึทืจ ืึท ืœืึทื ื’ ื’ืขื ื•ื’ ืฆื™ื™ึทื˜ ืึทื–ื•ื™ ืึทื–, ืœืžืฉืœ, ืึท ืงืœืึธืฅ ื‘ืึทืฉื˜ื™ืžืขืŸ ื•ื•ืึธืœื˜ ื‘ืืฉื˜ื™ืžื˜ ืคึผืึทืกื™ืจืŸ, ืื•ืŸ ืžืขืจ ื•ื•ื™ ืึทืžืึธืœ.
ื ื•, ืึทืงืึธืจื“ื™ื ื’ืœื™, ืคึฟืึทืจื‘ื•ื ื“ืŸ ืงืึธืก ืื•ืŸ ื™ืคืขืงืฅ ืื•ื™ืคื’ืขืฉื˜ืื ืขืŸ.
ืื™ืŸ ืžื™ื™ืŸ ืคืึทืœ, ืื™ืš ืงืึทื ืคื™ื’ื™ืขืจื“ ื“ื™ ื’ืขื“ื•ื™ืขืจ ืคื•ืŸ ื“ื™ ื˜ื•ืขืจืก 'ืึทืจื‘ืขื˜ ืื™ืŸ 8 ืžื™ื ื•ื˜.

ื ืฉื˜ื™ืง ืคื•ืŸ ืึท ืกื˜ืึทืฅืคึผืึทืง ื‘ืึทืจื™ื›ื˜ ื“ื™ืกืงืจื™ื™ื‘ื™ื ื’ ื“ื™ ืึธืคึผืขืจืึทืฆื™ืข ืคื•ืŸ โ€‹โ€‹ื“ื™ ืกื•ื‘ื“ ืื•ื ื˜ืขืจ ืžืึทืกืข

Database    DB Id    Instance     Inst Num  Startup Time   Release     RAC
~~~~~~~~ ----------- ------------ -------- --------------- ----------- ---
          2929910313 XE                  1 07-Sep-20 23:12 18.0.0.0.0  NO

Host Name             Platform                CPUs Cores Sockets   Memory (G)
~~~~ ---------------- ---------------------- ----- ----- ------- ------------
     billing.izhevsk1 Linux x86 64-bit           2     2       1         15.6

Snapshot       Snap Id     Snap Time      Sessions Curs/Sess Comment
~~~~~~~~    ---------- ------------------ -------- --------- ------------------
Begin Snap:       1630 07-Sep-20 23:12:27       55        .7
  End Snap:       1631 07-Sep-20 23:20:29       62        .6
   Elapsed:       8.03 (mins) Av Act Sess:       8.4
   DB time:      67.31 (mins)      DB CPU:      15.01 (mins)

Cache Sizes            Begin        End
~~~~~~~~~~~       ---------- ----------
    Buffer Cache:     1,392M              Std Block Size:         8K
     Shared Pool:       288M                  Log Buffer:   103,424K

Load Profile              Per Second    Per Transaction    Per Exec    Per Call
~~~~~~~~~~~~      ------------------  ----------------- ----------- -----------
      DB time(s):                8.4                0.0        0.00        0.20
       DB CPU(s):                1.9                0.0        0.00        0.04
       Redo size:        7,685,765.6              978.4
   Logical reads:           60,447.0                7.7
   Block changes:           47,167.3                6.0
  Physical reads:                8.3                0.0
 Physical writes:              253.4                0.0
      User calls:               42.6                0.0
          Parses:               23.2                0.0
     Hard parses:                1.2                0.0
W/A MB processed:                1.0                0.0
          Logons:                0.5                0.0
        Executes:           15,756.5                2.0
       Rollbacks:                0.0                0.0
    Transactions:            7,855.1

ืื•ืžื’ืขืงืขืจื˜ ืฆื• ื“ืขืจ ืœืึทื‘ืึธืจืึทื˜ืึธืจื™ืข ืึทืจื‘ืขื˜.
ืžื™ืจ ื•ื•ืขืœืŸ, ืื ื“ืขืจืข ื’ืœื™ื™ืš, ื‘ื™ื™ึทื˜ืŸ ื“ื™ ื•ื•ืึทืœื•ืขืก ืคื•ืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ืคึผืึทืจืึทืžืขื˜ืขืจืก ืคื•ืŸ ื“ื™ ืœืึทื‘ืึธืจืึทื˜ืึธืจื™ืข ืกื•ื‘ื“ืึทื˜ืึทื‘ื™ื™ืก:

  1. ื’ืจื™ื™ืก ืคื•ืŸ ื“ื™ื™ื˜ืึทื‘ื™ื™ืก ืงืœืึธืฅ ื’ืจื•ืคึผืขืก. ื•ื•ืขืจื˜ ืงื™ื™ื˜: [32, 1024] ืžื‘;
  2. ื ื•ืžืขืจ ืคื•ืŸ ื–ืฉื•ืจื ืึทืœ ื’ืจื•ืคึผืขืก ืื™ืŸ ื“ื™ ื“ืึทื˜ืึทื‘ื™ื™ืก. ื•ื•ืขืจื˜ ืงื™ื™ื˜: [2,32];
  3. log_archive_max_processes ื•ื•ืขืจื˜ ืงื™ื™ื˜: [1,8];
  4. commit_logging ืฆื•ื•ื™ื™ ื•ื•ืึทืœื•ืขืก ื–ืขื ืขืŸ ืขืจืœื•ื™ื‘ื˜: batch|immediate;
  5. commit_wait ืฆื•ื•ื™ื™ ื•ื•ืึทืœื•ืขืก ื–ืขื ืขืŸ ืขืจืœื•ื™ื‘ื˜: wait|nowait;
  6. log_buffer ื•ื•ืขืจื˜ ืงื™ื™ื˜: [2,128] ืžืขื’ืื‘ื™ื™ื˜ืŸ.
  7. log_checkpoint_timeout ื•ื•ืขืจื˜ ืงื™ื™ื˜: [60,1200] ืกืขืงื•ื ื“ืขืก
  8. db_writer_processes ื•ื•ืขืจื˜ ืงื™ื™ื˜: [1,4]
  9. undo_retention ื•ื•ืขืจื˜ ืงื™ื™ื˜: [30;300] ืกืขืงื•ื ื“ืขืก
  10. transactions_per_rollback_segment ื•ื•ืขืจื˜ ืงื™ื™ื˜: [1,8]
  11. disk_asynch_io ืฆื•ื•ื™ื™ ื•ื•ืึทืœื•ืขืก ื–ืขื ืขืŸ ืขืจืœื•ื™ื‘ื˜: true|false;
  12. filesystemio_options ื“ื™ ืคืืœื’ืขื ื“ืข ื•ื•ืึทืœื•ืขืก ื–ืขื ืขืŸ ืขืจืœื•ื™ื‘ื˜: none|setall|directIO|asynch;
  13. db_block_checking ื“ื™ ืคืืœื’ืขื ื“ืข ื•ื•ืึทืœื•ืขืก ื–ืขื ืขืŸ ืขืจืœื•ื™ื‘ื˜: OFF|LOW|MEDIUM|FULL;
  14. db_block_checksum ื“ื™ ืคืืœื’ืขื ื“ืข ื•ื•ืึทืœื•ืขืก ื–ืขื ืขืŸ ืขืจืœื•ื™ื‘ื˜: OFF|TYPICAL|FULL;

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

ืึธื‘ืขืจ.

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

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

ืึทื–ื•ื™, ืื™ืฆื˜ ื•ื•ืขื’ืŸ ื“ื™ ืงืึธื“.
ืื™ืš ื’ืขืจืขื“ื˜ ืื•ื™ื‘ืŸ ื•ื•ืขื’ืŸ cran-r, ื“"ื”: ืึทืœืข ืžืึทื ื™ืคึผื™ืึทืœื™ื™ืฉืึทื ื– ืžื™ื˜ ื“ื™ ืงืึทืกื˜ืึทืžื™ื™ื–ื“ ืกื™ืกื˜ืขื ื–ืขื ืขืŸ ืึธืจืงืขืกื˜ืจื™ื™ื˜ื™ื“ ืื™ืŸ ื“ื™ ืคืึธืจืขื ืคื•ืŸ ืึท ืจ ืฉืจื™ืคื˜.

ื“ื™ ืคืึทืงื˜ื™ืฉ ืึทืจื‘ืขื˜, ืึทื ืึทืœื™ืกื™ืก, ืกืขืœืขืงืฆื™ืข ื“ื•ืจืš ืžืขื˜ืจื™ืง ื•ื•ืขืจื˜, ืกื™ืกื˜ืขื ืฉื˜ืึทื˜ ื•ื•ืขืงื˜ืึธืจืก: ื“ืึธืก ืื™ื– ืึท ืคึผืขืงืœ GA (ื“ื™ ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ)
ื“ืขืจ ืคึผืขืงืœ, ืื™ืŸ ื“ืขื ืคืึทืœ, ืื™ื– ื ื™ืฉื˜ ื–ื™ื™ืขืจ ืคึผืึทืกื™ืง, ืื™ืŸ ื“ืขื ื–ื™ื ืขืŸ ืึทื– ืขืก ื™ืงืกืคึผืขืงืฅ ื•ื•ืขืงื˜ืึธืจืก (ื˜ืฉืจืึธืžืึธืกืึธื•ืžื–, ืื•ื™ื‘ ืื™ืŸ ื˜ืขืจืžื™ื ืขืŸ ืคื•ืŸ ื“ื™ ืคึผืขืงืœ) ืฆื• ื–ื™ื™ืŸ ืกืคึผืขืกื™ืคื™ืขื“ ืื™ืŸ ื“ื™ ืคืึธืจืขื ืคื•ืŸ ืกื˜ืจื™ื ื’ืก ืคื•ืŸ ื ื•ืžืขืจืŸ ืžื™ื˜ ืึท ืคืจืึทืงืฉืึทื ืึทืœ ื˜ื™ื™ืœ.

ืื•ืŸ ืžื™ื™ืŸ ื•ื•ืขืงื˜ืึธืจ, ืคึฟื•ืŸ ื“ื™ ื•ื•ืึทืœื•ืขืก ืคื•ืŸ ื“ื™ ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ืคึผืึทืจืึทืžืขื˜ืขืจืก: ื“ืึธืก ื–ืขื ืขืŸ 14 ืงื•ื•ืึทื ื˜ืึทื˜ื™ื– - ื™ื ื˜ืึทื“ื–ืฉืขืจื– ืื•ืŸ ืฉื˜ืจื™ืงืœ ื•ื•ืึทืœื•ืขืก.

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

ืื–ื•ื™, ืื™ืŸ ื“ื™ ืกื•ืฃ, ื“ื™ ื”ื•ื™ืคึผื˜ ืฉื˜ื™ืง ืคื•ืŸ ื“ื™ R ืฉืจื™ืคื˜ ืงื•ืงื˜ ื•ื•ื™ ื“ืึธืก:

ืจื•ืคืŸ GA :: ื’ืึท

cat( "", file=v_logfile, sep="n", append=F)

pSize = 10
elitism_value=1
pmutation_coef=0.8
pcrossover_coef=0.1
iterations=50

gam=GA::ga(type="real-valued", fitness=evaluate,
lower=c(32,2, 1,1,1,2,60,1,30,1,0,0, 0,0), upper=c(1024,32, 8,10,10,128,800,4,300,8,10,40, 40,30),
popSize=pSize,
pcrossover = pcrossover_coef,
pmutation = pmutation_coef,
maxiter=iterations,
run=4,
keepBest=T)
cat( "GA-session is done" , file=v_logfile, sep="n", append=T)
gam@solution

ื“ืึธ, ืžื™ื˜ ื“ืขืจ ื”ื™ืœืฃ lower ะธ upper ืกื•ื‘ืจื•ื˜ื™ื ืข ืึทื˜ืจื™ื‘ื™ื•ืฅ ga ื™ืกืขื ืฉืึทืœื™, ืึท ื’ืขื’ื ื˜ ืคื•ืŸ ื“ืขืจ ื–ื•ื›ืŸ ืคึผืœืึทืฅ ืื™ื– ืกืคึผืขืกื™ืคื™ืขื“, ืื™ืŸ ื•ื•ืึธืก ืึท ื–ื•ื›ืŸ ื•ื•ืขื˜ ื–ื™ื™ืŸ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ืคึฟืึทืจ ืึทื–ืึท ืึท ื•ื•ืขืงื˜ืึธืจ (ืึธื“ืขืจ ื•ื•ืขืงื˜ืึธืจืก) ืคึฟืึทืจ ื•ื•ืึธืก ื“ื™ ืžืึทืงืกื™ืžื•ื ื•ื•ืขืจื˜ ืคื•ืŸ ื“ื™ ื˜ื•ื™ื’ื™ืงื™ื™ื˜ ืคื•ื ืงืฆื™ืข ื•ื•ืขื˜ ื–ื™ื™ืŸ ื‘ืืงื•ืžืขืŸ.

ื“ื™ ื’ืึท ืกื•ื‘ืจื•ื˜ื™ื ืข ืคึผืขืจืคืึธืจืžื– ืึท ื–ื•ื›ืŸ ืžืึทืงืกืึทืžื™ื™ื–ื™ื ื’ ื“ื™ ื˜ื•ื™ื’ื™ืงื™ื™ื˜ ืคื•ื ืงืฆื™ืข.

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

ืึทื– ืื™ื–: ื•ื•ื™ ืคื™ืœืข, ืžื™ื˜ ืึท ื’ืขื’ืขื‘ืŸ ืกื•ื‘ื“ ืกืขื˜ืึทืคึผ ืื•ืŸ ืึท ื’ืขื’ืขื‘ืŸ ืžืึทืกืข ืื•ื™ืฃ ื“ื™ ืกื•ื‘ื“: ื“ื™ ืกื•ื‘ื“ ืคึผืจืึทืกืขืกืึทื– ื˜ืจืึทื ื–ืึทืงืฉืึทื ื– ืคึผืขืจ ืกืขืงื•ื ื“ืข.

ืึทื– ืื™ื–, ื•ื•ืขืŸ ืึทื ืคืึธื•ืœื“ื™ื ื’, ื“ื™ ืคืืœื’ืขื ื“ืข ืžืึทืœื˜ื™-ืฉืจื™ื˜ ืžื•ื–ืŸ ื–ื™ื™ืŸ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ืื™ืŸ ื“ื™ ื˜ื•ื™ื’ื™ืงื™ื™ื˜ ืคื•ื ืงืฆื™ืข:

  1. ืคึผืจืึทืกืขืกื™ื ื’ ื“ื™ ืึทืจื™ื™ึทื ืฉืจื™ื™ึทื‘ ื•ื•ืขืงื˜ืึธืจ ืคื•ืŸ ื ื•ืžืขืจืŸ - ืงืึทื ื•ื•ืขืจื˜ื™ื ื’ ืขืก ืื™ืŸ ื•ื•ืึทืœื•ืขืก ืคึฟืึทืจ ืกื•ื‘ื“ืึทื˜ืึท ืคึผืึทืจืึทืžืขื˜ืขืจืก.
  2. ืึทืŸ ืคึผืจื•ื•ื•ืŸ ืฆื• ืฉืึทืคึฟืŸ ืึท ื’ืขื’ืขื‘ืŸ ื ื•ืžืขืจ ืคื•ืŸ ืจืขื“ืึธ ื’ืจื•ืคึผืขืก ืคื•ืŸ ืึท ื’ืขื’ืขื‘ืŸ ื’ืจื™ื™ืก. ื“ืขืจืฆื•, ื“ืขืจ ืคึผืจื•ื•ื•ืŸ ืงืขืŸ ื–ื™ื™ืŸ ื ื™ื˜ ื’ืขืจืึธื˜ืŸ.
    ื–ืฉื•ืจื ืึทืœ ื’ืจื•ืคึผืขืก ื•ื•ืึธืก ื”ืึธื‘ืŸ ืฉื•ื™ืŸ ืขืงื–ื™ืกื˜ื™ืจื˜ ืื™ืŸ ื“ื™ ืกื•ื‘ื“, ืื™ืŸ ืขื˜ืœืขื›ืข ืงื•ื•ืึทื ื˜ื™ื˜ื™ ืื•ืŸ ืคื•ืŸ ืขื˜ืœืขื›ืข ื’ืจื™ื™ืก, ืคึฟืึทืจ ื“ื™ ืจื™ื™ื ืงื™ื™ึทื˜ ืคื•ืŸ ื“ื™ ืขืงืกืคึผืขืจื™ืžืขื ื˜ - ื“.ื‘. ืื•ื™ืกื’ืขืžืขืงื˜.
  3. ืื•ื™ื‘ ื“ื™ ืคืจื™ืขืจื“ื™ืงืข ืคื•ื ื˜ ืื™ื– ื’ืขืจืึธื˜ืŸ: ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื“ื™ ื•ื•ืึทืœื•ืขืก ืคื•ืŸ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืคึผืึทืจืึทืžืขื˜ืขืจืก ืฆื• ื“ื™ ื“ืึทื˜ืึทื‘ื™ื™ืก (ื•ื•ื™ื“ืขืจ: ืขืก ืงืขืŸ ื–ื™ื™ืŸ ืึท ื“ื•ืจื›ืคืึทืœ)
  4. ืื•ื™ื‘ ื“ื™ ืคืจื™ืขืจื“ื™ืงืข ืฉืจื™ื˜ ืื™ื– ื’ืขืจืึธื˜ืŸ: ืกื˜ืึธืคึผืคึผื™ื ื’ ื“ื™ ืกื•ื‘ื“, ืึธื ื”ื™ื™ื‘ ื“ื™ ืกื•ื‘ื“ ืึทื–ื•ื™ ืึทื– ื“ื™ ื ื™ื™ึท ืกืคึผืขืกื™ืคื™ืขื“ ืคึผืึทืจืึทืžืขื˜ืขืจ ื•ื•ืึทืœื•ืขืก ื ืขืžืขืŸ ื•ื•ื™ืจืงื•ื ื’. (ื•ื•ื™ื“ืขืจ: ืขืก ืงืขืŸ ื–ื™ื™ืŸ ืึท ื’ืœื™ื˜ืฉ)
  5. ืื•ื™ื‘ ื“ื™ ืคืจื™ืขืจื“ื™ืงืข ืฉืจื™ื˜ ืื™ื– ื’ืขืจืึธื˜ืŸ: ื“ื•ืจื›ืคื™ืจืŸ ืึท ืžืึทืกืข ืคึผืจื•ื‘ื™ืจืŸ. ื‘ืึทืงื•ืžืขืŸ ืžืขื˜ืจื™ืงืก ืคื•ืŸ ืกื•ื‘ื“.
  6. ืฆื•ืจื™ืงืงื•ืžืขืŸ ื“ื™ ืกื•ื‘ื“ ืฆื• ื–ื™ื™ึทืŸ ืึธืจื™ื’ื™ื ืขืœ ืฉื˜ืึทื˜, ื“.ื”. ื•ื™ืกืžืขืงืŸ ื ืึธืš ืงืœืึธืฅ ื’ืจื•ืคึผืขืก, ืฆื•ืจื™ืงืงื•ืžืขืŸ ื“ื™ ืึธืจื™ื’ื™ื ืขืœ ืกืึทื‘ื“ืึทื˜ืึทื‘ื™ื™ืก ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืฆื• ืึทืจื‘ืขื˜ืŸ.

ื˜ื•ื™ื’ื™ืงื™ื™ื˜ ืคึฟื•ื ืงืฆื™ืข ืงืึธื“

evaluate=function(p_par) {
v_module="evaluate"
v_metric=0
opn=NULL
opn$rg_size=round(p_par[1],digit=0)
opn$rg_count=round(p_par[2],digit=0)
opn$log_archive_max_processes=round(p_par[3],digit=0)
opn$commit_logging="BATCH"
if ( round(p_par[4],digit=0) > 5 ) {
 opn$commit_logging="IMMEDIATE"
}
opn$commit_logging=paste("'", opn$commit_logging, "'",sep="")

opn$commit_wait="WAIT"
if ( round(p_par[5],digit=0) > 5 ) {
 opn$commit_wait="NOWAIT"
}
opn$commit_wait=paste("'", opn$commit_wait, "'",sep="")

opn$log_buffer=paste(round(p_par[6],digit=0),"m",sep="")
opn$log_checkpoint_timeout=round(p_par[7],digit=0)
opn$db_writer_processes=round(p_par[8],digit=0)
opn$undo_retention=round(p_par[9],digit=0)
opn$transactions_per_rollback_segment=round(p_par[10],digit=0)
opn$disk_asynch_io="true"
if ( round(p_par[11],digit=0) > 5 ) {
 opn$disk_asynch_io="false"
} 

opn$filesystemio_options="none"
if ( round(p_par[12],digit=0) > 10 && round(p_par[12],digit=0) <= 20 ) {
 opn$filesystemio_options="setall"
}
if ( round(p_par[12],digit=0) > 20 && round(p_par[12],digit=0) <= 30 ) {
 opn$filesystemio_options="directIO"
}
if ( round(p_par[12],digit=0) > 30 ) {
 opn$filesystemio_options="asynch"
}

opn$db_block_checking="OFF"
if ( round(p_par[13],digit=0) > 10 && round(p_par[13],digit=0) <= 20 ) {
 opn$db_block_checking="LOW"
}
if ( round(p_par[13],digit=0) > 20 && round(p_par[13],digit=0) <= 30 ) {
 opn$db_block_checking="MEDIUM"
}
if ( round(p_par[13],digit=0) > 30 ) {
 opn$db_block_checking="FULL"
}

opn$db_block_checksum="OFF"
if ( round(p_par[14],digit=0) > 10 && round(p_par[14],digit=0) <= 20 ) {
 opn$db_block_checksum="TYPICAL"
}
if ( round(p_par[14],digit=0) > 20 ) {
 opn$db_block_checksum="FULL"
}

v_vector=paste(round(p_par[1],digit=0),round(p_par[2],digit=0),round(p_par[3],digit=0),round(p_par[4],digit=0),round(p_par[5],digit=0),round(p_par[6],digit=0),round(p_par[7],digit=0),round(p_par[8],digit=0),round(p_par[9],digit=0),round(p_par[10],digit=0),round(p_par[11],digit=0),round(p_par[12],digit=0),round(p_par[13],digit=0),round(p_par[14],digit=0),sep=";")
cat( paste(v_module," try to evaluate vector: ", v_vector,sep="") , file=v_logfile, sep="n", append=T)

rc=make_additional_rgroups(opn)
if ( rc!=0 ) {
 cat( paste(v_module,"make_additional_rgroups failed",sep="") , file=v_logfile, sep="n", append=T)
 return (0)
}

v_rc=0
rc=set_db_parameter("log_archive_max_processes", opn$log_archive_max_processes)
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("commit_logging", opn$commit_logging )
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("commit_wait", opn$commit_wait )
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("log_buffer", opn$log_buffer )
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("log_checkpoint_timeout", opn$log_checkpoint_timeout )
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("db_writer_processes", opn$db_writer_processes )
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("undo_retention", opn$undo_retention )
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("transactions_per_rollback_segment", opn$transactions_per_rollback_segment )
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("disk_asynch_io", opn$disk_asynch_io )
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("filesystemio_options", opn$filesystemio_options )
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("db_block_checking", opn$db_block_checking )
if ( rc != 0 ) {  v_rc=1 }
rc=set_db_parameter("db_block_checksum", opn$db_block_checksum )
if ( rc != 0 ) {  v_rc=1 }

if ( rc!=0 ) {
 cat( paste(v_module," can not startup db with that vector of settings",sep="") , file=v_logfile, sep="n", append=T)
 rc=stop_db("immediate")
 rc=create_spfile()
 rc=start_db("")
 rc=remove_additional_rgroups(opn)
 return (0)
}

rc=stop_db("immediate")
rc=start_db("")
if ( rc!=0 ) {
 cat( paste(v_module," can not startup db with that vector of settings",sep="") , file=v_logfile, sep="n", append=T)
 rc=stop_db("abort")
 rc=create_spfile()
 rc=start_db("")
 rc=remove_additional_rgroups(opn)
 return (0)
}

rc=run_test()
v_metric=getmetric()

rc=stop_db("immediate")
rc=create_spfile()
rc=start_db("")
rc=remove_additional_rgroups(opn)

cat( paste("result: ",v_metric," ",v_vector,sep="") , file=v_logfile, sep="n", append=T)
return (v_metric)
}

ืึทื–. ืึทืœืข ืึทืจื‘ืขื˜: ื’ืขื˜ืืŸ ืื™ืŸ ื“ื™ ื˜ื•ื™ื’ื™ืงื™ื™ื˜ ืคื•ื ืงืฆื™ืข.

ื“ื™ ื’ืึท-ืกื•ื‘ืจื•ื˜ื™ื ืข ืคึผืจืึทืกืขืกืึทื– ื•ื•ืขืงื˜ืึธืจืก, ืึธื“ืขืจ, ืžืขืจ ืจื™ื›ื˜ื™ืง, ื˜ืฉืจืึธืžืึธืกืึธื•ืžื–.
ืื™ืŸ ื•ื•ืึธืก, ื•ื•ืึธืก ืื™ื– ืžืขืจืกื˜ ื•ื•ื™ื›ื˜ื™ืง ืคึฟืึทืจ ืื•ื ื“ื–, ืื™ื– ื“ื™ ืกืขืœืขืงืฆื™ืข ืคื•ืŸ โ€‹โ€‹ื˜ืฉืจืึธืžืึธืกืึธื•ืžื– ืžื™ื˜ ื’ืขื ืขืก ืคึฟืึทืจ ื•ื•ืึธืก ื“ื™ ื˜ื•ื™ื’ื™ืงื™ื™ึทื˜ ืคึฟื•ื ืงืฆื™ืข ื˜ืจืื’ื˜ ื’ืจื•ื™ืก ื•ื•ืึทืœื•ืขืก.

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

ื–ื™ื™ืขืจ ืงืœืึธืจ, ื“ื™ื˜ื™ื™ืœื“ ื“ืขืจืงืœืขืจื•ื ื’, ืžื™ื˜ ื‘ื™ื™ืฉืคื™ืœืŸ ืคื•ืŸ ืจ-ืงืึธื“, ื“ื™ ืึทืจื‘ืขื˜ ืคื•ืŸ ืึท ื’ืขื ืขื˜ื™ืง ืึทืœื’ืขืจื™ื“ืึทื.

ืื™ืš ื•ื•ื™ืœ ื‘ืื–ื•ื ื“ืขืจ ื‘ืืžืขืจืงืŸ ืฆื•ื•ื™ื™ ื˜ืขื›ื ื™ืฉืข ืคื•ื ืงื˜ืŸ.

ืึทื’ื–ื™ืœื™ืขืจื™ ืจื•ืคื˜ ืคื•ืŸ ื“ื™ ืคึฟื•ื ืงืฆื™ืข evaluate, ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ื”ืึทืœื˜ืŸ-ืึธื ื”ื™ื™ื‘, ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ื“ื™ ื•ื•ืขืจื˜ ืคื•ืŸ ื“ื™ ืกื•ื‘ื“ ืคึผืึทืจืึทืžืขื˜ืขืจ, ื–ืขื ืขืŸ ื’ืขื˜ืืŸ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ cran-r ืคืึทื ื’ืงืฉืึทื ื– system2

ืžื™ื˜ ื“ืขืจ ื”ื™ืœืฃ ืคื•ืŸ ื•ื•ืึธืก: ืขื˜ืœืขื›ืข ื‘ืึทืฉ ืฉืจื™ืคื˜ ืึธื“ืขืจ ื‘ืึทืคึฟืขืœ ืื™ื– ื’ืขืจื•ืคืŸ.

ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ:

set_db_parameter

set_db_parameter=function(p1, p2) {
v_module="set_db_parameter"
v_cmd="/home/oracle/testingredotracะต/set_db_parameter.sh"
v_args=paste(p1," ",p2,sep="")

x=system2(v_cmd, args=v_args, stdout=T, stderr=T, wait=T)
if ( length(attributes(x)) > 0 ) {
 cat(paste(v_module," failed with: ",attributes(x)$status," ",v_cmd," ",v_args,sep=""), file=v_logfile, sep="n", append=T)
 return (attributes(x)$status)
}
else {
 cat(paste(v_module," ok: ",v_cmd," ",v_args,sep=""), file=v_logfile, sep="n", append=T)
 return (0)
}
}

ื“ื™ ืฆื•ื•ื™ื™ื˜ืข ืคื•ื ื˜ ืื™ื– ื“ื™ ืฉื•ืจื”, evaluate ืคืึทื ื’ืงืฉืึทื ื–, ืžื™ื˜ ืฉืคึผืึธืจืŸ ืึท ืกืคึผืขืฆื™ืคื™ืฉ ืžืขื˜ืจื™ืง ื•ื•ืขืจื˜ ืื•ืŸ ื–ื™ื™ืŸ ืงืึธืจืึทืกืคึผืึทื ื“ื™ื ื’ ื˜ื•ื ื™ื ื’ ื•ื•ืขืงื˜ืึธืจ ืฆื• ืึท ืงืœืึธืฅ ื˜ืขืงืข:

cat( paste("result: ",v_metric," ",v_vector,sep="") , file=v_logfile, sep="n", append=T)

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

ืึทื– ืื™ื–: ืขืก ื•ื•ืขื˜ ื–ื™ื™ืŸ ืžืขื’ืœืขืš ืฆื• ื“ื•ืจื›ืคื™ืจืŸ ืึทื˜ืจื™ื‘ื™ื•ื˜-ื™ืžืคึผืึธืจื˜ืึทืžืกืข ืึทื ืึทืœื™ืกื™ืก.

ืึทื–ื•ื™ ื•ื•ืึธืก ืงืขืŸ ืคึผืึทืกื™ืจืŸ?

ืื™ืŸ ื’ืจืึทืคื™ืง ืคืึธืจืขื, ืื•ื™ื‘ ืื™ืจ ืกื“ืจ ื“ื™ ื˜ืขืกืฅ ืื™ืŸ ืึทืกืขื ื“ื™ื ื’ ืžืขื˜ืจื™ืง ืกื“ืจ, ื“ื™ ื‘ื™ืœื“ ืื™ื– ื•ื•ื™ ื’ื™ื™ื˜:

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

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

ื ื•. ืื™ื– ืขืก ืึท ืคึผืœืึทืฅ ืึธื“ืขืจ ืึท ื‘ื™ืกืœ, ~ 8 ื˜ื•ื™ื–ื ื˜ ื˜ืคึผืก: ืึท ื‘ืึทื–ื•ื ื“ืขืจ ืงืฉื™ื.
ืื™ืŸ ื“ื™ ืคืจื™ื™ืžื•ื•ืขืจืง ืคื•ืŸ ืœืึทื‘ืึธืจืึทื˜ืึธืจื™ืข ืึทืจื‘ืขื˜, ื“ืขื ืคื™ื’ื•ืจ ืื™ื– ื ื™ืฉื˜ ื•ื•ื™ื›ื˜ื™ืง, ื•ื•ืึธืก ืื™ื– ื•ื•ื™ื›ื˜ื™ืง ืื™ื– ื“ื™ ื“ื™ื ืึทืžื™ืง, ื•ื•ื™ ื“ื™ ื•ื•ืขืจื˜ ืขื ื“ืขืจื•ื ื’ืขืŸ.

ื“ื™ ื“ื™ื ืึทืžื™ืง ื“ืึธ ืื™ื– ื’ื•ื˜.
ืขืก ืื™ื– ืงืœืึธืจ ื•ื•ื™ ื“ืขืจ ื˜ืึธื’ ืึทื– ื‘ื™ื™ึท ืžื™ื ื“ืกื˜ืขืจ ืื™ื™ืŸ ืคืึทืงื˜ืึธืจ ื‘ืื˜ื™ื™ื˜ื™ืง ื™ื ืคืœื•ืึทื ืกื™ื– ื“ื™ ื•ื•ืขืจื˜ ืคื•ืŸ ื“ื™ ืžืขื˜ืจื™ืง, ื“ื™ ื’ืึท-ืึทืœื’ืขืจื™ื“ืึทื, ืกืึธืจื˜ื™ื ื’ ื“ื•ืจืš ื“ื™ ื›ืจืึธืžืึธืกืึธื ื•ื•ืขืงื˜ืึธืจืก: ื‘ืื“ืขืงื˜.
ืื•ื™ื‘ ืžืฉืคื˜ืŸ ื“ื•ืจืš ื“ื™ ืคืขืจืœื™ ืงืจืึทืคื˜ื™ืง ื“ื™ื ืึทืžื™ืง ืคื•ืŸ ื“ื™ ื•ื™ืกื‘ื™ื™ื’ ื•ื•ืึทืœื•ืขืก, ืขืก ืื™ื– ื‘ื™ื™ึท ืžื™ื ื“ืกื˜ืขืจ ืื™ื™ื ืขืจ ืžืขืจ ืคืึทืงื˜ืึธืจ ื•ื•ืึธืก, ื›ืึธื˜ืฉ ื‘ืื˜ื™ื™ื˜ื™ืง ืงืœืขื ืขืจืขืจ, โ€‹โ€‹โ€‹โ€‹ื”ืื˜ ืึท ื”ืฉืคึผืขื”.

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

ืœื•ื™ืฃ attribute-importance ืงืขื ืขืŸ ื–ื™ื™ืŸ ืื™ืŸ ืคื™ืœืข ื•ื•ืขื’ืŸ.

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

ืื™ืŸ ืื•ื ื“ื–ืขืจ ืคืึทืœ, ื“ืขืจ ืขื ื˜ืคืขืจ ื‘ื™ื™ึทื˜ืขื•ื•ื“ื™ืง ืื™ื– ืึท ืžืขื˜ืจื™ืง ื‘ืืงื•ืžืขืŸ ืคื•ืŸ ื“ื™ ื“ืึทื˜ืึทื‘ื™ื™ืก ืื™ืŸ ืžืึทืกืข ื˜ืขืกืฅ: tps;
ืื•ืŸ ืึทื˜ืจื™ื‘ื™ื•ืฅ ื–ืขื ืขืŸ ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ืคื•ืŸ ื“ื™ ื˜ื•ื ื™ื ื’ ื•ื•ืขืงื˜ืึธืจ.

ืึทื–ื•ื™ randomForest ื™ื•ื•ืึทืœื™ื•ื™ื™ืฅ ื“ื™ ื•ื•ื™ื›ื˜ื™ืงื™ื™ื˜ ืคื•ืŸ ื™ืขื“ืขืจ ืžืึธื“ืขืœ ืึทื˜ืจื™ื‘ื™ื•ื˜ ืžื™ื˜ ืฆื•ื•ื™ื™ ื ื•ืžืขืจืŸ: %IncMSE - ื•ื•ื™ ื“ื™ ื‘ื™ื™ึทื–ื™ื™ึทืŸ / ืึทื•ื•ืขืง ืคื•ืŸ ื“ืขื ืึทื˜ืจื™ื‘ื™ื•ื˜ ืื™ืŸ ืึท ืžืึธื“ืขืœ ืขื ื“ืขืจื•ื ื’ืขืŸ ื“ื™ MSE ืงื•ื•ืึทืœื™ื˜ืขื˜ ืคื•ืŸ ื“ืขื ืžืึธื“ืขืœ (ืžืขืึทืŸ ืกืงื•ื•ืึทืจืขื“ ื˜ืขื•ืช);

ืื•ืŸ IncNodePurity ืื™ื– ืึท ื ื•ืžืขืจ ื•ื•ืึธืก ืจื™ืคืœืขืงืก ื•ื•ื™ ื’ืขื–ื•ื ื˜, ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ ื•ื•ืึทืœื•ืขืก ืคื•ืŸ ื“ืขื ืึทื˜ืจื™ื‘ื™ื•ื˜, ืึท ื“ืึทื˜ืึทืกืขื˜ ืžื™ื˜ ืึทื‘ื–ืขืจื•ื•ื™ื™ืฉืึทื ื– ืงืขื ืขืŸ ื–ื™ื™ืŸ ืฆืขื˜ื™ื™ืœื˜, ืึทื–ื•ื™ ืึทื– ืื™ืŸ ืื™ื™ืŸ ื˜ื™ื™ืœ ืขืก ื–ืขื ืขืŸ ื“ืึทื˜ืŸ ืžื™ื˜ ืื™ื™ืŸ ื•ื•ืขืจื˜ ืคื•ืŸ ื“ื™ ืžืขื˜ืจื™ืง ื•ื•ืึธืก ืื™ื– ื“ืขืจืงืœืขืจื˜, ืื•ืŸ ืื™ืŸ ื“ื™ ืื ื“ืขืจืข ืžื™ื˜. ืืŸ ืื ื“ืขืจ ื•ื•ืขืจื˜ ืคื•ืŸ ื“ื™ ืžืขื˜ืจื™ืง.
ื ื•, ื“ืึธืก ืื™ื–: ืื™ืŸ ื•ื•ืึธืก ืžืึธืก ืื™ื– ื“ืึธืก ืึท ืงืœืึทืกืึทืคื™ื™ื™ื ื’ ืึทื˜ืจื™ื‘ื™ื•ื˜ (ืื™ืš ื”ืึธื‘ ื’ืขื–ืขืŸ ื“ื™ ืžืขืจืกื˜ ืงืœืึธืจ, ืจื•ืกื™ืฉ-ืฉืคึผืจืึทืš ื“ืขืจืงืœืขืจื•ื ื’ ืื•ื™ืฃ RandomForest ื“ืึธ).

ืึทืจื‘ืขื˜ืขืจ-ืคึผื•ื™ืขืจ ืจ-ืงืึธื“ ืคึฟืึทืจ ืคึผืจืึทืกืขืกื™ื ื’ ืึท ื“ืึทื˜ืึทืกืขื˜ ืžื™ื˜ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืคื•ืŸ ืžืึทืกืข ื˜ืขืกืฅ:

x=NULL
v_data_file=paste('/tmp/data1.dat',sep="")
x=read.table(v_data_file, header = TRUE, sep = ";", dec=",", quote = ""'", stringsAsFactors=FALSE)
colnames(x)=c('metric','rgsize','rgcount','lamp','cmtl','cmtw','lgbffr','lct','dbwrp','undo_retention','tprs','disk_async_io','filesystemio_options','db_block_checking','db_block_checksum')

idxTrain=sample(nrow(x),as.integer(nrow(x)*0.7))
idxNotTrain=which(! 1:nrow(x) %in% idxTrain )
TrainDS=x[idxTrain,]
ValidateDS=x[idxNotTrain,]

library(randomForest)
#mtry=as.integer( sqrt(dim(x)[2]-1) )
rf=randomForest(metric ~ ., data=TrainDS, ntree=40, mtry=3, replace=T, nodesize=2, importance=T, do.trace=10, localImp=F)
ValidateDS$predicted=predict(rf, newdata=ValidateDS[,colnames(ValidateDS)!="metric"], type="response")
sum((ValidateDS$metric-ValidateDS$predicted)^2)
rf$importance

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

ืื™ืจ ืงืขื ืขืŸ ื ื•ืฆืŸ R ืคึผืขืงืœ caret, ื ื™ื˜ ื“ื™ ืคื•ื ื˜ ืื™ื– ื•ื•ื™ื›ื˜ื™ืง.

ื•ื•ื™ ืึท ืจืขื–ื•ืœื˜ืึทื˜, ืื™ืŸ ื“ืขื ืคืึทืœ, ื“ื™ ืคืืœื’ืขื ื“ืข ืจืขื–ื•ืœื˜ืึทื˜ ืื™ื– ื‘ืืงื•ืžืขืŸ ืฆื• ืึทืกืกืขืกืก ื“ื™ ื’ืจืึทื“ ืคื•ืŸ ื•ื•ื™ื›ื˜ื™ืงื™ื™ื˜ ืคื•ืŸ ื“ื™ ืึทื˜ืจื™ื‘ื™ื•ืฅ:

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

ื ื•. ืื–ื•ื™, ืžื™ืจ ืงืขื ืขืŸ ืึธื ื”ื™ื™ื‘ืŸ ื’ืœืื‘ืืœืข ืึธืคึผืฉืคึผื™ื’ืœื•ื ื’:

  1. ืขืก ื˜ื•ืจื ืก ืื•ื™ืก ืึทื– ื“ื™ ืžืขืจืกื˜ ื‘ืึทื˜ื™ื™ึทื˜ื™ืง, ืื•ื ื˜ืขืจ ื“ื™ ื˜ืขืกื˜ื™ื ื’ ื˜ื ืึธื™ื, ืื™ื– ื’ืขื•ื•ืขืŸ ื“ืขืจ ืคึผืึทืจืึทืžืขื˜ืขืจ commit_wait
    ื˜ืขืงื ื™ืงืœื™, ืขืก ืกืคึผืขืฆื™ืคื™ืฆื™ืจื˜ ื“ื™ ื“ื•ืจื›ืคื™ืจื•ื ื’ ืžืึธื“ืข ืคื•ืŸ โ€‹โ€‹ื“ื™ ื™ืึธ ืึธืคึผืขืจืึทืฆื™ืข ืคื•ืŸ โ€‹โ€‹ืฉืจื™ื™ื‘ืŸ ืจืขื“ืึธ ื“ืึทื˜ืŸ ืคึฟื•ืŸ ื“ื™ ืกื•ื‘ื“ื‘ ืงืœืึธืฅ ื‘ืึทืคืขืจ ืฆื• ื“ื™ ืงืจืึทื ื˜ ืงืœืึธืฅ ื’ืจื•ืคึผืข: ืกื™ื ื˜ืฉืจืึธื ืึธื•ืก ืึธื“ืขืจ ื™ื™ืกื™ื ื’ืงืจืึทื ืึทืก.
    ื•ื•ืขืจื˜ nowait ื•ื•ืึธืก ืจื™ื–ืึทืœื˜ื™ื“ ืื™ืŸ ืึท ื›ึผืžืขื˜ ื•ื•ืขืจื˜ื™ืงืึทืœ, ืงื™ื™ืคืœ ืคืึทืจื’ืจืขืกืขืจืŸ ืื™ืŸ ื“ื™ ื•ื•ืขืจื˜ ืคื•ืŸ ื“ื™ ื˜ืคึผืก ืžืขื˜ืจื™ืง: ื“ืึธืก ืื™ื– ื“ื™ ื™ื ืงืœื•ื–ืฉืึทืŸ ืคื•ืŸ ื“ื™ ื™ื™ืกื™ื ื’ืงืจืึทื ืึทืก ื™ืึธ ืžืึธื“ืข ืื™ืŸ ืจืขื“ืึธ ื’ืจื•ืคึผืขืก.
    ื ื‘ืึทื–ื•ื ื“ืขืจ ืงืฉื™ื ืื™ื– ืฆื™ ืื™ืจ ื–ืึธืœ ื˜ืึธืŸ ื“ืึธืก ืื™ืŸ ืึท ืขืกื ื•ื•ืึทืจื’ ื“ืึทื˜ืึทื‘ื™ื™ืก ืึธื“ืขืจ ื ื™ืฉื˜. ื“ืึธ ืื™ืš ื‘ืึทื’ืจืขื ืขืฆืŸ ื–ื™ืš ืฆื• ื ืึธืจ ืกื˜ื™ื™ื˜ื™ื ื’: ื“ืึธืก ืื™ื– ืึท ื‘ืึทื˜ื™ื™ื˜ื™ืง ืคืึทืงื˜ืึธืจ.
  2. ืขืก ืื™ื– ืœืึทื“ื–ืฉื™ืงืึทืœ ืึทื– ื“ื™ ื’ืจื™ื™ืก ืคื•ืŸ ื“ื™ ืงืœืึธืฅ ื‘ืึทืคืขืจ ืคื•ืŸ ื“ื™ ืกื•ื‘ื“: ื˜ื•ืจื ืก ืื•ื™ืก ืฆื• ื–ื™ื™ืŸ ืึท ื‘ืึทื˜ื™ื™ื˜ื™ืง ืคืึทืงื˜ืึธืจ.
    ื“ื™ ืงืœืขื ืขืจืขืจ ื“ื™ ื’ืจื™ื™ืก ืคื•ืŸ ื“ืขื ืงืœืึธืฅ ื‘ืึทืคืขืจ, ื“ื™ ื•ื•ื™ื™ื ื™ืงืขืจ ื–ื™ื™ึทืŸ ื‘ืึทืคืขืจื™ื ื’ ืงืึทืคึผืึทืฆื™ื˜ืขื˜, ื“ื™ ืžืขืจ ืึธืคื˜ ืขืก ืึธื•ื•ื•ืขืจืคืœืึธื•ื– ืื•ืŸ / ืึธื“ืขืจ ื“ื™ ื™ื ืึทื‘ื™ืœื™ื˜ื™ ืฆื• ืึทืœืึทืงื™ื™ื˜ ืึท ืคืจื™ื™ ื’ืขื’ื ื˜ ืื™ืŸ ืขืก ืคึฟืึทืจ ืึท ื˜ื™ื™ืœ ืคื•ืŸ ื ื™ื™ึท ืจืขื“ืึธืงืก ื“ืึทื˜ืŸ.
    ื“ืขื ืžื™ื˜ืœ: ื“ื™ืœื™ื™ื– ืคืืจื‘ื•ื ื“ืŸ ืžื™ื˜ ืึทืœืึทืงื™ื™ื˜ื™ื ื’ ืคึผืœืึทืฅ ืื™ืŸ ื“ื™ ืงืœืึธืฅ ื‘ืึทืคืขืจ ืื•ืŸ / ืึธื“ืขืจ ื“ืึทืžืคึผื™ื ื’ ืจืขื“ืึธ ื“ืึทื˜ืŸ ืคึฟื•ืŸ ืขืก ืื™ืŸ ืจืขื“ืึธ ื’ืจื•ืคึผืขืก.
    ื“ื™ ื“ื™ืœื™ื™ื–, ืคื•ืŸ ืงื•ืจืก, ื–ืึธืœ ืื•ืŸ ื˜ืึธืŸ ื•ื•ื™ืจืงืŸ ื“ื™ ื˜ืจื•ืคึผื•ื˜ ืคื•ืŸ ื“ื™ ื“ืึทื˜ืึทื‘ื™ื™ืก ืคึฟืึทืจ ื˜ืจืึทื ื–ืึทืงืฉืึทื ื–.
  3. ืคึผืึทืจืึทืžืขื˜ืขืจ db_block_checksum: ื ื•, ืื•ื™ืš, ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ, ืขืก ืื™ื– ืงืœืึธืจ - ื˜ืจืึทื ืกืึทืงื˜ื™ืึธืŸ ืคึผืจืึทืกืขืกื™ื ื’ ืคื™ืจื˜ ืฆื• ื“ื™ ืคืึธืจืžื™ืจื•ื ื’ ืคื•ืŸ ื“ืึทืจื˜ ื‘ืœืึทืงืก ืื™ืŸ ื“ื™ ื‘ืึทืคืขืจ ืงืึทืฉ ืคื•ืŸ ื“ื™ ืกืึทื‘ื“ืึทื˜ืึทื‘ื™ื™ืก.
    ื•ื•ืึธืก, ื•ื•ืขืŸ ืงืึธื ื˜ืจืึธืœื™ืจื•ื ื’ ื˜ืฉืขืงืกืึทืžื– ืคื•ืŸ ื“ืึทื˜ืึทื‘ืœืึธืงืงืก ืื™ื– ืขื ื™ื™ื‘ืึทืœื“, ื“ื™ ื“ืึทื˜ืึทื‘ื™ื™ืก ืžื•ื–ืŸ ืคึผืจืึธืฆืขืก - ืจืขื›ืขื ืขืŸ ื“ื™ ื˜ืฉืขืงืกืึทืžื– ืคื•ืŸ ื“ื™ ื’ื•ืฃ ืคื•ืŸ ื“ื™ ื“ืึทื˜ืึทื‘ืœืึธืงืง, ืงืึธื ื˜ืจืึธืœื™ืจืŸ ื–ื™ื™ ืžื™ื˜ ื•ื•ืึธืก ืื™ื– ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ ื“ื™ ื“ืึทื˜ืึทื‘ืœืึธืงืง ื›ืขื“ืขืจ: ืฉื•ื•ืขื‘ืขืœืขืš / ื˜ืึธืŸ ื ื™ื˜ ื’ืœื™ื™ึทื›ืŸ.
    ืึทื–ืึท ืึทืจื‘ืขื˜, ื•ื•ื™ื“ืขืจ, ืงืขื ืขืŸ ื ื™ื˜ ื ืึธืจ ืคืึทืจื”ืึทืœื˜ืŸ ื“ื™ ืคึผืจืึทืกืขืกื™ื ื’ ืคื•ืŸ ื“ืึทื˜ืŸ, ืื•ืŸ ืึทืงืึธืจื“ื™ื ื’ืœื™, ื“ืขืจ ืคึผืึทืจืึทืžืขื˜ืขืจ ืื•ืŸ ื“ื™ ืžืขืงืึทื ื™ื–ืึทื ื•ื•ืึธืก ืฉื˜ืขืœืŸ ื“ืขื ืคึผืึทืจืึทืžืขื˜ืขืจ ื–ืขื ืขืŸ ื‘ืึทื˜ื™ื™ึทื˜ื™ืง.
    ืึทื– ืก ื•ื•ืึธืก ื“ืขืจ ืคืึทืจืงื•ื™ืคืขืจ ืึธืคืคืขืจืก ืื™ืŸ ื“ื™ ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ ืคึฟืึทืจ ื“ืขื ืคึผืึทืจืึทืžืขื˜ืขืจ ืคืึทืจืฉื™ื“ืขื ืข ื•ื•ืึทืœื•ืขืก ืคึฟืึทืจ ืื™ื (ื“ืขืจ ืคึผืึทืจืึทืžืขื˜ืขืจ) ืื•ืŸ ื”ืขืจื•ืช ืึทื– ื™ืึธ, ืขืก ื•ื•ืขื˜ ื–ื™ื™ืŸ ืึท ืคึผืจืึทืœ, ืึธื‘ืขืจ, ื ื•, ืื™ืจ ืงืขื ืขืŸ ืงืœื™ื™ึทื‘ืŸ ืคืึทืจืฉื™ื“ืขื ืข ื•ื•ืึทืœื•ืขืก, ืึทืจื•ื™ืฃ ืฆื• "ืึทื•ื•ืขืง" ืื•ืŸ ืคืึทืจืฉื™ื“ืขื ืข ื™ืžืคึผืึทืงืฅ.

ื ื•, ืึท ื’ืœืื‘ืืœืข ืžืกืงื ื.

ื“ืขืจ ืฆื•ื’ืึทื ื’, ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ, ื˜ื•ืจื ืก ืื•ื™ืก ืฆื• ื–ื™ื™ืŸ ื’ืึทื ืฅ ืืจื‘ืขื˜ืŸ.

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

ืื‘ืขืจ ืขืก ื˜ื•ื˜ ื ื™ืฉื˜ ื•ื™ืกืฉืœื™ืกืŸ ืขืก ื’ืึธืจ - ืื™ืŸ ืžื™ื ื“ืกื˜ืขืจ ืื™ืŸ ื“ืขืจ ืžื“ืจื’ื” ืคื•ืŸ ืคืืจืฉื˜ืื ื“: ื“ื™ ืกื™ืกื˜ืขื ืžื•ื–ืŸ ื–ื™ื™ืŸ ื‘ืึทื•ื•ื•ืกื˜ ื•ื•ืขื’ืŸ ื“ื™ "ืึทื“ื–ืฉืึทืกื˜ืžืึทื ื˜ ื ืึทื‘ื–" ืื•ืŸ ื“ื™ ืขืจืœื•ื™ื‘ื˜ ืจื™ื™ื ื“ื–ืฉืึทื– ืคื•ืŸ ืจืึธื•ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ื™ ื ืึทื‘ื–.

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

ื•ื•ืึธืก, ืคื•ืŸ ืงื•ืจืก, ื–ืึธืœ ื‘ื™ื™ืฉื˜ื™ื™ืขืจืŸ ืฆื• ื“ื™ ื™ืžืขืจื“ื–ืฉืึทื ืก ืคื•ืŸ ื“ืขื ื–ื™ื™ืขืจ ื˜ื™ืฃ ืคืืจืฉื˜ืื ื“ ืคื•ืŸ ื“ื™ ืกื™ืกื˜ืขื, ื–ื™ื™ึทืŸ ืึธืคึผืขืจืึทืฆื™ืข, ืœืคึผื—ื•ืช ืื•ื ื˜ืขืจ ืึท ื’ืขื’ืขื‘ืŸ ืžืึทืกืข.

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

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

ื“ืื ืง ืื™ืจ ืคึฟืึทืจ ื“ื™ื™ืŸ ื•ืคืžืขืจืงื–ืึทืžืงื™ื™ึทื˜ ืื•ืŸ ืฆื™ื™ื˜.

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

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