ืžืขืœื“ื•ื ื’ ืคื•ืŸ Tarantool 2.8 DBMS

ื ื ื™ื™ึทืข ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ื™ Tarantool 2.8 DBMS ืื™ื– ื‘ื ื™ืžืฆื, ื•ื•ืึธืก ื’ื™ื˜ ืฉื˜ืขื ื“ื™ืง ื“ืึทื˜ืŸ ืกื˜ืึธืจื™ื“ื–ืฉ ืžื™ื˜ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ืจื™ื˜ืจื™ื•ื•ื“ ืคื•ืŸ ื“ื™ ืื™ืŸ-ื–ื™ืงืึธืจืŸ ื“ืึทื˜ืึทื‘ื™ื™ืก. ื“ื™ ื“ื‘ืžืก ืงืึทืžื‘ื™ื™ื ื– ื“ื™ ื”ื•ื™ืš-ื’ื™ื›ืงื™ื™ึทื˜ ืคื•ืŸ ืึธื ืคึฟืจืขื’ ืคึผืจืึทืกืขืกื™ื ื’ ื›ืึทืจืึทืงื˜ืขืจื™ืกื˜ื™ืฉ ืคื•ืŸ ื ืึธืกืงืœ ืกื™ืกื˜ืขืžืขืŸ (ืœืžืฉืœ, ืžืขืžืงืึทื˜ืฉืขื“ ืื•ืŸ ืจืขื“ื™ืก) ืžื™ื˜ ื“ื™ ืจื™ืœื™ื™ืึทื‘ื™ืœืึทื˜ื™ ืคื•ืŸ ื‘ืขืงืึทื‘ืึธืœืขื“ื™ืง ื“ื‘ืžืก (ืึธืจืึทืงืœืข, ืžื™ืกืงืœ ืื•ืŸ ืคึผืึธืกื˜ื’ืจืขืกืงืœ). Tarantool ืื™ื– ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ C ืื•ืŸ ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืฉืึทืคึฟืŸ ืกื˜ืึธืจื“ ืคึผืจืึธื•ืกื™ื“ื–ืฉืขืจื– ืื™ืŸ Lua. ื“ืขืจ ืงืึธื“ ืื™ื– ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื•ื ื˜ืขืจ ื“ื™ BSD ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ.

ื“ื™ DBMS ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื™ืคืขืงื˜ื™ื•ื•ืœื™ ืึทืจื‘ืขื˜ืŸ ืžื™ื˜ ื’ืจื•ื™ืก ื•ื•ืึทืœื™ื•ืžื– ืคื•ืŸ ื“ืึทื˜ืŸ ืื•ื ื˜ืขืจ ื”ื•ื™ืš ืœืึธื•ื“ื–. ืฆื•ื•ื™ืฉืŸ ื“ื™ ืคึฟืขื™ึดืงื™ื™ื˜ืŸ ืคื•ืŸ Tarantool, ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ืฉืึทืคึฟืŸ ื”ืึทื ื“ืœืขืจืก ืื™ืŸ ื“ื™ Lua ืฉืคึผืจืึทืš (LuaJIT ืื™ื– ื’ืขื‘ื•ื™ื˜-ืื™ืŸ), ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ ื“ื™ MessagePack ืคึฟืึธืจืžืึทื˜ ื•ื•ืขืŸ ื™ืงืกื˜ืฉื™ื™ื ื“ื–ืฉื™ื ื’ ื“ืึทื˜ืŸ ืžื™ื˜ ื“ืขื ืงืœื™ืขื ื˜, ื“ื™ ื‘ื™ื™ึทื–ื™ื™ึทืŸ ืคื•ืŸ ืฆื•ื•ื™ื™ ื’ืขื‘ื•ื™ื˜-ืื™ืŸ ืขื ื“ื–ืฉืึทื ื– (ืกื˜ืึธืจื™ื“ื–ืฉ ืื™ืŸ ื‘ืึทืจืึทืŸ ืžื™ื˜ ื‘ืึทืฉื˜ืขื˜ื™ืง). ืฆื• ืึท ืฉื˜ืขื ื“ื™ืง ืคืึธืจ ืื•ืŸ ืฆื•ื•ื™ื™-ืžื“ืจื’ื” ื“ื™ืกืง ืกื˜ืึธืจื™ื“ื–ืฉ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ LSM-ื‘ื•ื™ื), ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืฆื•ื•ื™ื™ื˜ื™ืง ืฉืœื™ืกืœืขืŸ, ืคื™ืจ ื˜ื™ื™ืคึผืก ืคื•ืŸ ื™ื ื“ืขืงืกื™ื– (HASH, TREE, RTREE, BITSET), ืžื›ืฉื™ืจื™ื ืคึฟืึทืจ ืกื™ื ื˜ืฉืจืึธื ืึธื•ืก ืื•ืŸ ื™ื™ืกื™ื ื’ืงืจืึทื ืึทืก ืจืขืคึผืœืึทืงื™ื™ืฉืึทืŸ ืื™ืŸ ื‘ืขืœ-ืžืึทืกื˜ืขืจ ืžืึธื“ืข, ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืงืฉืจ ืึธื˜ืขื ื˜ืึทืงื™ื™ืฉืึทืŸ ืื•ืŸ ืึทืงืกืขืก ืงืึธื ื˜ืจืึธืœ, ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ืคึผืจืึธืฆืขืก ืกืงืœ ืงื•ื•ื™ืจื™ื–.

