Dqlite 1.0 แžŠแŸ‚แž›แž‡แžถแž€แŸ†แžŽแŸ‚แž…แŸ‚แž€แž…แžถแž™แžšแž”แžŸแŸ‹ SQLite แž–แžธ Canonical แž˜แžถแž“

Canonical แž”แžถแž“แž•แŸ’แžŸแž–แŸ’แžœแž•แŸ’แžŸแžถแž™ แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แž‚แž˜แŸ’แžšแŸ„แž„แžŸแŸ†แžแžถแž“แŸ‹ Dqlite 1.0 (Distributed SQLite) แžŠแŸ‚แž›แž”แž„แŸ’แž€แžพแžแž˜แŸ‰แžถแžŸแŸŠแžธแž“ SQL แžŠแŸ‚แž›แž”แžถแž“แž”แž„แŸ’แž€แž”แŸ‹ SQLite-compatible แžŠแŸ‚แž›แž‚แžถแŸ†แž‘แŸ’แžšแž€แžถแžšแž…แž˜แŸ’แž›แž„แž‘แžทแž“แŸ’แž“แž“แŸแž™ แž€แžถแžšแžŸแž„แŸ’แž‚แŸ’แžšแŸ„แŸ‡แžŠแŸ„แž™แžŸแŸ’แžœแŸแž™แž”แŸ’แžšแžœแžแŸ’แžแžทแž–แžธแž€แžถแžšแž”แžšแžถแž‡แŸแž™ แž“แžทแž„แž€แžถแžšแžขแžแŸ‹แžฑแž“แž€แŸ†แž แžปแžŸแžŠแŸ„แž™แž€แžถแžšแž…แŸ‚แž€แž…แžถแž™แžงแž”แž€แžšแžŽแŸแžŠแŸ„แŸ‡แžŸแŸ’แžšแžถแž™แž›แžพแžแŸ’แž“แžถแŸ†แž„แž…แŸ’แžšแžพแž“แŸ” DBMS แžแŸ’แžšแžผแžœแž”แžถแž“แžขแž“แžปแžœแžแŸ’แžแž€แŸ’แž“แžปแž„แž‘แž˜แŸ’แžšแž„แŸ‹แž‡แžถแž”แžŽแŸ’แžŽแžถแž›แŸแž™ C แžŠแŸ‚แž›แž—แŸ’แž‡แžถแž”แŸ‹แž‘แŸ…แž“แžนแž„แž€แž˜แŸ’แž˜แžœแžทแž’แžธ แž“แžทแž„ แž…แŸ‚แž€แž…แžถแž™โ€‹แžŠแŸ„แž™ แž€แŸ’แžšแŸ„แž˜แžขแžถแž‡แŸ’แž‰แžถแž”แžŽแŸ’แžŽ Apache 2.0 (SQLite แžŠแžพแž˜แžแŸ’แžšแžผแžœแž”แžถแž“แž•แŸ’แžแž›แŸ‹แž‡แžผแž“แž‡แžถแžŸแžถแž’แžถแžšแžŽแŸˆ)แŸ” แž€แžถแžšแž…แž„แž—แžถแžŸแžถแž˜แžถแž“ Go.

แž”แžŽแŸ’แžŽแžถแž›แŸแž™แž‚แžบแž‡แžถแž€แžถแžšแž”แž“แŸ’แžแŸ‚แž˜แž›แžพแž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž€แžผแžŠ SQLite แžŠแŸ‚แž›แž˜แžถแž“แžŸแŸ’แžšแžถแž”แŸ‹แžŠแŸ‚แž›แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแž–แžทแž’แžธแž€แžถแžšแž”แžŽแŸ’แžแžถแž‰แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž—แŸ’แž‡แžถแž”แŸ‹แž‚แŸ’แž“แžถแž‘แŸ…แžœแžทแž‰แž‘แŸ…แž˜แž€แž“แŸƒแžงแž‘แžถแž แžšแžŽแŸแž‡แžถแž…แŸ’แžšแžพแž“แž“แŸƒแž€แž˜แŸ’แž˜แžœแžทแž’แžธแžŠแŸ‚แž›แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž›แžพแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž•แŸ’แžŸแŸแž„แŸ—แž‚แŸ’แž“แžถแŸ” แž€แž˜แŸ’แž˜แžœแžทแž’แžธแžŠแŸ‚แž›แž…แž„แž€แŸ’แžšแž„แž‡แžถแž˜แžฝแž™ Dqlite แžขแžถแž…แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž‡แžถแž…แž„แŸ’แž€แŸ„แž˜แžŠแŸ‚แž›แžขแžแŸ‹แžฑแž“แž€แŸ†แž แžปแžŸแžŠแŸ„แž™แžแŸ’แž›แžฝแž“แžฏแž„ แžฏแž€แžšแžถแž‡แŸ’แž™แž–แžธ DBMSs แžแžถแž„แž€แŸ’แžšแŸ…แŸ” แž“แŸ…แž€แŸ’แž“แžปแž„แž€แžถแžšแžขแž“แžปแžœแžแŸ’แž Dqlite แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แžŠแŸ„แž™ Canonical แž“แŸ…แž€แŸ’แž“แžปแž„แž”แŸ’แžšแž–แŸแž“แŸ’แž’แž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แž€แžปแž„แžแžบแž“แŸแžšแžšแž”แžŸแŸ‹แžœแžถแŸ” Lxd. แž€แŸ’แž“แžปแž„โ€‹แž…แŸ†แžŽแŸ„แž˜โ€‹แž•แŸ’แž“แŸ‚แž€โ€‹แž“แŸƒโ€‹แž€แžถแžšโ€‹แžขแž“แžปแžœแžแŸ’แžโ€‹แž”แžŽแŸ’แžŽแžถแž›แŸแž™ แž€แžถแžšแž”แž„แŸ’แž€แžพแžโ€‹แžงแž”แž€แžšแžŽแŸ Internet of Things แžŠแŸ‚แž›โ€‹แžขแžแŸ‹แžฑแž“โ€‹แž…แŸ†แž–แŸ„แŸ‡โ€‹แž€แŸ†แž แžปแžŸ แž“แžทแž„โ€‹แžŠแŸ†แžŽแžพแžšแž€แžถแžšโ€‹แž€แŸ’แž“แžปแž„โ€‹แž”แŸ’แžšแž–แŸแž“แŸ’แž’โ€‹แž€แŸโ€‹แžแŸ’แžšแžผแžœโ€‹แž”แžถแž“โ€‹แž›แžพแž€โ€‹แžกแžพแž„โ€‹แž•แž„โ€‹แžŠแŸ‚แžšโ€‹แŸ”
แž‚แŸ‚แž˜- แž€แžถแžšแž‚แžŽแž“แžถ.

