ืื InterSystems IRIS DBMS ืฉืืืฆื ืืฉืืงืึทืืืข ืกืืจืึทืงืืฉืขืจื ืคึฟืึทืจ ืกืืึธืจืื ื ืืึทืื - ืืืึธืืืึทืื. ืืกืขื ืฉืึทืื, ืืึธืก ืืขื ืขื ืืึทืืื-ืืืจืื ืฉืืืกืืขื ืืื ืคืึทืจืฉืืื ื ืึธื ืืืืื ืืื ืื ืคืึธืจืขื ืคืื ืืจืึทื ืืึทืงืฉืึทื ื, ืฉื ืขื ืคืึทื ืืงืฉืึทื ื ืคึฟืึทืจ ืืืจืืคืึธืจ ืืึทืื ืืืืืขืจ, ืืึทืงืก ืืื ืืืื ืืืืืขื ืข ืึธืืืืฉืขืงืืกืงืจืืคึผื ืฉืคึผืจืึทื.
ืืืืขื ืขื ืืขืจ ืืืขืื ืืืึธืืึทืืก ืืื ืื ืกืขืจืืข ืคืื โโโโืึทืจืืืงืืขื "ืืืึธืืึทืื ืืขื ืขื ืืืฆืจ ืฉืืืขืจืื ืคึฟืึทืจ ืกืืึธืจืื ื ืืึทืื":
ืืื ืืขืืืืจื ืืื ืืขืจืขืกืืจื ืืื ืืื ืืจืึทื ืืึทืงืฉืึทื ื ืืขื ืขื ืืืคึผืืึทืืขื ืึทื ืืื ืืืึธืืืึทืื, ืืืึธืก ืคึฟืขืึดืงืืืื ืขืก ืืขื ืขื. ื ืึธื ืึทืืข, ืืึธืก ืืื ืึท ืืึธืจ ืึทื ืืขืจืฉ ืกืืจืืงืืืจ ืคึฟืึทืจ ืกืืึธืจืื ื ืืึทืื ืืื ืื ืืขืืืืื ืืืขื ืืืฉื. ืคืื ื ืืืขืจืืงืขืจ ืืืจืื.
ืืื ืืื ืืืงืื ื ืคืื ืื ืืขืึธืจืืข ืคืื โโืจืืืืืฉืึทื ืึทื ืืึทืืึทืืืืกืื, ืึท ืืื ืืืคึผืืึทืืขื ืืืืฉืึทื ืคืื ืืจืึทื ืืึทืงืฉืึทื ื ืืืื ืืึทืคืจืืืืงื ืื ืืืืขืจืคืขื ืืฉื :
ื - ืึทืืึธืืืฉืข (ืึทืืึธืืืฉืข). ืื ืขื ืืขืจืื ืืขื ืืขืืืื ืืื ืื ืืจืึทื ืกืึทืงืืืึธื ืึธืืขืจ ืืึธืจื ืื ืืขื ืขื ืจืขืงืึธืจืืขื.
C - ืงืึธื ืกืืกืืขื ืกื. ื ืึธื ืึท ืืจืึทื ืกืึทืงืืืึธื ืงืึทืืคึผืืืฅ, ืื ืืึทืืืฉืืงืึทื ืฉืืึทื ืคืื ืื ืืึทืืึทืืืืก ืืืื ืืืื ืื ืขืืืืื ืืง ืงืึธื ืกืืกืืขื ื. ืืื ืคืืืข ืืืขืื ืืขื ืคืึธืืขืจืื ื ืงืึทื ืกืขืจื ื ืื ืคึผืจืึธืืจืึทืืืกื, ืึธืืขืจ ืืื ืื ืคืึทื ืคืื SQL ืืึทืืึทืืืืกืื ืขืก ืืืื ืงืึทื ืกืขืจื ื ืคืจืขืื ืฉืืืกืืขื.
ืืื - ืืืึธืืืจื. ืืจืึทื ืืึทืงืฉืึทื ื ืคืืืกื ืืืง ืืื ืคึผืึทืจืึทืืขื ืืึธื ื ืืฉื ืืืืจืงื ืืขืืขืจ ืื ืืขืจืขืจ.
ื - ืืืจืึทืืึทื. ื ืึธื ืืฆืืื ืงืึทืืคึผืืืฉืึทื ืคืื ืึท ืืจืึทื ืกืึทืงืืืึธื, ืคึผืจืึธืืืขืืก ืืื ื ืืืขืจืืงืขืจ ืืขืืืขืืก (ืืึทืื ืืืจืืคืึทื, ืคึฟืึทืจ ืืืึทืฉืคึผืื) ืืึธื ื ืืฉื ืืืืจืงื ืื ืืึทืื ืืขืืืื ืืืจื ืื ืืจืึทื ืกืึทืงืืืึธื.
ืืืึธืืึทืืก ืืขื ืขื ื ืื-ืจืืืืืฉืึทื ืึทื ืืึทืื ืกืืจืึทืงืืฉืขืจื. ืืื ืืขื ืขื ืืืืืื ื ืฆื ืืืืคื ืกืืคึผืขืจ ืฉื ืขื ืืืืฃ ืืืืขืจ ืืืืืืขื ืืึทืื ืืืึทืจื. ืืื ืก ืงืืง ืืื ืืืคึผืืึทืืขื ืื ื ืืจืึทื ืืึทืงืฉืึทื ื ืืื ืืืึธืืืึทืื ื ืืฆื .
ืฆื ืฉืืืฆื ืืจืึทื ืืึทืงืฉืึทื ื ืืื IRIS, ืื ืคืืืืขื ืืข ืงืึทืืึทื ืื ืืขื ืขื ืืขื ืืฆื: , , .
1. ืึทืืึธืืืกืืื
ืื ืืืืึทืกื ืืืขื ืฆื ืงืึธื ืืจืึธืืืจื ืืื ืึทืืึธืืืงืืื. ืืืจ ืงืึธื ืืจืึธืืืจื ืคึฟืื ืื ืืึทืืึทืืืืก ืงืึทื ืกืึธืื.
Kill ^a
TSTART
Set ^a(1) = 1
Set ^a(2) = 2
Set ^a(3) = 3
TCOMMITืืขืจื ืึธื ืืืจ ืคืึทืจืขื ืืืงื:
Write ^a(1), โ โ, ^a(2), โ โ, ^a(3)ืืืจ ืืึทืงืืืขื:
1 2 3ืืืขืก ืืื ืืื. ืึทืืึธืืืกืืื ืืื ืืืื ืืืื ื: ืึทืืข ืขื ืืขืจืื ืืขื ืืขื ืขื ืจืขืงืึธืจืืขื.
ืืึธืืืจ ืงืึธืืคึผืืืฆืืจื ืื ืึทืจืืขื, ืืึทืงืขื ืขื ืึท ืืขืืช ืืื ืืขื ืืื ืื ืืจืึทื ืกืึทืงืืืึธื ืืื ืืขืจืืืขืืืขื, ืืืื ืึธืืขืจ ื ืืฉื.
ืืึธืืืจ ืืืืืขืจ ืงืึธื ืืจืึธืืืจื ืื ืึทืืึธืืืงืืื:
Kill ^A
TSTART
Set ^a(1) = 1
Set ^a(2) = 2
Set ^a(3) = 3ืืขืจื ืึธื ืืืจ ืืืขืื ืงืจืึทืคืืคืึทืื ืืึทืืื ืืขื ืงืึทื ืืืื ืขืจ, ืงืึทืืขืจ ืขืก ืืื ืืขื.
docker kill my-irisืืขืจ ืืึทืคึฟืขื ืืื ืึผืืขื ืขืงืืืืืืึทืืขื ื ืฆื ืึท ืงืจืึทืคื ืฉืึทืืืึทืื, ืืืืึทื ืขืก ืกืขื ืื ืึท SIGKILL ืกืืื ืึทื ืฆื ืืึทืืื ืืขื ืคึผืจืึธืฆืขืก ืืืืื.
ืืคึฟืฉืจ ืื ืืึทืกืข - ืืึทืื ืืื ืืขืจืืืขืืืขื?
WRITE ^a(1), ^a(2), ^a(3)
^
<UNDEFINED> ^a(1)- ื ืืื, ืขืก ืืื ื ืืฉื ืกืขืจืืืืืืื.
ืืึธืืืจ ืคึผืจืืืืจื ืื ืจืึธืืืืึทืง ืืึทืคึฟืขื:
Kill ^A
TSTART
Set ^a(1) = 1
Set ^a(2) = 2
Set ^a(3) = 3
TROLLBACK
WRITE ^a(1), ^a(2), ^a(3)
^
<UNDEFINED> ^a(1)ืืืจื ืืฉื ืืื ืืืื ื ืืฉื ืืืืขืจืืขืืขืื.
2. ืงืึธื ืกืืกืืขื ืกื
ืืื ื ืืื ืืึทืืึทืืืืกืื ืืืืืจื ืืืืฃ ืืืึธืืึทืืก, ืฉืืืกืืขื ืืขื ืขื ืืืื ืืขืืืื ืืืืฃ ืืืึธืืึทืืก (ืืึธืื ืืืจ ืืขืจืืึธื ืขื ืืืจ ืึทื ืึท ืืืืืืืข ืืื ืึท ื ืืืขืจืืงืขืจ ืืืจืื ืกืืจืืงืืืจ ืคึฟืึทืจ ืกืืึธืจืื ื ืืึทืื ืืื ืึท ืจืืืืืฉืึทื ืึทื ืืืฉ), ืฆื ืืจืขืคื ืื ืงืึธื ืกืืกืืขื ืกื ืคืึธืืขืจืื ื, ืึท ืขื ืืขืจืื ื ืืื ืื ืฉืืืกื ืืืื ืืืื ืึทืจืืึทื ืืขืจืขืื ื. ืืื ืืขืจ ืืขืืืืงืขืจ ืืจืึทื ืกืึทืงืืืึธื ืืื ืึท ืขื ืืขืจืื ื ืืื ืื ืืืืืืืข.
ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืืืจ ืืึธืื ืึท ืืืืืืืข ืืขื ืืฉ, ืืื ืืืึธืก ืืืจ ืงืจืึธื ืคืขืจืืขื ืืขืืงืืืื ืืื ืืืจ ื ืืฆื ืื TIN ืืื ืึท ืฉืืืกื.
^person(1234567, โfirstnameโ) = โSergeyโ
^person(1234567, โlastnameโ) = โKamenevโ
^person(1234567, โphoneโ) = โ+74995555555
...ืืื ืกืืจ ืฆื ืืึธืื ืึท ืฉื ืขื ืืืื ืืืจื ืืขืฆืืข ื ืึธืืขื ืืื ืขืจืฉืืขืจ ื ืึธืืขื, ืืืจ ืืขืืืื ืื ^ ืืื ืืขืงืก ืฉืืืกื.
^index(โKamenevโ, โSergeyโ, 1234567) = 1ืึผืื ืื ืืึทืืึทืืืืก ืืึธื ืืืื ืงืึธื ืกืืกืืขื ื, ืืืจ ืืืื ืืืืื ืื ืคึผืขืจืกืึธื ืึท ืืื ืืึธืก:
TSTART
^person(1234567, โfirstnameโ) = โSergeyโ
^person(1234567, โlastnameโ) = โKamenevโ
^person(1234567, โphoneโ) = โ+74995555555
^index(โKamenevโ, โSergeyโ, 1234567) = 1
TCOMMITืืขืจืืืขืจ, ืืืขื ืืืืืืื ื ืืืจ ืืืื ืืืื ื ืืฆื ืึท ืืจืึทื ืกืึทืงืืืึธื:
TSTART
Kill ^person(1234567)
ZKill ^index(โKamenevโ, โSergeyโ, 1234567)
TCOMMITืืื ืื ืืขืจืข ืืืขืจืืขืจ, ืื ืคืืืคืืืื ื ืคืื ืื ืงืึธื ืกืืกืืขื ืกื ืคืึธืืขืจืื ื ืจืขืกืฅ ืืขืืึทืืจืข ืืืืฃ ืื ืคึผืืืืฆืขืก ืคืื ืื ืคึผืจืึธืืจืึทืืืกื. ืืืขืจ ืืืขื ืขืก ืงืืื ืฆื ืืืึธืืึทืืก, ืืึธืก ืืื ื ืึธืจืืึทื, ืจืขืื ืฆื ืืืืขืจ ื ืืืขืจืืง-ืืืจืื ื ืึทืืืจ.
3. ืืคืืขืืื ืืขืจืืงืืื
ืืืก ืืื ืืื ืื ืืืืืื ืึธื ืืืืื. ืคืืืข ืืืืขืจื ืกืืืืึทืืืืื ืืึทืกืื ืึทืจืืขื ืืืืฃ ืืขืจ ืืขืืืืงืขืจ ืืึทืืึทืืืืก, ืืฉืึทื ืืื ื ืื ืืขืืืข ืืึทืื.
ืื ืกืืืืึทืฆืืข ืืื ืคืึทืจืืืืึทืืืขื ืฆื ืืืขื ืคืืืข ืืืืขืจื ืกืืืืึทืืืืื ืืึทืกืื ืึทืจืืขื ืืื ืืขืจ ืืขืืืืงืขืจ ืงืึธื ืจืืคึผืึทืืึทืืึธืจื ืืื ืคึผืจืืืืจื ืฆื ืกืืืืึทืืืืื ืืึทืกืื ืืืขืจืืขืื ืขื ืืขืจืื ืืขื ืฆื ืคืืืข ืืขืงืขืก ืืื ืึทืืึธื.
ืื ืืึทืืึทืืืืก ืืึธื ืกืึธืจื ืขืก ืึทืืข ืืืืก ืืื ืคืึทืงืืืฉ ืฆืืื. ืงืึทื ืกืืืขืจืื ื ืึทื ืืื ืขืจื ืกื ืงืึธืืคึผืึทื ืืขืก ืขืก ืืื ืืคืืื ืึท ืกืคึผืขืฆืืขื ืืขื ืืฉ ืืืึธืก ืืื ืคืึทืจืึทื ืืืืึธืจืืืขื ืคึฟืึทืจ ืืืขืจืกืืข ืงืึธื ืืจืึธื (ืคึฟืึทืจ ืืขืจืืืฉืื ื ืฆืืืืืื, ืจืืืึทืืืืื ื ืงืึธื ืคืืืงื, ืืื"ื ื), ืืื ืื ืืึทืืึทืืืืก ืืืื ืืึธื ืึทืืข ืืขื ืืื ืคืึทืงืืืฉ ืฆืืื, ืื ืงืึทืืคึผืืขืงืกืืื ืคืื ืื ืึทืจืืขื ืืื ืื ืจืืืืืง ืคืื ืื ืึทืจืืขื. ืืึทืืึทืืืืก ืคึผืืึทื ืืื ืงืึธื ืืืึธืก ืกืขืจืืืขืก ืขืก.
ืื ืืึทืืึทืืืืก ืงืขื ื ืืฉื ืคึฟืึทืจืฉืืืื ืื ืืืึทืืฉ ืคืื ืื ืึทืงืฉืึทื ื ืืืจืืืขืงืึธืื ืืืจื ืืืืขืจื ืฆื ืืืกืืืืื ืงืึธื ืคืืืงื ืืืื ืืื ืึทืจืืขืื ืืืืฃ ืื ืืขืืืข ืืึทืื. ืขืก ืงืขื ื ืึธืจ ืืคืืึทืื ืืืื ืืจืึทื ืกืึทืงืืืึธื ืืืึธืก ืงืึธื ืคืืืงื ืืื ืื ืืขืจื, ืึธืืขืจ ืืืกืคืืจื ืืื ืกืึทืงืืืขื ืืฉืึทืื.
ืื ืื ืืขืจ ืคึผืจืึธืืืขื ืืื ืึทื ืืขืฉืึทืก ืื ืืืจืืคืืจืื ื ืคืื ืึท ืืจืึทื ืกืึทืงืืืึธื (ืืืืืขืจ ืึท ืืืขืจืืขืื), ืื ืฉืืึทื ืคืื ืื ืืึทืืึทืืืืก ืงืขื ืืืื ืกืชืืจื, ืึทืืื ืขืก ืืื ืืืืืืจืึทืืึทื ืึทื ืื ืืขืจืข ืืจืึทื ืืึทืงืฉืึทื ื ืืึธื ื ืื ืืึธืื ืฆืืืจืื ืฆื ืื ืกืชืืจื ืฉืืึทื ืคืื ืื ืืึทืืึทืืืืก, ืืืึธืก ืืื ืึทืืฉืืืื ืืื ืจืืืืืฉืึทื ืึทื ืืึทืืึทืืืืกืื. ืืื ืคืืืข ืืืขืื: ืงืจืืืืืื ื ืกื ืึทืคึผืฉืึทืฅ, ืืืืื-ืืืขืจืกืืข ืจืึธืื ืืื ืขืืง.
ืืืขื ืขืงืกืึทืงืืืืื ื ืืจืึทื ืืึทืงืฉืึทื ื ืืื ืคึผืึทืจืึทืืขื, ืขืก ืืื ืืืืืืืง ืคึฟืึทืจ ืืื ืื ืึทื ืืื ืืึธื ื ืื ืึทืจืืึทื ืืืฉื ืืื ืืื ืืขืืขืจ ืื ืืขืจืขืจ. ืืืก ืืื ืื ืคืึทืจืืึธื ืคืื ืืคืืขืืื ืืขืจืืงืืื.
SQL ืืืคืืื ื 4 ืืคืืขืืื ืืขืจืืงืืื ืืขืืืขืืก:
- ืืืืขื ืขื ืึทื ืงืึทืืืื
- ืืืืขื ืขื ืงืึทืืืืึทื
- ืจืืคึผืขืึทืืึทืืึทื ืืืืขื ืขื
- SERIALIZABLE
ืืื ืก ืงืืง ืืืึท ืืขืืขืจ ืืืจืื ืกืขืคึผืขืจืึทืืื. ืื ืงืึธืก ืคืื ืืืคึผืืึทืืขื ืื ื ืืขืืขืจ ืืืจืื ืืืึทืงืกื ืึผืืขื ืขืงืกืคึผืึธืื ืขื ืฉืึทืื.
ืืืืขื ืขื ืึทื ืงืึทืืืื - ืืึธืก ืืื ืื ืืึธืืึทืกื ืืืจืื ืคืื ืืคืืขืืื ืืขืจืืงืืื, ืึธืืขืจ ืืื ืืขืจ ืืขืืืืงืขืจ ืฆืืื ืื ืคืึทืกืืึทืกื. ืืจืึทื ืืึทืงืฉืึทื ื ืงืขื ืขื ืืืืขื ืขื ืขื ืืขืจืื ืืขื ืืขืืืื ืืืจื ืืขืืขืจ ืื ืืขืจืขืจ.
ืืืืขื ืขื ืงืึทืืืืึทื ืืื ืืขืจ ืืืืึทืืขืจ ืืืจืื ืคืื ืืคืืขืืื ืืขืจืืงืืื, ืืืึธืก ืืื ืึท ืงืึธืืคึผืจืึธืืืก. ืืจืึทื ืืึทืงืฉืึทื ื ืงืขื ืขื ื ืืฉื ืืืืขื ืขื ืืขืืขืจ ืื ืืขืจืข ืก ืขื ืืขืจืื ืืขื ืืืืืขืจ ืื ืืืขืจืืขืื, ืึธืืขืจ ืืื ืงืขื ืขื ืืืืขื ืขื ืงืืื ืขื ืืขืจืื ืืขื ืืขืืืื ื ืึธื ืื ืืืขืจืืขืื.
ืืืื ืืืจ ืืึธืื ืึท ืืึทื ื ืืจืึทื ืกืึทืงืืืึธื ื 1, ืืขืฉืึทืก ืืืึธืก ืงืึทืืืฅ ืืขื ืืืขื ืึธืจื ืืื ืืจืึทื ืืึทืงืฉืึทื ื ื 2, ื 3 ... ืื, ืืืึธืก ืืขืืจืืขื ืืื ืื ืืขืืืข ืืึทืื ืืื ื 1, ืืืขื ืืืจ ืืขืื ืืึทืื ืืื ื 1, ืืืจ ืืืขืื ืืึทืงืืืขื ืึท ืึทื ืืขืจืฉ ืจืขืืืืืึทื ืืขืืขืจ ืืึธื. ืืขื ืืขืจืฉืืื ืื ื ืืื ืืขืจืืคื ื ืื-ืจืขืคึผืขืึทืืึทืืืข ืืืืขื ืขื.
ืจืืคึผืขืึทืืึทืืึทื ืืืืขื ืขื - ืืื ืืขื ืืคืืขืืื ืืขืจืืงืืื ืืืจืื ืืืจ ืืึธื ื ืื ืืึธืื ืื ืืขืจืฉืืื ืื ื ืคืื ื ืื-ืจืขืคึผืขืึทืืึทืืืข ืืืืขื ืขื, ืจืขืื ืฆื ืืขื ืคืึทืงื ืึทื ืคึฟืึทืจ ืืขืืขืจ ืืงืฉื ืฆื ืืืืขื ืขื ืืึทืื, ืึท ืืึธืืขื ืืืืื ืคืื ืื ืจืขืืืืืึทื ืืึทืื ืืื ืืืฉืืคื ืืื ืืืขื ืจืืืื ืืื ืืขืจ ืืขืืืืงืขืจ ืืจืึทื ืกืึทืงืืืึธื, ืื ืืึทืื ืคืื ืื ืืึธืืขื ืืืืื ืืื ืืขื ืืฆื. ืึธืืขืจ, ืขืก ืืื ืืขืืืขื ืฆื ืืืืขื ืขื ืคืึทื ืืึธื ืืึทืื ืืื ืืขื ืืคืืขืืื ืืขืจืืงืืื ืืืจืื. ืืึธืก ืจืขืคืขืจืก ืฆื ืืืืขื ืขื ื ืืึทืข ืจืึธืื ืืืึธืก ืืขื ืขื ืฆืืืขืืขืื ืืืจื ืคึผืึทืจืึทืืขื ืืืืื ืืขื ืืจืึทื ืืึทืงืฉืึทื ื.
SERIALIZABLE - ืื ืืขืืกืื ืืืจืื ืคืื ืื ืกืึทืืืืฉืึทื. ืขืก ืืื ืงืขืจืึทืงืืขืจืืืื ืืืจื ืื ืคืึทืงื ืึทื ืืึทืื ืืขื ืืฆื ืืื ืงืืื ืืืขื ืืื ืึท ืืจืึทื ืกืึทืงืืืึธื (ืืืืขื ืขื ืึธืืขืจ ืืฉืึทื ืืื ื) ืืื ืืืจืขืืืืื ืคึฟืึทืจ ืื ืืขืจืข ืืจืึทื ืืึทืงืฉืึทื ื ืืืืื ื ืึธื ืื ืงืึทืืคึผืืืฉืึทื ืคืื ืืขืจ ืขืจืฉืืขืจ ืืจืึทื ืกืึทืงืืืึธื.
ืขืจืฉืืขืจ, ืืึธืื ืก ืจืขืืขื ืขื ืืืืก ืฆื ืขืก ืืื ืืคืืขืืื ืืขืจืืงืืื ืคืื ืึทืคึผืขืจืืืฉืึทื ื ืืื ืึท ืืจืึทื ืกืึทืงืืืึธื ืคืื ืื ืืืืคึผื ืคืึธืืขื. ืืื ืก ืขืคืขื ืขื 2 ืืืึธืงืืึทื ืคึฟืขื ืฆืืขืจ.
Kill ^t
Write ^t(1)
2
TSTART
Set ^t(1)=2ืขืก ืืื ืงืืื ืืคืืขืืื ืืขืจืืงืืื. ืืืื ืคึฟืึธืืขื ืืขื ืืืึธืก ืืขืจ ืฆืืืืืืขืจ ืืืึธืก ืืึธื ืืขืขืคึฟื ื ืืขื ืืจืึทื ืืึทืงืฆืืข ืืื.
ืืื ืก ืืขื ืืืื ืืจืึทื ืืึทืงืฉืึทื ื ืคืื ืคืึทืจืฉืืืขื ืข ืคึฟืขืืขื ืืขื ืืืึธืก ืืื ืืขืฉืขืขื ืืฉ ืืื ืืื.
ืืื ืก ืขืคืขื ืขื 2 ืืืึธืงืืึทื ืคึฟืขื ืฆืืขืจ ืืื ืขืคืขื ืขื 2 ืืจืึทื ืืึทืงืฉืึทื ื ืืื ืคึผืึทืจืึทืืขื.
kill ^t
TSTART
Write ^t(1)
3
TSTART
Set ^t(1)=3
ืคึผืึทืจืึทืืขื ืืจืึทื ืืึทืงืฉืึทื ื ืืขื ืืขืืขืจ ืื ืืขืจืข ืก ืืึทืื. ืึทืืื, ืืืจ ืืึธืื ืื ืกืืืคึผืืึทืกื, ืึธืืขืจ ืืืื ืื ืคืึทืกืืึทืกื ืืคืืขืืื ืืขืจืืงืืื ืืืจืื, ืืืืขื ืขื UNCOMMITED.
ืืื ืคึผืจืื ืฆืืคึผ, ืืึธืก ืงืขื ืืืื ืืขืจืืืึทืจื ืคึฟืึทืจ ืืืึธืืืึทืื, ืคึฟืึทืจ ืืืึธืก ืคืึธืจืฉืืขืืื ื ืืื ืฉืืขื ืืืง ืืขืืืขื ืึท ืืืืืขืจืงืืึทื.
ืืืึธืก ืืืื ืืืจ ืืึทืจืคึฟื ืึท ืืขืืขืจ ืืืจืื ืคืื ืืคืืขืืื ืืขืจืืงืืื ืืื ืึทืคึผืขืจืืืฉืึทื ื ืืืืฃ ืืืึธืืืึทืื?
ืืึธ ืืืจ ืืึทืจืคึฟื ืฆื ืืจืึทืืื ืืืขืื ืืืึธืก ืืืึธืืึทืืืึธื ืืขืืืขืืก ืืขื ืขื ืืืื ืืืจืฃ ืืื ืืื ืืื ืึทืจืืขื.
ืื ืืขืืกืื ืืคืืขืืื ืืขืจืืงืืื ืืืจืื, SERIALIZE, ืืืื ืึทื ืืขืจ ืจืขืืืืืึทื ืคืื ืืจืึทื ืืึทืงืฉืึทื ื ืขืงืกืึทืงืืืืึทื ืืื ืคึผืึทืจืึทืืขื ืืื ืขืงืืืืืืึทืืขื ื ืฆื ืืืืขืจ ืกืึทืงืืืขื ืืฉืึทื ืืืจืืคืืจืื ื, ืืืึธืก ืืขืจืึทื ืืื ืืขืจ ืึทืืืขืง ืคืื ืงืึทืืืืฉืึทื ื.
ืืืจ ืงืขื ืขื ืืึธื ืืึธืก ืืื ืงืืื ืืึทืงืก ืืื ืึธืืืืฉืขืงืืกืงืจืืคึผื, ืืืึธืก ืืึธืื ืึท ืคึผืืึทืฅ ืคืื ืคืึทืจืฉืืืขื ืข ื ืืฆื: ืืืจ ืงืขื ืขื ืืึธื ืจืขืืืืขืจ, ืื ืงืจืึทืืขื ืืึทื, ืงืืืคื ืืึทืงืื ื ืืื ืื ืืึทืคึฟืขื. .
ื ืืืขืจืืงืขืจ ืืคืืขืืื ืืขืจืืงืืื ืืขืืืขืืก ืืขื ืขื ืืึทื ืื-ืึธืคืก ืืืืืื ื ืฆื ืคืึทืจืืจืขืกืขืจื ืื ืืึทืืึทืืืืก ืืืืงืืึทื.
ืืื ืก ืืขื ืืื ืืืจ ืงืขื ืขื ืืขืจืืจืืืื ืคืึทืจืฉืืืขื ืข ืืขืืืขืืก ืคืื ืืคืืขืืื ืืขืจืืงืืื ื ืืฆื ืืึทืงืก.
ืืขืจ ืึธืคึผืขืจืึทืืึธืจ ืึทืืึทืื ืืืจ ืฆื ื ืขืืขื ื ืื ืืืืื ืืืกืฉืืืกืืง ืืึทืงืก ืฆื ืืืืฉื ืืึทืื, ืึธืืขืจ ืืืื ืึทืืื ืืขืจืืคืขื ืข ืฉืขืจื ืืึทืงืก, ืืืึธืก ืงืขื ืขื ื ืขืืขื ืขืืืขืืข ืคึฟืขืืขื ืืื ืคึผืึทืจืึทืืขื ืืืขื ืืื ืืึทืจืคึฟื ืฆื ืืืืขื ืขื ืืึทืื ืืืึธืก ืืึธื ื ืืฉื ืืืื ืืฉืืื ืืืฉื ืืืจื ืื ืืขืจืข ืคึผืจืึทืกืขืกืึทื ืืขืฉืึทืก ืื ืืืืขื ืขื ืคึผืจืึธืฆืขืก.
ืืขืจ ืืื ืคึฟืึธืจืืึทืฆืืข ืืืขืื ืื ืฆืืืื-ืคืึทืกืข ืืืึทืงืื ื ืืืคึฟื ืืื ืจืืกืืฉ ืืื ืขื ืืืืฉ:
โ
โ
ืื ืฉืืืขืจืืงืืื ืืื ืึทื ืืขืฉืึทืก ืึท ืืจืึทื ืกืึทืงืืืึธื ืื ืฉืืึทื ืคืื ืื ืืึทืืึทืืืืก ืงืขื ืืืื ืกืชืืจื, ืึธืืขืจ ืื ืกืชืืจื ืืึทืื ืืื ืงืขื ืืืง ืคึฟืึทืจ ืื ืืขืจืข ืคึผืจืึทืกืขืกืึทื. ืืื ืฆื ืืืกืืืึทืื ืืขื?
ื ืืฆื ืืึทืงืก, ืืืจ ืืึทืื ืืืืืึทืืืืืื ืคึฟืขื ืฆืืขืจ ืืื ืืืึธืก ืื ืฉืืึทื ืคืื ืื ืืึทืืึทืืืืก ืืืขื ืืืื ืงืึธื ืกืืกืืขื ื. ืืื ืึทืืข ืึทืงืกืขืก ืฆื ืึทืืึท ืคึฟืขื ืฆืืขืจ ืืืืืึทืืืืืื ืคืื ืื ืืกืืื ืฉืืึทื ืืืขื ืืืื ืงืึทื ืืจืึธืืื ืืืจื ืืึทืงืก.
ืฉืขืจื ืืึทืงืก ืืืืฃ ืื ืืขืืืข ืืึทืื ืืขื ืขื ืจืืืืึทืืึทื - ืขืืืขืืข ืคึผืจืึทืกืขืกืึทื ืงืขื ืขื ื ืขืืขื ืืื. ืื ืืึทืงืก ืคืึทืจืืืึทืื ืื ืืขืจืข ืคึผืจืึทืกืขืกืึทื ืคืื ืืฉืึทื ืืื ื ืืึทืื, ื.ื. ืืื ืืขื ืขื ืืขื ืืฆื ืฆื ืคืึธืจืขื ืคึฟืขื ืฆืืขืจ ืคืื ืงืึธื ืกืืกืืขื ื ืืึทืืึทืืืืก ืฉืืึทื.
ืืืกืฉืืืกืืง ืืึทืงืก ืืขื ืขื ืืขื ืืฆื ืคึฟืึทืจ ืืึทืื ืขื ืืขืจืื ืืขื - ืืืืื ืืืื ืคึผืจืึธืฆืขืก ืงืขื ืขื ื ืขืืขื ืึทืืึท ืึท ืฉืืึธืก. ืึท ืืืกืฉืืืกืืง ืฉืืึธืก ืงืขื ืขื ืืืื ืืขื ืืืขื ืืืจื:
- ืงืืื ืคึผืจืึธืฆืขืก ืืืื ืื ืืึทืื ืืขื ืขื ืคืจืื
- ืืืืื ืืขืจ ืคึผืจืึธืฆืขืก ืืืึธืก ืืื ืึท ืฉืขืจื ืฉืืึธืก ืืืืฃ ืืขื ืืึทืื ืืื ืืื ืืขืืืขื ืืขืจ ืขืจืฉืืขืจ ืฆื ืืขืื ืึท ืืืกืฉืืืกืืง ืฉืืึธืก.

ืื ื ืขืจืึธืืขืจ ืื ืืืืืึทืืืืืื ืคึฟืขื ืฆืืขืจ, ืื ืืขืจ ืื ืืขืจืข ืคึผืจืึทืกืขืกืึทื ืืึธืื ืฆื ืืืึทืจืื ืคึฟืึทืจ ืขืก, ืึธืืขืจ ืื ืืขืจ ืงืึธื ืกืืกืืขื ื ืื ืฉืืึทื ืคืื ืื ืืึทืืึทืืืืก ืืื ืขืก ืงืขื ืขื ืืืื.
READ_COMMITTED - ืื ืขืกืึทื ืก ืคืื ืืขื ืืืจืื ืืื ืึทื ืืืจ ืืขื ืืืืื ืืืืื ืืขื ืืึทืื ืคืื ืื ืืขืจืข ืคึฟืขืืขื. ืืืื ืื ืืึทืื ืืื ืื ืื ืืขืจ ืืจืึทื ืกืึทืงืืืึธื ืืื ื ืึธื ื ืืฉื ืืืืื ืืขื, ืืืจ ืืขื ืื ืึทืื ืืืขืจืกืืข.
ืืึธืก ืึทืืึทืื ืืื ืื ืฆื ืคึผืึทืจืึทืืขืืืืืจื ืื ืึทืจืืขื ืึทื ืฉืืึธื ืคืื ืืืืจืื ืคึฟืึทืจ ืื ืฉืืึธืก ืฆื ืืืื ืืืคืจืืื.
ืึธื ืกืคึผืขืฆืืขื ืืจืืงืก, ืืืจ ืืืขืื ื ืืฉื ืงืขื ืขื ืฆื ืืขื ืื ืึทืื ืืืขืจืกืืข ืคืื โโืื ืืึทืื ืืื IRIS, ืึทืืื ืืืจ ืืืขืื ืืึธืื ืฆื ืืึธื ืืื ืืึทืงืก.
ืึทืงืงืึธืจืืื ืืื, ืืืจ ืืืขืื ืืึธืื ืฆื ื ืืฆื ืฉืขืจื ืืึทืงืก ืฆื ืืึธืื ืืึทืื ืืืืขื ืขื ืืืืื ืืื ืืึธืืืึทื ืฅ ืคืื ืงืึธื ืกืืกืืขื ืกื.
ืืื ืก ืืึธืื ืืืจ ืืึธืื ืึท ืืึทื ืืฆืขืจ ืืึทืืข ^ืืขื ืืฉ ืืืึธืก ืึทืจืืืขืจืคืืจื ืืขืื ืฆื ืืขืืขืจ ืื ืืขืจืขืจ.
ืืึธืืขื ื ืคืื ืึทืจืืืขืจืคืืจื ืคืื ืืขื ืืฉ 123 ืฆื ืืขื ืืฉ 242:
LOCK +^person(123), +^person(242)
Set ^person(123, amount) = ^person(123, amount) - amount
Set ^person(242, amount) = ^person(242, amount) + amount
LOCK -^person(123), -^person(242)ืืขืจ ืืึธืืขื ื ืคืื ืืขืื ืื ืกืืืข ืคืื โโืืขืื ืคืื ืืขื ืืฉ 123 ืืืืืขืจ ืืืืืืื ื ืืืื ืืืื ืืืืืืื ืืืจื ืึท ืืืกืฉืืืกืืง ืืืึธืง (ืืืจื ืคืขืืืงืืึทื):
LOCK +^person(123)
Write ^person(123)ืืื ืืืื ืืืจ ืืึทืจืคึฟื ืฆื ืืืืึทืื ืื ืืฉืืื ืกืืึทืืืก ืืื ืืืื ืคืขืจืืขื ืืขืืข ืืฉืืื, ืืืจ ืงืขื ืขื ื ืืฆื ืึท ืฉืขืจื ืฉืืึธืก ืึธืืขืจ ื ืืฉื ื ืืฆื ืขืก:
LOCK +^person(123)#โSโ
Write ^person(123)ืึธืืขืจ, ืืืื ืืืจ ืืืขืจื ืขืืขื ืึทื ืืึทืืึทืืืืก ืึทืคึผืขืจืืืฉืึทื ื ืืขื ืขื ืืืจืืืขืงืึธืื ืึผืืขื ืืืืงืขืฃ (ืืึธืื ืืืจ ืืขืจืืึธื ืขื ืืืจ ืึทื ืืืึธืืืึทืื ืืขื ืขื ืึท ืคืื ื ืืืขืจืืงืขืจ ืืืจืื ืกืืจืืงืืืจ ืืื ืึท ืจืืืืืฉืึทื ืึทื ืืืฉ), ืื ื ืืื ืคึฟืึทืจ ืืขื ืืืจืื ืืืงืจืืกืึทื.
ืจืืคึผืขืึทืืึทืืึทื ืืืืขื ืขื - ืืขื ืืคืืขืืื ืืขืจืืงืืื ืืืจืื ืึทืืึทืื ืคึฟืึทืจ ืงืืืคื ืืืืขื ืขื ืคืื ืืึทืื ืืืึธืก ืงืขื ืขื ืืืื ืืึทืืึทืคืืื ืืืจื ืงืึทื ืงืขืจืึทื ื ืืจืึทื ืืึทืงืฉืึทื ื.
ืึทืงืงืึธืจืืื ืืื, ืืืจ ืืืขืื ืืึธืื ืฆื ืฉืืขืื ืึท ืฉืขืจื ืฉืืึธืก ืืืืฃ ืืืืขื ืขื ืื ืืึทืื ืืืึธืก ืืืจ ืืืืฉื ืืื ืืืกืฉืืืกืืง ืืึทืงืก ืืืืฃ ืื ืืึทืื ืืืึธืก ืืืจ ืืืืฉื.
ืฆืื ืืืืง, ืื LOCK ืึธืคึผืขืจืึทืืึธืจ ืึทืืึทืื ืืืจ ืฆื ืจืฉืืื ืืื ืืขืืึทื ืึทืืข ืื ื ืืืืืง ืืึทืงืก, ืคืื ืืืึธืก ืขืก ืงืขื ืขื ืืืื ืึท ืคึผืืึทืฅ, ืืื ืืืื ืืขืจืงืืขืจืื ื.
LOCK +^person(123, amount)#โSโ
ััะตะฝะธะต ^person(123, amount)ืื ืืขืจืข ืึทืคึผืขืจืืืฉืึทื ื (ืืื ืืขื ืฆืืึทื ืคึผืึทืจืึทืืขื ืคึฟืขืืขื ืคึผืจืืืืจื ืฆื ืืืืฉื ^ ืืขื ืืฉ (123, ืกืืืข), ืึธืืขืจ ืงืขื ืขื ื ืืฉื)
LOCK +^person(123, amount)
ะธะทะผะตะฝะตะฝะธะต ^person(123, amount)
LOCK -^person(123, amount)
ััะตะฝะธะต ^person(123, amount)
LOCK -^person(123, amount)#โSโืืืขื ืืืกืืื ื ืืึทืงืก ืืคืืขืฉืืืื ืืืจื ืงืึธืืืึทืก, ืืื ืืขื ืขื ืืขื ืืืขื ืกืึทืงืืืขื ืืฉืึทืื, ืึธืืขืจ ืืืื ืืืจ ืืึธื ืืึธืก:
LOCK +(^person(123),^person(242))ืืขืจื ืึธื ืืื ืืขื ืขื ืืขื ืืืขื ืึทืืึธืืืฉืข ืึทืืข ืืื ืึทืืึธื.
SERIALISE - ืืืจ ืืืขืื ืืึธืื ืฆื ืฉืืขืื ืืึทืงืก ืึทืืื ืึทื ืืขืกืึธืฃ ืึทืืข ืืจืึทื ืืึทืงืฉืึทื ื ืืืึธืก ืืึธืื ืคึผืจืึธืกื ืืึทืื ืืขื ืขื ืขืงืกืึทืงืืืืึทื ืกืึทืงืืืขื ืืฉืึทืื. ืคึฟืึทืจ ืืขื ืฆืืืึทื ื, ืจืืึฟ ืืึทืงืก ืืึธื ืืืื ืืืกืฉืืืกืืง ืืื ืืขื ืืืขื ืืืืฃ ืื ืงืืขื ืกืืขืจ ืืขืืืื ืคืื ืืขืจ ืืืขืื ืคึฟืึทืจ ืคืึธืจืฉืืขืืื ื.
ืืืื ืืืจ ืจืขืื ืืืขืื ืืขืืืืื ื ืืขืื ืืื ืื ืืืืืืืข ืืขื ืืฉ, ืืืืื ืื SERIALISE ืืคืืขืืื ืืขืจืืงืืื ืืืจืื ืืื ืคึผืึทืกืืง ืคึฟืึทืจ ืืื, ืืืืึทื ืืขืื ืืืื ืืืื ืคืืจืืจืืื ืฉืืจืขื ื ืกืึทืงืืืขื ืืฉืึทืื, ืึทื ืืขืจืฉ ืขืก ืืื ืืขืืืขื ืฆื ืคืึทืจืืจืขื ืืขื ืื ืืขืืืข ืกืืืข ืขืืืขืืข ืืึธื.
4. ืืขืืืขืจ
ืืื ืืขืคืืจื ืืขืกืฅ ืืื ืฉืืืขืจ ืงืึทืืื ื ืคืื ืืขื ืงืึทื ืืืื ืขืจ ื ืืฆื
docker kill my-irisืื ืืึทืืข ืืื ืืื ืืขืืื ื ืืึธืืขืจืึทืืขื. ืงืืื ืคืจืืืืขืืขื ืืขื ืขื ืืืืขื ืึทืคืืื.
ืกืึธืฃ
ืคึฟืึทืจ ืืืึธืืึทืืก, InterSystems IRIS ืืื ืืจืึทื ืกืึทืงืืืึธื ืฉืืืฆื. ืืื ืืขื ืขื ืืืืช ืึทืืึธืืืฉืข ืืื ืคืึทืจืืึธืืืขื. ืฆื ืขื ืฉืืจ ืงืึธื ืกืืกืืขื ืกื ืคืื ืึท ืืึทืืึทืืืืก ืืืืืจื ืืืืฃ ืืืึธืืืึทืื, ืคึผืจืึธืืจืึทืืืกื ืืฉืชืืืืช ืืื ืื ื ืืฆื ืคืื ืืจืึทื ืืึทืงืฉืึทื ื ืืขื ืขื ืคืืจืืื ืื, ืืืืึทื ืขืก ืืื ื ืืฉื ืืึธืื ืงืึธืืคึผืืขืงืก ืืขืืืื-ืืื ืงืึทื ืกืืจืึทืงืฉืึทื ื ืึทืืึท ืืื ืคืจืขืื ืฉืืืกืืขื.
ืื ืืคืืขืืื ืืขืจืืงืืื ืืืจืื ืคืื ืืืึธืืึทืืก ืึธื ื ืืฆื ืืึทืงืก ืืื ืืืืขื ืขื UNCOMMITED, ืืื ืืืขื ื ืืฆื ืืึทืงืก ืขืก ืงืขื ืขื ืืืื ืื ืฉืืจื ืึทืจืืืฃ ืฆื ืื SERIALISE ืืืจืื.
ืื ืงืขืจืขืงืื ืึทืก ืืื ืืืืงืืึทื ืคืื ืืจืึทื ืืึทืงืฉืึทื ื ืืืืฃ ืืืึธืืึทืืก ืืขืคึผืขื ืืก ืืืืขืจ ืืืืฃ ืื ืกืงืืื ืคืื ืื ืคึผืจืึธืืจืึทืืืกื: ืื ืืขืจ ืืืืืืื ืฉืขืจื ืืึทืงืก ืืขื ืขื ืืขื ืืฆื ืืืขื ืืืืขื ืขื, ืื ืืขืืขืจ ืื ืืืจืื ืคืื ืืคืืขืืื ืืขืจืืงืืื, ืืื ืื ืืขืจ ืฉืืึธื ืืืกืฉืืืกืืง ืืึทืงืก ืืขื ืขื ืืขื ืืืขื, ืื ืคืึทืกืืขืจ ืื ืคืึธืจืฉืืขืืื ื.
ืืงืืจ: www.habr.com