ื”ื•ื™ืคึผื˜ ืขื ื“ืขืจื•ื ื’ืขืŸ:

  • ืกื˜ืึทื‘ื™ืœื™ื–ืึทื˜ื™ืึธืŸ ืคื•ืŸ MVCC (Multi-Version Concurrency Control) ืื™ืŸ ื“ื™ ืžืขืžื˜ืงืก ืื™ืŸ-ื–ื™ืงืึธืจืŸ ืžืึธื˜ืึธืจ.
  • ื˜ืจืึทื ืกืึทืงื˜ื™ืึธืŸ ืฉื˜ื™ืฆืŸ ืื™ืŸ ื“ื™ IPROTO ื‘ื™ื™ื ืขืจื™ ืคึผืจืึธื˜ืึธืงืึธืœ. ื‘ื™ื– ืึทื”ืขืจ, ืึท ื˜ืจืึทื ืกืึทืงื˜ื™ืึธืŸ ืคืืจืœืื ื’ื˜ ืฆื• ืฉืจื™ื™ึทื‘ืŸ ืึท ืกื˜ืึธืจื“ ืคึผืจืึธืฆืขื“ื•ืจ ืื™ืŸ ืœื•ืึท.
  • ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืกื™ื ื˜ืฉืจืึธื ืึธื•ืก ืจืขืคึผืœืึทืงื™ื™ืฉืึทืŸ, ื•ื•ืึธืก ืึทืจื‘ืขื˜ ืื™ืŸ ื‘ืึทืฆื™ื•ื ื’ ืฆื• ื™ื—ื™ื“ ื˜ื™ืฉืŸ.
  • ื ืžืขืงืึทื ื™ื–ืึทื ืคึฟืึทืจ ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ืกื•ื•ื™ื˜ืฉื™ื ื’ ืฆื• ืึท ื‘ืึทืงืึทืคึผ ื ืึธื“ืข (ืคืึทื™ืœืึธื•ื•ืขืจ) ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ RAFT ืคึผืจืึธื˜ืึธืงืึธืœ. ืึทืกื™ื ื˜ืฉืจืึธื ืึธื•ืก WAL-ื‘ืื–ื™ืจื˜ ืจืขืคึผืœืึทืงื™ื™ืฉืึทืŸ ืื™ื– ืœืึทื ื’ ื™ืžืคึผืœืึทืžืขื ืึทื“ ืื™ืŸ Tarantool; ืื™ืฆื˜ ืื™ืจ ื˜ืึธืŸ ื ื™ื˜ ื”ืึธื‘ืŸ ืฆื• ืžืึทื ื™ื•ืึทืœื™ ืžืึธื ื™ื˜ืึธืจ ื“ื™ ื‘ืขืœ ื ืึธื“ืข.
  • ืึธื˜ืึทืžืึทื˜ื™ืง ืžืึทืกื˜ืขืจ ื ืึธื“ืข ืกื•ื•ื™ื˜ืฉื™ื ื’ ืื™ื– ืื•ื™ืš ื‘ื ื™ืžืฆื ืื™ืŸ ื“ื™ ืคืึทืœ ืคื•ืŸ ืึท ื˜ืึทืคึผืึทืœืึทื“ื–ืฉื™ ืžื™ื˜ ื“ืึทื˜ืŸ ืฉืึทืจื“ื™ื ื’ (ื“ื™ ื•ื•ืกืึทืจื“ ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืื™ื– ื’ืขื ื™ืฆื˜, ื•ื•ืึธืก ื“ื™ืกื˜ืจื™ื‘ื™ื•ืฅ ื“ืึทื˜ืŸ ืึทืจื™ื‘ืขืจ ืกืขืจื•ื•ืขืจืก ื ื™ืฆืŸ ื•ื•ื™ืจื˜ื•ืึทืœ ื‘ืึทืงืึทืฅ).
  • ื™ืžืคึผืจื•ื•ื•ื™ื ื’ ื“ื™ ืคืจื™ื™ืžื•ื•ืขืจืง ืคึฟืึทืจ ื‘ื ื™ืŸ ื˜ืึทืจืึทื ื˜ืึธืึธืœ ืงืึทืจื˜ืจืึทื“ื–ืฉืึทื– ืงื ื•ื™ืœ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ื•ื•ืขืŸ ืืจื‘ืขื˜ืŸ ืื™ืŸ ื•ื•ื™ืจื˜ื•ืึทืœ ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ. Tarantool Cartridge ืื™ืฆื˜ ื”ืืœื˜ ื“ื™ ืžืึทืกืข ื‘ืขืกืขืจ.
  • ื“ื™ ืึทืจื‘ืขื˜ ืคื•ืŸ ื“ื™ ืึทื ืกื™ื‘ืœืข ืจืึธืœืข ืคึฟืึทืจ ืงื ื•ื™ืœ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ืื™ื– ืึทืงืกืขืœืขืจื™ื™ื˜ื™ื“ ืžื™ื˜ ืึทืจื•ื™ืฃ ืฆื• 15-20 ืžืืœ. ื“ืึธืก ืžืื›ื˜ ืขืก ื’ืจื™ื ื’ืขืจ ืฆื• ืึทืจื‘ืขื˜ืŸ ืžื™ื˜ ื’ืจื•ื™ืก ืงืœืึทืกื˜ืขืจื–.
  • ื ื’ืขืฆื™ื™ึทื’ ืื™ื– ืืจื•ื™ืก ืคึฟืึทืจ ืกื™ืžืคึผืœืึทืคื™ื™ื“ ืžื™ื™ื’ืจื™ื™ืฉืึทืŸ ืคื•ืŸ ืขืœื˜ืขืจืข ื•ื•ืขืจืกื™ืขืก>1.6 ืื•ืŸ <1.10, ื•ื•ืึธืก ืื™ื– ื‘ืืจืขื›ื˜ื™ื’ื˜ ืžื™ื˜ ืึทืŸ ื ืึธืš ืึธืคึผืฆื™ืข ื‘ื™ื™ ืกื˜ืึทืจื˜ืึทืคึผ. ื‘ื™ื– ืึทื”ืขืจ, ืžื™ื’ืจืึทื˜ื™ืึธืŸ ื”ืื˜ ืฆื• ื–ื™ื™ืŸ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ื“ื•ืจืš ื“ื™ืคึผืœื•ื™ื™ื ื’ ื“ื™ ื™ื ื˜ืขืจื™ื ื•ื•ืขืจืกื™ืข 1.10.
  • ื“ื™ ืกื˜ืึธืจื™ื“ื–ืฉ ืคื•ืŸ ืงืœื™ื™ืŸ ื˜ื•ืคึผืœืขืก ืื™ื– ืึธืคึผื˜ื™ืžื™ื–ืขื“.
  • SQL ืื™ืฆื˜ ืฉื˜ื™ืฆื˜ UUIDs ืื•ืŸ ื™ืžืคึผืจื•ื•ื•ื– ื˜ื™ืคึผ ืงืึทื ื•ื•ืขืจื–ืฉืึทืŸ.

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

ืžืงื•ืจ: opennet.ru

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