แžŠแžพแž˜แŸ’แž”แžธแž’แžถแž“แžถแž”แžถแž“แž“แžผแžœแž—แžถแž–แžŸแŸŠแžธแžŸแž„แŸ’แžœแžถแž€แŸ‹แž‚แŸ’แž“แžถแž€แŸ’แž“แžปแž„แž€แžถแžšแž…แž˜แŸ’แž›แž„แž‘แžทแž“แŸ’แž“แž“แŸแž™ แžœแžทแž’แžธแžŸแžถแžŸแŸ’แžแŸ’แžšแžšแžฝแž˜แž•แŸ’แžขแŸ‚แž€แž›แžพแž€แŸ’แž”แžฝแž“แžŠแŸ„แŸ‡แžŸแŸ’แžšแžถแž™แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžพ RaftแžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžพแž“แŸ…แž€แŸ’แž“แžปแž„แž‚แž˜แŸ’แžšแŸ„แž„แžŠแžผแž…แž‡แžถ etcd, RethinkDB, CockroachDB แž“แžทแž„ OpenDaylight แŸ” Dqlite แž”แŸ’แžšแžพแž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแžขแžŸแž˜แž€แžถแž›แžšแž”แžŸแŸ‹แžแŸ’แž›แžฝแž“แŸ” แž‚-แž€แŸ’แž”แžผแž“แžŸแžšแžŸแŸแžšแž‡แžถแž—แžถแžŸแžถ C แŸ” แž”แžŽแŸ’แžŽแžถแž›แŸแž™แžŠแŸ‚แž›แž•แž›แžทแžแžšแžฝแž…แžšแžถแž›แŸ‹ แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžพแžŠแžพแž˜แŸ’แž”แžธแžŠแŸ†แžŽแžพแžšแž€แžถแžšแž€แžถแžšแžแž—แŸ’แž‡แžถแž”แŸ‹ multiplex แž“แžทแž„แžšแŸ€แž”แž…แŸ†แž€แžถแžšแž…แžถแž”แŸ‹แž•แŸ’แžแžพแž˜แž“แŸƒ coroutines แž›แžธแž”แŸŠแžผแžœ ะธ libco.

แž”แžพแž”แŸ’แžšแŸ€แž”แž’แŸ€แž”แž‘แŸ…แž“แžนแž„แž‚แž˜แŸ’แžšแŸ„แž„แžŸแŸ’แžšแžŠแŸ€แž„แž‚แŸ’แž“แžถ rqliteDqlite แž•แŸ’แžแž›แŸ‹แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแž•แŸ’แž“แŸ‚แž€แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแž–แŸแž‰แž›แŸแž‰ แžขแžถแž…แž‘แŸ†แž“แžถแž€แŸ‹แž‘แŸ†แž“แž„แž‡แžถแž˜แžฝแž™แž‚แž˜แŸ’แžšแŸ„แž„ C แžŽแžถแž˜แžฝแž™ แžขแž“แžปแž‰แŸ’แž‰แžถแžแžฑแŸ’แž™แž”แŸ’แžšแžพแž˜แžปแžแž„แžถแžš time() แž“แžทแž„ แž”แŸ’แžšแžพแž€แžถแžšแž…แž˜แŸ’แž›แž„แž•แŸ’แžขแŸ‚แž€แž›แžพแžŸแŸŠแžปแž˜แž‡แŸ†แž“แžฝแžŸแžฑแŸ’แž™แž€แžถแžšแž”แž€แž”แŸ’แžšแŸ‚ SQL แžŠแŸ‚แž›แž•แŸ’แžขแŸ‚แž€แž›แžพแž€แžถแžšแž…แž˜แŸ’แž›แž„แŸ”

