ಕಳೆದ ವಾರ ಕ್ಯಾನೊನಿಕಲ್ ಡಿಕ್ಲೈಟ್ 1.0 ಯೋಜನೆಯ ಪ್ರಮುಖ ಆವೃತ್ತಿಯನ್ನು ಬಿಡುಗಡೆ ಮಾಡುವುದಾಗಿ ಘೋಷಿಸಿತು, ನೀವು SQL ಎಂಜಿನ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುತ್ತಿದ್ದೀರಿ ಅಂತರ್ನಿರ್ಮಿತ SQLite ಕಂಪ್ಲೈಂಟ್, ಇದು ಡೇಟಾ ಪುನರಾವರ್ತನೆ, ಸ್ವಯಂಚಾಲಿತ ವಿಪತ್ತು ಮರುಪಡೆಯುವಿಕೆ ಮತ್ತು ಬಹು ನೋಡ್ಗಳನ್ನು ವ್ಯಾಪಿಸುವ ಮೂಲಕ ದೋಷ ಸಹಿಷ್ಣುತೆಯನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ.
ಡಿಕ್ಲೈಟ್ ಸಿ ಗ್ರಂಥಾಲಯವಾಗಿದೆ ಇದು ಹೆಚ್ಚಿನ ಲಭ್ಯತೆ ಮತ್ತು ಸ್ವಯಂಚಾಲಿತ ವಿಫಲತೆಯೊಂದಿಗೆ ಪುನರಾವರ್ತಿತ ಮತ್ತು SQL ಡೇಟಾಬೇಸ್ ಎಂಜಿನ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ. "ಡಿಕ್ಲೈಟ್" ಎಂಬ ಸಂಕ್ಷಿಪ್ತ ರೂಪವು "ಡಿಸ್ಟ್ರಿಬ್ಯೂಟೆಡ್ ಎಸ್ಕ್ಯೂಲೈಟ್" ಅನ್ನು ಸೂಚಿಸುತ್ತದೆ, ಇದರರ್ಥ ಡಿಕ್ಲೈಟ್ ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ನ ಅನೇಕ ನಿದರ್ಶನಗಳನ್ನು ಸಂಪರ್ಕಿಸುವಂತಹ ನೆಟ್ವರ್ಕ್ ಪ್ರೋಟೋಕಾಲ್ನೊಂದಿಗೆ SQLite ಅನ್ನು ವಿಸ್ತರಿಸುತ್ತದೆ ಮತ್ತು ಬಾಹ್ಯ ಡೇಟಾಬೇಸ್ಗಳ ಮೇಲೆ ಅವಲಂಬನೆಯಿಲ್ಲದೆ ಅವುಗಳನ್ನು ಹೆಚ್ಚು ಲಭ್ಯವಿರುವ ಕ್ಲಸ್ಟರ್ನಂತೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ.
ಉಲ್ಲೇಖಿಸಿರುವಂತೆ ಅನ್ವಯಗಳಿಗೆ ಲಗತ್ತಿಸಲಾದ ಸಿ ಲೈಬ್ರರಿಯ ರೂಪದಲ್ಲಿ ಡಿಬಿಎಂಎಸ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಅಪಾಚೆ 2.0 ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ವಿತರಿಸಲಾಗುತ್ತದೆ (ಮೂಲ SQLite ಅನ್ನು ಸಾರ್ವಜನಿಕ ಡೊಮೇನ್ನಲ್ಲಿ ಒದಗಿಸಲಾಗಿದೆ). ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ SQLite ಕೋಡ್ನ ಆಧಾರದ ಮೇಲೆ ಗ್ರಂಥಾಲಯವು ಪ್ಲಗಿನ್ ಆಗಿದೆ, ಇದು ವಿಭಿನ್ನ ಹೋಸ್ಟ್ಗಳಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿರುವ ಅಪ್ಲಿಕೇಶನ್ನ ಅನೇಕ ನಿದರ್ಶನಗಳನ್ನು ಲಿಂಕ್ ಮಾಡಲು ನೆಟ್ವರ್ಕ್ ಪ್ರೋಟೋಕಾಲ್ ಬೆಂಬಲವನ್ನು ಸೇರಿಸುತ್ತದೆ.
ಡಿಕ್ಲೈಟ್ನೊಂದಿಗೆ ನಿರ್ಮಿಸಲಾದ ಅಪ್ಲಿಕೇಶನ್ ವಿಫಲವಾದ ಕ್ಲಸ್ಟರ್ ಆಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಸ್ವಾಯತ್ತ ತಪ್ಪಿನಿಂದ, ಬಾಹ್ಯ ಡಿಬಿಎಂಎಸ್ನಿಂದ ಸ್ವತಂತ್ರವಾಗಿದೆ.
ಆಚರಣೆಯಲ್ಲಿ, ಕ್ಯಾನೊನಿಕಲ್ ಎಲ್ಎಕ್ಸ್ಡಿ ಕಂಟೇನರ್ ಮ್ಯಾನೇಜ್ಮೆಂಟ್ ಸಿಸ್ಟಮ್ನಲ್ಲಿ ಡಿಕ್ಲೈಟ್ ಅನ್ನು ಬಳಸುತ್ತದೆ. ಗ್ರಂಥಾಲಯದ ಅಪ್ಲಿಕೇಶನ್ ಕ್ಷೇತ್ರಗಳಲ್ಲಿ, ಎಡ್ಜ್ ಕಂಪ್ಯೂಟಿಂಗ್ ವ್ಯವಸ್ಥೆಗಳಲ್ಲಿ ದೋಷ-ಸಹಿಷ್ಣು ಇಂಟರ್ನೆಟ್ ಆಫ್ ಥಿಂಗ್ಸ್ ಸಾಧನಗಳು ಮತ್ತು ಪ್ರೊಸೆಸರ್ಗಳ ರಚನೆಯನ್ನೂ ಉಲ್ಲೇಖಿಸಲಾಗಿದೆ.
ಡೇಟಾ ಪುನರಾವರ್ತನೆಯಲ್ಲಿ ಸ್ಥಿರತೆಯನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು, ರಾಫ್ಟ್ ಅಲ್ಗಾರಿದಮ್ ಅನ್ನು ಆಧರಿಸಿದ ಒಮ್ಮತದ ವಿಧಾನವನ್ನು ಬಳಸಲಾಗುತ್ತದೆ, ಇದನ್ನು etcd, RethinkDB, CockroachDB, ಮತ್ತು OpenDaylight ನಂತಹ ಯೋಜನೆಗಳಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ. ಡಿಕ್ಲೈಟ್ ತನ್ನದೇ ಆದ ಅಸಮಕಾಲಿಕ ಸಿ-ರಾಫ್ಟ್ ಅನುಷ್ಠಾನವನ್ನು ಬಳಸುತ್ತದೆ, ಇದನ್ನು ಸಿ ನಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ.
ಸಂಪರ್ಕ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಮಲ್ಟಿಪ್ಲೆಕ್ಸ್ ಮಾಡಲು ಮತ್ತು ಕೊರ್ಟೈನ್ಗಳ ಉಡಾವಣೆಯನ್ನು ಸಂಘಟಿಸಲು, ತಯಾರಾದ ಗ್ರಂಥಾಲಯಗಳಾದ ಲಿಬುವ್ ಮತ್ತು ಲಿಬ್ಕೊವನ್ನು ಬಳಸಲಾಗುತ್ತದೆ.
ಇದೇ ರೀತಿಯ rqlite ಯೋಜನೆಗೆ ಹೋಲಿಸಿದರೆ, Dqlite ಸಂಪೂರ್ಣ ವಹಿವಾಟು ಬೆಂಬಲವನ್ನು ಒದಗಿಸುತ್ತದೆ, ಇದು ಯಾವುದೇ ಸಿ ಪ್ರಾಜೆಕ್ಟ್ನೊಂದಿಗೆ ಸಂವಹನ ಮಾಡಬಹುದು, ಸಮಯ () ಕಾರ್ಯವನ್ನು ಬಳಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ ಮತ್ತು SQL ಅಭಿವ್ಯಕ್ತಿ ಅನುವಾದ-ಆಧಾರಿತ ಪ್ರತಿಕೃತಿಯ ಬದಲಿಗೆ ಫ್ರೇಮ್ ಆಧಾರಿತ ಪ್ರತಿಕೃತಿಯನ್ನು ಬಳಸುತ್ತದೆ.
ಡಿಕ್ಲೈಟ್ನಲ್ಲಿ ಹೈಲೈಟ್ ಮಾಡಬಹುದಾದ ವೈಶಿಷ್ಟ್ಯಗಳಲ್ಲಿ ಈ ಕೆಳಗಿನವುಗಳಿವೆ:
- ಎಲ್ಲಾ ಡಿಸ್ಕ್ ಮತ್ತು ನೆಟ್ವರ್ಕ್ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಅಸಮಕಾಲಿಕ ಮೋಡ್ನಲ್ಲಿ ನಿರ್ವಹಿಸಿ
- ಡೇಟಾದ ನಿಖರತೆಯನ್ನು ದೃ to ೀಕರಿಸಲು ಪರೀಕ್ಷೆಗಳ ಗುಂಪಿನ ಉಪಸ್ಥಿತಿ
- ಕಡಿಮೆ ಮೆಮೊರಿ ಬಳಕೆ ಮತ್ತು ನೆಟ್ವರ್ಕ್ನಲ್ಲಿ ಪರಿಣಾಮಕಾರಿ ಡೇಟಾ ವಿನಿಮಯ
- ಶಾಶ್ವತ ಡೇಟಾಬೇಸ್ ಡಿಸ್ಕ್ ಸಂಗ್ರಹಣೆ ಮತ್ತು ವಹಿವಾಟು ಲಾಗ್ (ಇನ್-ಮೆಮೊರಿ ಕ್ಯಾಶಿಂಗ್ ಸಾಮರ್ಥ್ಯದೊಂದಿಗೆ)
- ವೈಫಲ್ಯಗಳ ನಂತರ ತ್ವರಿತ ಚೇತರಿಕೆ
- ಗೋ ಭಾಷೆಯಲ್ಲಿ ಸ್ಥಿರವಾದ CLI ಕ್ಲೈಂಟ್, ಇದನ್ನು ಡೇಟಾಬೇಸ್ ಪ್ರಾರಂಭಿಸಲು, ಪ್ರತಿಕೃತಿಯನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಲು ಮತ್ತು ನೋಡ್ಗಳನ್ನು ಸಂಪರ್ಕಿಸಲು / ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸಲು ಬಳಸಬಹುದು
- ARM, X86, POWER, ಮತ್ತು IBM Z ವಾಸ್ತುಶಿಲ್ಪಗಳಿಗೆ ಬೆಂಬಲ
- ವಹಿವಾಟಿನ ಸುಪ್ತತೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಲು ರಾಫ್ಟ್ ಅಲ್ಗಾರಿದಮ್ನ ಅನುಷ್ಠಾನವನ್ನು ಹೊಂದುವಂತೆ ಮಾಡಲಾಗಿದೆ.
- ಈವೆಂಟ್ ಲೂಪ್ ಆಗಿ ಲಿಬುವನ್ನು ಬಳಸಿಕೊಂಡು ಅಸಮಕಾಲಿಕ ಏಕ ಥ್ರೆಡ್ ಅನುಷ್ಠಾನ.
- ಕಸ್ಟಮ್ ವೈರ್ ಪ್ರೋಟೋಕಾಲ್ ಅನ್ನು SQLite ಆದಿಮ ಮತ್ತು ಡೇಟಾ ಪ್ರಕಾರಗಳಿಗಾಗಿ ಹೊಂದುವಂತೆ ಮಾಡಲಾಗಿದೆ.
- ರಾಫ್ಟ್ ಅಲ್ಗಾರಿದಮ್ ಮತ್ತು ಸಿ-ರಾಫ್ಟ್ನಲ್ಲಿ ಅದರ ಪರಿಣಾಮಕಾರಿ ಅನುಷ್ಠಾನದ ಆಧಾರದ ಮೇಲೆ ಡೇಟಾ ಪುನರಾವರ್ತನೆ.
ಉಬುಂಟು ಮತ್ತು ಉತ್ಪನ್ನಗಳಲ್ಲಿ ಡಿಕ್ಲೈಟ್ ಅನ್ನು ಹೇಗೆ ಸ್ಥಾಪಿಸುವುದು?
ಡಿಕ್ಲೈಟ್ನೊಂದಿಗಿನ ಸಂವಹನಕ್ಕಾಗಿ ನೀವು ಕ್ಲೈಂಟ್ ಅನ್ನು ಹೇಗೆ ನಿರ್ಮಿಸಬಹುದು ಎಂಬುದರ ಕುರಿತು ಕ್ಯಾನೊನಿಕಲ್ ಮಾಹಿತಿಯನ್ನು ಒದಗಿಸುತ್ತದೆ, ನೀವು ಇದನ್ನು ಸಂಪರ್ಕಿಸಬಹುದು ಕೆಳಗಿನ ಲಿಂಕ್ನಲ್ಲಿ.
ಈಗ ಸಿಸ್ಟಂನಲ್ಲಿ ಲೈಬ್ರರಿಯನ್ನು ಸ್ಥಾಪಿಸಲು, ಉಬುಂಟು ಬಳಕೆದಾರರಿಗೆ ಇದನ್ನು ಎರಡು ರೀತಿಯಲ್ಲಿ ಸ್ಥಾಪಿಸಬಹುದು ಅಥವಾ ಅದರ ಯಾವುದೇ ಉತ್ಪನ್ನ. ಅಂಗೀಕೃತ ಪಿಪಿಎ ಒದಗಿಸುತ್ತದೆ ಅದನ್ನು ಎಲ್ಲಿಂದ ಸರಳ ರೀತಿಯಲ್ಲಿ ಪಡೆಯಬಹುದು.
ಈ ಪಿಪಿಎ ಅನ್ನು ಟರ್ಮಿನಲ್ನಿಂದ ಸೇರಿಸಬಹುದು ಮತ್ತು ಅದರಲ್ಲಿ ಈ ಕೆಳಗಿನ ಆಜ್ಞೆಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು:
sudo add-apt-repository ppa:dqlite/v1 sudo apt-get update sudo apt-get install libdqlite-dev
ಈ ಗ್ರಂಥಾಲಯವನ್ನು ಸ್ಥಾಪಿಸುವ ಇನ್ನೊಂದು ವಿಧಾನವೆಂದರೆ ಕಂಪೈಲ್ ಮಾಡುವುದು ಸಿಸ್ಟಂನಲ್ಲಿ ಇದು ಉಬುಂಟು ಮತ್ತು ಇತರ ಲಿನಕ್ಸ್ ವಿತರಣೆಗಳಿಗೆ ಹೆಚ್ಚು ಸಾಮಾನ್ಯ ವಿಧಾನವಾಗಿದೆ.
ಇದನ್ನು ಮಾಡಲು, ಅವರು ಟರ್ಮಿನಲ್ ಅನ್ನು ತೆರೆಯಬೇಕು ಮತ್ತು ಈ ಕೆಳಗಿನ ಆಜ್ಞೆಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಬೇಕು:
git clone --depth 100 https://github.com/canonical/sqlite.git cd sqlite ./configure --enable-replication make sudo make install cd .. git clone https://github.com/canonical/libco.git cd libco make sudo make install cd .. git clone https://github.com/canonical/raft.git cd raft autoreconf -i ./configure make sudo make install cd ..
ಅಗತ್ಯವಿರುವ ಎಲ್ಲಾ ಗ್ರಂಥಾಲಯಗಳನ್ನು ಸ್ಥಾಪಿಸಿದ ನಂತರ, ಡಿಕ್ಲೈಟ್ ಹಂಚಿದ ಗ್ರಂಥಾಲಯವನ್ನು ನಿರ್ಮಿಸಲು, ನೀವು ಚಲಾಯಿಸಬಹುದು:
autoreconf -i ./configure make sudo make install