แž›แž€แŸ’แžแžŽแŸˆแž–แžทแžŸแŸแžŸแžšแž”แžŸแŸ‹ DqliteแŸ–

  • แžขแž“แžปแžœแžแŸ’แžแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแžแžถแžŸ แž“แžทแž„แž”แžŽแŸ’แžแžถแž‰แž‘แžถแŸ†แž„แžขแžŸแŸ‹แžŠแŸ„แž™แž˜แžทแž“แžŸแž˜แž€แžถแž›แž€แž˜แŸ’แž˜;
  • แž—แžถแž–แžขแžถแž…แžšแž€แž”แžถแž“แž“แŸƒแžŸแŸ†แžŽแžปแŸ†แžแŸแžŸแŸ’แžแžŠแžพแž˜แŸ’แž”แžธแž”แž‰แŸ’แž‡แžถแž€แŸ‹แž—แžถแž–แžแŸ’แžšแžนแž˜แžแŸ’แžšแžผแžœแž“แŸƒแž‘แžทแž“แŸ’แž“แž“แŸแž™;
  • แž€แžถแžšแž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แžขแž„แŸ’แž‚แž…แž„แž…แžถแŸ†แž‘แžถแž” แž“แžทแž„แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแž‘แžทแž“แŸ’แž“แž“แŸแž™แž”แŸ’แžšแž€แž”แžŠแŸ„แž™แž”แŸ’แžšแžŸแžทแž‘แŸ’แž’แž—แžถแž–แž›แžพแž”แžŽแŸ’แžแžถแž‰;
  • แž€แžถแžšแž•แŸ’แž‘แžปแž€แžขแž…แžทแž“แŸ’แžšแŸ’แžแŸƒแž™แŸแž“แŸƒแž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž‘แžทแž“แŸ’แž“แž“แŸแž™แž“แžทแž„แž€แŸ†แžŽแžแŸ‹แž แŸแžแžปแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแž“แŸ…แž›แžพแžแžถแžŸ (แž‡แžถแž˜แžฝแž™แž“แžนแž„แž›แž‘แŸ’แž’แž—แžถแž–แž“แŸƒแž€แžถแžšแžšแž€แŸ’แžŸแžถแž‘แžปแž€แž€แŸ’แž“แžปแž„แžŸแžแžท);
  • แž€แžถแžšแž„แžพแž”แžกแžพแž„แžœแžทแž‰แž™แŸ‰แžถแž„แž†แžถแž”แŸ‹แžšแž แŸแžŸแž–แžธแž€แžถแžšแž”แžšแžถแž‡แŸแž™;
  • แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž—แŸ’แž‰แŸ€แžœ CLI แž˜แžถแž“แžŸแŸ’แžแŸแžšแž—แžถแž–แž“แŸ…แž€แŸ’แž“แžปแž„แž—แžถแžŸแžถ Go แžŠแŸ‚แž›แžขแžถแž…แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžพแžŠแžพแž˜แŸ’แž”แžธแž…แžถแž”แŸ‹แž•แŸ’แžแžพแž˜แž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž‘แžทแž“แŸ’แž“แž“แŸแž™ แž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’แž€แžถแžšแž…แž˜แŸ’แž›แž„ แž“แžทแž„แž—แŸ’แž‡แžถแž”แŸ‹/แž•แŸ’แžแžถแž…แŸ‹แžแŸ’แž“แžถแŸ†แž„แŸ”
  • แž‚แžถแŸ†แž‘แŸ’แžšแžŸแŸ’แžแžถแž”แžแŸ’แž™แž€แž˜แŸ’แž˜ ARM, X86, POWER แž“แžทแž„ IBM Z แŸ”
  • แž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแž€แŸ’แž”แžฝแž“แžŠแŸ„แŸ‡แžŸแŸ’แžšแžถแž™ Raft แžแŸ’แžšแžผแžœแž”แžถแž“แž’แŸ’แžœแžพแžฑแŸ’แž™แž”แŸ’แžšแžŸแžพแžšแžกแžพแž„แžŠแžพแž˜แŸ’แž”แžธแž€แžถแžแŸ‹แž”แž“แŸ’แžแž™แž€แžถแžšแž–แž“แŸ’แž™แžถแžšแž–แŸแž›แž“แŸ…แž–แŸแž›แž’แŸ’แžœแžพแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแŸ”

แž”แŸ’แžšแž—แž–: opennet.ru

แž”แž“แŸ’แžแŸ‚แž˜แž˜แžแžทแž™แŸ„แž”แž›แŸ‹