ಕೆಳಗಿನ ಡೇಟಾಬೇಸ್ಗಳಿಗೆ Yandex ನ ಕೊಡುಗೆಯನ್ನು ಪರಿಶೀಲಿಸಲಾಗುತ್ತದೆ.
- ಕ್ಲಿಕ್ಹೌಸ್
- ಒಡಿಸ್ಸಿ
- ಸಮಯದ ಒಂದು ಹಂತಕ್ಕೆ ಚೇತರಿಕೆ (WAL-G)
- PostgreSQL (ಲಾಗರರ್ಗಳು, ಆಮ್ಚೆಕ್, ಹೀಪ್ಚೆಕ್ ಸೇರಿದಂತೆ)
- ಗ್ರೀನ್ಪ್ಲಮ್
ವೀಡಿಯೊ:
ಹಲೋ ವರ್ಲ್ಡ್! ನನ್ನ ಹೆಸರು ಆಂಡ್ರೆ ಬೊರೊಡಿನ್. ಮತ್ತು Yandex.Cloud ನಲ್ಲಿ ನಾನು ಏನು ಮಾಡುತ್ತೇನೆ ಎಂಬುದು Yandex.Cloud ಮತ್ತು Yandex.Cloud ಕ್ಲೈಂಟ್ಗಳ ಹಿತಾಸಕ್ತಿಗಳಲ್ಲಿ ತೆರೆದ ಸಂಬಂಧಿತ ಡೇಟಾಬೇಸ್ಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುವುದು.
ಈ ಮಾತುಕತೆಯಲ್ಲಿ, ಮುಕ್ತ ಡೇಟಾಬೇಸ್ಗಳನ್ನು ಪ್ರಮಾಣದಲ್ಲಿ ಎದುರಿಸುತ್ತಿರುವ ಸವಾಲುಗಳ ಬಗ್ಗೆ ನಾವು ಮಾತನಾಡುತ್ತೇವೆ. ಇದು ಏಕೆ ಮುಖ್ಯ? ಏಕೆಂದರೆ ಸೊಳ್ಳೆಗಳಂತೆ ನಂತರ ಆನೆಗಳಾಗುವ ಸಣ್ಣ, ಸಣ್ಣ ಸಮಸ್ಯೆಗಳು. ನೀವು ಅನೇಕ ಸಮೂಹಗಳನ್ನು ಹೊಂದಿರುವಾಗ ಅವು ದೊಡ್ಡದಾಗುತ್ತವೆ.
ಆದರೆ ಮುಖ್ಯ ವಿಷಯ ಅದಲ್ಲ. ನಂಬಲಾಗದ ಸಂಗತಿಗಳು ಸಂಭವಿಸುತ್ತವೆ. ಮಿಲಿಯನ್ ಪ್ರಕರಣಗಳಲ್ಲಿ ಒಂದರಲ್ಲಿ ಸಂಭವಿಸುವ ಸಂಗತಿಗಳು. ಮತ್ತು ಮೋಡದ ವಾತಾವರಣದಲ್ಲಿ, ನೀವು ಅದಕ್ಕೆ ಸಿದ್ಧರಾಗಿರಬೇಕು, ಏಕೆಂದರೆ ಏನಾದರೂ ಪ್ರಮಾಣದಲ್ಲಿ ಅಸ್ತಿತ್ವದಲ್ಲಿದ್ದಾಗ ನಂಬಲಾಗದ ವಿಷಯಗಳು ಹೆಚ್ಚು ಸಂಭವನೀಯವಾಗುತ್ತವೆ.
ಆದರೆ! ತೆರೆದ ಡೇಟಾಬೇಸ್ಗಳ ಪ್ರಯೋಜನವೇನು? ಯಾವುದೇ ಸಮಸ್ಯೆಯನ್ನು ಎದುರಿಸಲು ನಿಮಗೆ ಸೈದ್ಧಾಂತಿಕ ಅವಕಾಶವಿದೆ ಎಂಬುದು ಸತ್ಯ. ನೀವು ಮೂಲ ಕೋಡ್ ಅನ್ನು ಹೊಂದಿದ್ದೀರಿ, ನಿಮಗೆ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಜ್ಞಾನವಿದೆ. ನಾವು ಅದನ್ನು ಸಂಯೋಜಿಸುತ್ತೇವೆ ಮತ್ತು ಅದು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ.
ಓಪನ್ ಸೋರ್ಸ್ ಸಾಫ್ಟ್ವೇರ್ನಲ್ಲಿ ಕೆಲಸ ಮಾಡುವಲ್ಲಿ ಯಾವ ವಿಧಾನಗಳಿವೆ?
- ಸಾಫ್ಟ್ವೇರ್ ಅನ್ನು ಬಳಸುವುದು ಅತ್ಯಂತ ಸರಳವಾದ ವಿಧಾನವಾಗಿದೆ. ನೀವು ಪ್ರೋಟೋಕಾಲ್ಗಳನ್ನು ಬಳಸಿದರೆ, ನೀವು ಮಾನದಂಡಗಳನ್ನು ಬಳಸಿದರೆ, ನೀವು ಸ್ವರೂಪಗಳನ್ನು ಬಳಸಿದರೆ, ನೀವು ತೆರೆದ ಮೂಲ ಸಾಫ್ಟ್ವೇರ್ನಲ್ಲಿ ಪ್ರಶ್ನೆಗಳನ್ನು ಬರೆದರೆ, ನೀವು ಈಗಾಗಲೇ ಅದನ್ನು ಬೆಂಬಲಿಸುತ್ತೀರಿ.
- ನೀವು ಅದರ ಪರಿಸರ ವ್ಯವಸ್ಥೆಯನ್ನು ದೊಡ್ಡದಾಗಿ ಮಾಡುತ್ತಿದ್ದೀರಿ. ನೀವು ದೋಷವನ್ನು ಮೊದಲೇ ಪತ್ತೆಹಚ್ಚುವ ಸಾಧ್ಯತೆಯನ್ನು ಹೆಚ್ಚಿಸುತ್ತೀರಿ. ನೀವು ಈ ವ್ಯವಸ್ಥೆಯ ವಿಶ್ವಾಸಾರ್ಹತೆಯನ್ನು ಹೆಚ್ಚಿಸುತ್ತೀರಿ. ನೀವು ಮಾರುಕಟ್ಟೆಯಲ್ಲಿ ಡೆವಲಪರ್ಗಳ ಲಭ್ಯತೆಯನ್ನು ಹೆಚ್ಚಿಸುತ್ತೀರಿ. ನೀವು ಈ ಸಾಫ್ಟ್ವೇರ್ ಅನ್ನು ಸುಧಾರಿಸುತ್ತೀರಿ. ನೀವು ಕೇವಲ ಸ್ಟೈಲ್ ಅನ್ನು ಪಡೆದುಕೊಂಡಿದ್ದರೆ ಮತ್ತು ಅಲ್ಲಿ ಏನಾದರೂ ಟಿಂಕರ್ ಮಾಡಿದರೆ ನೀವು ಈಗಾಗಲೇ ಕೊಡುಗೆದಾರರಾಗಿದ್ದೀರಿ.
- ಇನ್ನೊಂದು ಅರ್ಥವಾಗುವ ವಿಧಾನವೆಂದರೆ ಓಪನ್ ಸೋರ್ಸ್ ಸಾಫ್ಟ್ವೇರ್ ಪ್ರಾಯೋಜಿಸುವುದು. ಉದಾಹರಣೆಗೆ, ಪ್ರಸಿದ್ಧವಾದ Google ಸಮ್ಮರ್ ಆಫ್ ಕೋಡ್ ಪ್ರೋಗ್ರಾಂ, Google ಪ್ರಪಂಚದಾದ್ಯಂತದ ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ವಿದ್ಯಾರ್ಥಿಗಳಿಗೆ ಅರ್ಥವಾಗುವ ಹಣವನ್ನು ಪಾವತಿಸಿದಾಗ ಅವರು ಕೆಲವು ಪರವಾನಗಿ ಅಗತ್ಯತೆಗಳನ್ನು ಪೂರೈಸುವ ಮುಕ್ತ ಸಾಫ್ಟ್ವೇರ್ ಯೋಜನೆಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುತ್ತಾರೆ.
- ಇದು ಬಹಳ ಆಸಕ್ತಿದಾಯಕ ವಿಧಾನವಾಗಿದೆ ಏಕೆಂದರೆ ಇದು ಸಮುದಾಯದಿಂದ ಗಮನವನ್ನು ಬದಲಾಯಿಸದೆ ಸಾಫ್ಟ್ವೇರ್ ವಿಕಸನಗೊಳ್ಳಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಗೂಗಲ್, ತಂತ್ರಜ್ಞಾನದ ದೈತ್ಯ, ನಮಗೆ ಈ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಬೇಕು ಎಂದು ಹೇಳುವುದಿಲ್ಲ, ನಾವು ಈ ದೋಷವನ್ನು ಸರಿಪಡಿಸಲು ಬಯಸುತ್ತೇವೆ ಮತ್ತು ಇಲ್ಲಿಯೇ ನಾವು ಡಿಗ್ ಮಾಡಬೇಕಾಗಿದೆ. ಗೂಗಲ್ ಹೇಳುತ್ತದೆ: “ನೀವು ಮಾಡುವುದನ್ನು ಮಾಡಿ. ನೀವು ಕೆಲಸ ಮಾಡುತ್ತಿರುವ ರೀತಿಯಲ್ಲಿಯೇ ಕೆಲಸ ಮಾಡುತ್ತಿರಿ ಮತ್ತು ಎಲ್ಲವೂ ಚೆನ್ನಾಗಿರುತ್ತದೆ. ”
- ಮುಕ್ತ ಮೂಲದಲ್ಲಿ ಭಾಗವಹಿಸುವ ಮುಂದಿನ ವಿಧಾನವೆಂದರೆ ಭಾಗವಹಿಸುವಿಕೆ. ಓಪನ್ ಸೋರ್ಸ್ ಸಾಫ್ಟ್ವೇರ್ನಲ್ಲಿ ನಿಮಗೆ ಸಮಸ್ಯೆ ಇದ್ದಾಗ ಮತ್ತು ಡೆವಲಪರ್ಗಳು ಇದ್ದಾಗ, ನಿಮ್ಮ ಡೆವಲಪರ್ಗಳು ಸಮಸ್ಯೆಗಳನ್ನು ಪರಿಹರಿಸಲು ಪ್ರಾರಂಭಿಸುತ್ತಾರೆ. ಅವರು ನಿಮ್ಮ ಮೂಲಸೌಕರ್ಯವನ್ನು ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಮಾಡಲು ಪ್ರಾರಂಭಿಸುತ್ತಾರೆ, ನಿಮ್ಮ ಕಾರ್ಯಕ್ರಮಗಳು ವೇಗವಾಗಿ ಮತ್ತು ಹೆಚ್ಚು ವಿಶ್ವಾಸಾರ್ಹವಾಗಿವೆ.
ಓಪನ್ ಸೋರ್ಸ್ ಸಾಫ್ಟ್ವೇರ್ ಕ್ಷೇತ್ರದಲ್ಲಿ ಅತ್ಯಂತ ಪ್ರಸಿದ್ಧವಾದ ಯಾಂಡೆಕ್ಸ್ ಯೋಜನೆಗಳಲ್ಲಿ ಒಂದಾದ ಕ್ಲಿಕ್ಹೌಸ್. ಇದು Yandex.Metrica ಎದುರಿಸುತ್ತಿರುವ ಸವಾಲುಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯೆಯಾಗಿ ಜನಿಸಿದ ಡೇಟಾಬೇಸ್ ಆಗಿದೆ.
ಮತ್ತು ಡೇಟಾಬೇಸ್ ಆಗಿ, ಪರಿಸರ ವ್ಯವಸ್ಥೆಯನ್ನು ರಚಿಸಲು ಮತ್ತು ಇತರ ಡೆವಲಪರ್ಗಳೊಂದಿಗೆ (ಯಾಂಡೆಕ್ಸ್ನಲ್ಲಿ ಮಾತ್ರವಲ್ಲದೆ) ಅದನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲು ಇದನ್ನು ತೆರೆದ ಮೂಲದಲ್ಲಿ ಮಾಡಲಾಗಿದೆ. ಮತ್ತು ಈಗ ಇದು ಅನೇಕ ವಿಭಿನ್ನ ಕಂಪನಿಗಳು ಒಳಗೊಂಡಿರುವ ದೊಡ್ಡ ಯೋಜನೆಯಾಗಿದೆ.
Yandex.Cloud ನಲ್ಲಿ, ನಾವು Yandex ಆಬ್ಜೆಕ್ಟ್ ಸಂಗ್ರಹಣೆಯ ಮೇಲೆ ಕ್ಲಿಕ್ಹೌಸ್ ಅನ್ನು ರಚಿಸಿದ್ದೇವೆ, ಅಂದರೆ ಕ್ಲೌಡ್ ಸಂಗ್ರಹಣೆಯ ಮೇಲೆ.
ಮೋಡದಲ್ಲಿ ಇದು ಏಕೆ ಮುಖ್ಯವಾಗಿದೆ? ಏಕೆಂದರೆ ಯಾವುದೇ ಡೇಟಾಬೇಸ್ ಈ ತ್ರಿಕೋನದಲ್ಲಿ, ಈ ಪಿರಮಿಡ್ನಲ್ಲಿ, ಮೆಮೊರಿ ಪ್ರಕಾರಗಳ ಈ ಶ್ರೇಣಿಯಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ನೀವು ವೇಗವಾದ ಆದರೆ ಸಣ್ಣ ರೆಜಿಸ್ಟರ್ಗಳು ಮತ್ತು ಅಗ್ಗದ ದೊಡ್ಡ ಆದರೆ ನಿಧಾನವಾದ SSD ಗಳು, ಹಾರ್ಡ್ ಡ್ರೈವ್ಗಳು ಮತ್ತು ಕೆಲವು ಇತರ ಬ್ಲಾಕ್ ಸಾಧನಗಳನ್ನು ಹೊಂದಿದ್ದೀರಿ. ಮತ್ತು ನೀವು ಪಿರಮಿಡ್ನ ಮೇಲ್ಭಾಗದಲ್ಲಿ ಸಮರ್ಥರಾಗಿದ್ದರೆ, ನೀವು ವೇಗದ ಡೇಟಾಬೇಸ್ ಅನ್ನು ಹೊಂದಿದ್ದೀರಿ. ಈ ಪಿರಮಿಡ್ನ ಕೆಳಭಾಗದಲ್ಲಿ ನೀವು ಸಮರ್ಥರಾಗಿದ್ದರೆ, ನೀವು ಸ್ಕೇಲ್ಡ್ ಡೇಟಾಬೇಸ್ ಅನ್ನು ಹೊಂದಿರುವಿರಿ. ಮತ್ತು ಈ ನಿಟ್ಟಿನಲ್ಲಿ, ಕೆಳಗಿನಿಂದ ಮತ್ತೊಂದು ಪದರವನ್ನು ಸೇರಿಸುವುದು ಡೇಟಾಬೇಸ್ನ ಸ್ಕೇಲೆಬಿಲಿಟಿಯನ್ನು ಹೆಚ್ಚಿಸುವ ತಾರ್ಕಿಕ ವಿಧಾನವಾಗಿದೆ.
ಅದನ್ನು ಹೇಗೆ ಮಾಡಬಹುದಿತ್ತು? ಇದು ಈ ವರದಿಯಲ್ಲಿ ಪ್ರಮುಖ ಅಂಶವಾಗಿದೆ.
- ನಾವು MDS ಮೂಲಕ ಕ್ಲಿಕ್ಹೌಸ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು. MDS ಆಂತರಿಕ Yandex ಕ್ಲೌಡ್ ಶೇಖರಣಾ ಇಂಟರ್ಫೇಸ್ ಆಗಿದೆ. ಇದು ಸಾಮಾನ್ಯ S3 ಪ್ರೋಟೋಕಾಲ್ಗಿಂತ ಹೆಚ್ಚು ಸಂಕೀರ್ಣವಾಗಿದೆ, ಆದರೆ ಇದು ಬ್ಲಾಕ್ ಸಾಧನಕ್ಕೆ ಹೆಚ್ಚು ಸೂಕ್ತವಾಗಿದೆ. ಡೇಟಾವನ್ನು ರೆಕಾರ್ಡ್ ಮಾಡಲು ಇದು ಉತ್ತಮವಾಗಿದೆ. ಇದಕ್ಕೆ ಹೆಚ್ಚಿನ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಅಗತ್ಯವಿರುತ್ತದೆ. ಪ್ರೋಗ್ರಾಮರ್ಗಳು ಪ್ರೋಗ್ರಾಂ ಮಾಡುತ್ತಾರೆ, ಇದು ಇನ್ನೂ ಒಳ್ಳೆಯದು, ಇದು ಆಸಕ್ತಿದಾಯಕವಾಗಿದೆ.
- S3 ಎನ್ನುವುದು ಹೆಚ್ಚು ಸಾಮಾನ್ಯವಾದ ವಿಧಾನವಾಗಿದ್ದು, ಕೆಲವು ರೀತಿಯ ಕೆಲಸದ ಹೊರೆಗಳಿಗೆ ಕಡಿಮೆ ಹೊಂದಾಣಿಕೆಯ ವೆಚ್ಚದಲ್ಲಿ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಸರಳಗೊಳಿಸುತ್ತದೆ.
ಸ್ವಾಭಾವಿಕವಾಗಿ, ಸಂಪೂರ್ಣ ಕ್ಲಿಕ್ಹೌಸ್ ಪರಿಸರ ವ್ಯವಸ್ಥೆಗೆ ಕ್ರಿಯಾತ್ಮಕತೆಯನ್ನು ಒದಗಿಸಲು ಮತ್ತು Yandex.Cloud ನಲ್ಲಿ ಅಗತ್ಯವಿರುವ ಕಾರ್ಯವನ್ನು ಮಾಡಲು ನಾವು ಬಯಸುತ್ತೇವೆ, ಸಂಪೂರ್ಣ ಕ್ಲಿಕ್ಹೌಸ್ ಸಮುದಾಯವು ಅದರಿಂದ ಪ್ರಯೋಜನ ಪಡೆಯುತ್ತದೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ನಾವು ನಿರ್ಧರಿಸಿದ್ದೇವೆ. ನಾವು ಕ್ಲಿಕ್ಹೌಸ್ ಅನ್ನು S3 ಮೂಲಕ ಜಾರಿಗೊಳಿಸಿದ್ದೇವೆ, MDS ಮೂಲಕ ಕ್ಲಿಕ್ಹೌಸ್ ಅಲ್ಲ. ಮತ್ತು ಇದು ಬಹಳಷ್ಟು ಕೆಲಸವಾಗಿದೆ.
ಉಲ್ಲೇಖಗಳು:
ಕ್ಲಿಕ್ಹೌಸ್ನಲ್ಲಿ ವರ್ಚುವಲ್ ಫೈಲ್ ಸಿಸ್ಟಮ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಇದು ಪುಲ್ ವಿನಂತಿಯ ಪಟ್ಟಿಯಾಗಿದೆ. ಇದು ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ಪುಲ್ ವಿನಂತಿಗಳು.
ಉಲ್ಲೇಖಗಳು:
ಗ್ರಾಹಕ"
ಆದರೆ ಕೆಲಸ ಅಲ್ಲಿಗೆ ಮುಗಿಯಲಿಲ್ಲ. ವೈಶಿಷ್ಟ್ಯವನ್ನು ಮಾಡಿದ ನಂತರ, ಈ ಕಾರ್ಯವನ್ನು ಅತ್ಯುತ್ತಮವಾಗಿಸಲು ಇನ್ನೂ ಕೆಲವು ಕೆಲಸದ ಅಗತ್ಯವಿದೆ.
ಉಲ್ಲೇಖಗಳು:
ತದನಂತರ ಅದನ್ನು ರೋಗನಿರ್ಣಯ ಮಾಡಲು, ಮೇಲ್ವಿಚಾರಣೆಯನ್ನು ಹೊಂದಿಸಲು ಮತ್ತು ಅದನ್ನು ನಿರ್ವಹಿಸುವಂತೆ ಮಾಡುವುದು ಅಗತ್ಯವಾಗಿತ್ತು.
ಮತ್ತು ಇದೆಲ್ಲವನ್ನೂ ಮಾಡಲಾಯಿತು ಇದರಿಂದ ಇಡೀ ಸಮುದಾಯ, ಸಂಪೂರ್ಣ ಕ್ಲಿಕ್ಹೌಸ್ ಪರಿಸರ ವ್ಯವಸ್ಥೆಯು ಈ ಕೆಲಸದ ಫಲಿತಾಂಶವನ್ನು ಪಡೆಯಿತು.
ವೈಯಕ್ತಿಕವಾಗಿ ನನಗೆ ಹತ್ತಿರವಾಗಿರುವ OLTP ಡೇಟಾಬೇಸ್ಗಳಿಗೆ ವಹಿವಾಟು ಡೇಟಾಬೇಸ್ಗಳಿಗೆ ಹೋಗೋಣ.
ಇದು ಮುಕ್ತ ಮೂಲ DBMS ಅಭಿವೃದ್ಧಿ ವಿಭಾಗವಾಗಿದೆ. ವಹಿವಾಟಿನ ಮುಕ್ತ ಡೇಟಾಬೇಸ್ಗಳನ್ನು ಸುಧಾರಿಸಲು ಈ ವ್ಯಕ್ತಿಗಳು ಬೀದಿ ಜಾದೂ ಮಾಡುತ್ತಿದ್ದಾರೆ.
ಯೋಜನೆಗಳಲ್ಲಿ ಒಂದು, ನಾವು ಹೇಗೆ ಮತ್ತು ಏನು ಮಾಡುತ್ತೇವೆ ಎಂಬುದರ ಕುರಿತು ನಾವು ಮಾತನಾಡಬಹುದಾದ ಉದಾಹರಣೆಯನ್ನು ಬಳಸಿಕೊಂಡು ಪೋಸ್ಟ್ಗ್ರೆಸ್ನಲ್ಲಿನ ಸಂಪರ್ಕ ಪೂಲರ್ ಆಗಿದೆ.
Postgres ಒಂದು ಪ್ರಕ್ರಿಯೆ ಡೇಟಾಬೇಸ್ ಆಗಿದೆ. ಇದರರ್ಥ ಡೇಟಾಬೇಸ್ ವಹಿವಾಟುಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಸಾಧ್ಯವಾದಷ್ಟು ಕಡಿಮೆ ನೆಟ್ವರ್ಕ್ ಸಂಪರ್ಕಗಳನ್ನು ಹೊಂದಿರಬೇಕು.
ಮತ್ತೊಂದೆಡೆ, ಮೋಡದ ವಾತಾವರಣದಲ್ಲಿ, ಒಂದು ಕ್ಲಸ್ಟರ್ಗೆ ಒಮ್ಮೆಗೆ ಸಾವಿರ ಸಂಪರ್ಕಗಳು ಬಂದಾಗ ಒಂದು ವಿಶಿಷ್ಟವಾದ ಪರಿಸ್ಥಿತಿ. ಮತ್ತು ಕನೆಕ್ಷನ್ ಪೂಲರ್ನ ಕಾರ್ಯವು ಸಾವಿರ ಸಂಪರ್ಕಗಳನ್ನು ಕಡಿಮೆ ಸಂಖ್ಯೆಯ ಸರ್ವರ್ ಸಂಪರ್ಕಗಳಿಗೆ ಪ್ಯಾಕ್ ಮಾಡುವುದು.
ಬೈಟ್ಗಳನ್ನು ಮರುಹೊಂದಿಸುವ ಟೆಲಿಫೋನ್ ಆಪರೇಟರ್ ಸಂಪರ್ಕ ಪೂಲರ್ ಎಂದು ನಾವು ಹೇಳಬಹುದು ಇದರಿಂದ ಅವು ಡೇಟಾಬೇಸ್ ಅನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ತಲುಪುತ್ತವೆ.
ದುರದೃಷ್ಟವಶಾತ್, ಸಂಪರ್ಕ ಪೂಲರ್ಗೆ ಉತ್ತಮ ರಷ್ಯನ್ ಪದವಿಲ್ಲ. ಕೆಲವೊಮ್ಮೆ ಇದನ್ನು ಮಲ್ಟಿಪ್ಲೆಕ್ಸರ್ ಸಂಪರ್ಕಗಳು ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಸಂಪರ್ಕ ಪೂಲರ್ ಅನ್ನು ಏನು ಕರೆಯಬೇಕೆಂದು ನಿಮಗೆ ತಿಳಿದಿದ್ದರೆ, ನನಗೆ ಹೇಳಲು ಮರೆಯದಿರಿ, ಸರಿಯಾದ ರಷ್ಯನ್ ತಾಂತ್ರಿಕ ಭಾಷೆಯನ್ನು ಮಾತನಾಡಲು ನನಗೆ ತುಂಬಾ ಸಂತೋಷವಾಗುತ್ತದೆ.
ನಿರ್ವಹಿಸಲಾದ ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಕ್ಲಸ್ಟರ್ಗೆ ಸೂಕ್ತವಾದ ಸಂಪರ್ಕ ಪೂಲ್ಗಳನ್ನು ನಾವು ತನಿಖೆ ಮಾಡಿದ್ದೇವೆ. ಮತ್ತು PgBouncer ನಮಗೆ ಅತ್ಯುತ್ತಮ ಆಯ್ಕೆಯಾಗಿದೆ. ಆದರೆ ನಾವು PgBouncer ನಲ್ಲಿ ಹಲವಾರು ಸಮಸ್ಯೆಗಳನ್ನು ಎದುರಿಸಿದ್ದೇವೆ. ಹಲವು ವರ್ಷಗಳ ಹಿಂದೆ, ವೊಲೊಡಿಯಾ ಬೊರೊಡಿನ್ ನಾವು PgBouncer ಅನ್ನು ಬಳಸುತ್ತೇವೆ ಎಂದು ವರದಿಗಳನ್ನು ನೀಡಿದರು, ನಾವು ಎಲ್ಲವನ್ನೂ ಇಷ್ಟಪಡುತ್ತೇವೆ, ಆದರೆ ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸಗಳಿವೆ, ಕೆಲಸ ಮಾಡಲು ಏನಾದರೂ ಇದೆ.
ಮತ್ತು ನಾವು ಕೆಲಸ ಮಾಡಿದೆವು. ನಾವು ಎದುರಿಸಿದ ಸಮಸ್ಯೆಗಳನ್ನು ನಾವು ಸರಿಪಡಿಸಿದ್ದೇವೆ, ನಾವು ಬೌನ್ಸರ್ ಅನ್ನು ಪ್ಯಾಚ್ ಮಾಡಿದ್ದೇವೆ ಮತ್ತು ಪುಲ್ ವಿನಂತಿಗಳನ್ನು ಅಪ್ಸ್ಟ್ರೀಮ್ಗೆ ತಳ್ಳಲು ಪ್ರಯತ್ನಿಸಿದ್ದೇವೆ. ಆದರೆ ಮೂಲಭೂತ ಏಕ-ಥ್ರೆಡಿಂಗ್ ಕೆಲಸ ಮಾಡುವುದು ಕಷ್ಟಕರವಾಗಿತ್ತು.
ನಾವು ತೇಪೆ ಬೌನ್ಸರ್ಗಳಿಂದ ಕ್ಯಾಸ್ಕೇಡ್ಗಳನ್ನು ಸಂಗ್ರಹಿಸಬೇಕಾಗಿತ್ತು. ನಾವು ಅನೇಕ ಏಕ-ಥ್ರೆಡ್ ಬೌನ್ಸರ್ಗಳನ್ನು ಹೊಂದಿರುವಾಗ, ಮೇಲಿನ ಪದರದಲ್ಲಿರುವ ಸಂಪರ್ಕಗಳನ್ನು ಬೌನ್ಸರ್ಗಳ ಒಳ ಪದರಕ್ಕೆ ವರ್ಗಾಯಿಸಲಾಗುತ್ತದೆ. ಇದು ಕಳಪೆಯಾಗಿ ನಿರ್ವಹಿಸಲಾದ ವ್ಯವಸ್ಥೆಯಾಗಿದ್ದು, ಹಿಂದಕ್ಕೆ ಮತ್ತು ಮುಂದಕ್ಕೆ ನಿರ್ಮಿಸಲು ಮತ್ತು ಅಳೆಯಲು ಕಷ್ಟಕರವಾಗಿದೆ.
ನಾವು ನಮ್ಮದೇ ಆದ ಸಂಪರ್ಕ ಪೂಲರ್ ಅನ್ನು ರಚಿಸಿದ್ದೇವೆ ಎಂಬ ತೀರ್ಮಾನಕ್ಕೆ ಬಂದಿದ್ದೇವೆ, ಅದನ್ನು ಒಡಿಸ್ಸಿ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ನಾವು ಅದನ್ನು ಮೊದಲಿನಿಂದ ಬರೆದಿದ್ದೇವೆ.
2019 ರಲ್ಲಿ, PgCon ಸಮ್ಮೇಳನದಲ್ಲಿ, ನಾನು ಈ ಪೂಲರ್ ಅನ್ನು ಡೆವಲಪರ್ ಸಮುದಾಯಕ್ಕೆ ಪ್ರಸ್ತುತಪಡಿಸಿದೆ. ಈಗ ನಾವು GitHub ನಲ್ಲಿ 2 ನಕ್ಷತ್ರಗಳಿಗಿಂತ ಸ್ವಲ್ಪ ಕಡಿಮೆ ಹೊಂದಿದ್ದೇವೆ, ಅಂದರೆ ಯೋಜನೆಯು ಜೀವಂತವಾಗಿದೆ, ಯೋಜನೆಯು ಜನಪ್ರಿಯವಾಗಿದೆ.
ಮತ್ತು ನೀವು Yandex.Cloud ನಲ್ಲಿ ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಕ್ಲಸ್ಟರ್ ಅನ್ನು ರಚಿಸಿದರೆ, ಅದು ಅಂತರ್ನಿರ್ಮಿತ ಒಡಿಸ್ಸಿಯೊಂದಿಗೆ ಕ್ಲಸ್ಟರ್ ಆಗಿರುತ್ತದೆ, ಕ್ಲಸ್ಟರ್ ಅನ್ನು ಹಿಂದಕ್ಕೆ ಅಥವಾ ಮುಂದಕ್ಕೆ ಸ್ಕೇಲ್ ಮಾಡುವಾಗ ಮರುಸಂರಚಿಸಲಾಗುತ್ತದೆ.
ಈ ಯೋಜನೆಯಿಂದ ನಾವು ಏನು ಕಲಿತಿದ್ದೇವೆ? ಸ್ಪರ್ಧಾತ್ಮಕ ಯೋಜನೆಯನ್ನು ಪ್ರಾರಂಭಿಸುವುದು ಯಾವಾಗಲೂ ಆಕ್ರಮಣಕಾರಿ ಹೆಜ್ಜೆಯಾಗಿದೆ, ಸಾಕಷ್ಟು ತ್ವರಿತವಾಗಿ ಪರಿಹರಿಸಲಾಗದ ಸಮಸ್ಯೆಗಳಿವೆ ಎಂದು ನಾವು ಹೇಳಿದಾಗ ಅದು ವಿಪರೀತ ಕ್ರಮವಾಗಿದೆ, ನಮಗೆ ಸರಿಹೊಂದುವ ಸಮಯದ ಮಧ್ಯಂತರದಲ್ಲಿ ಪರಿಹರಿಸಲಾಗುವುದಿಲ್ಲ. ಆದರೆ ಇದು ಪರಿಣಾಮಕಾರಿ ಕ್ರಮವಾಗಿದೆ.
PgBouncer ವೇಗವಾಗಿ ಅಭಿವೃದ್ಧಿ ಹೊಂದಲು ಪ್ರಾರಂಭಿಸಿತು.
ಮತ್ತು ಈಗ ಇತರ ಯೋಜನೆಗಳು ಕಾಣಿಸಿಕೊಂಡಿವೆ. ಉದಾಹರಣೆಗೆ, pgagroal, ಇದನ್ನು Red Hat ಅಭಿವರ್ಧಕರು ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ್ದಾರೆ. ಅವರು ಒಂದೇ ರೀತಿಯ ಗುರಿಗಳನ್ನು ಅನುಸರಿಸುತ್ತಾರೆ ಮತ್ತು ಒಂದೇ ರೀತಿಯ ಆಲೋಚನೆಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತಾರೆ, ಆದರೆ, ಸಹಜವಾಗಿ, ತಮ್ಮದೇ ಆದ ನಿಶ್ಚಿತಗಳೊಂದಿಗೆ, ಇದು pgagroal ಡೆವಲಪರ್ಗಳಿಗೆ ಹತ್ತಿರದಲ್ಲಿದೆ.
ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಸಮುದಾಯದೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವ ಮತ್ತೊಂದು ಪ್ರಕರಣವು ಸಮಯಕ್ಕೆ ಮರುಸ್ಥಾಪಿಸುತ್ತಿದೆ. ಇದು ವೈಫಲ್ಯದ ನಂತರ ಚೇತರಿಕೆ, ಇದು ಬ್ಯಾಕ್ಅಪ್ನಿಂದ ಮರುಪಡೆಯುವಿಕೆ.
ಹಲವು ಬ್ಯಾಕ್ಅಪ್ಗಳಿವೆ ಮತ್ತು ಅವೆಲ್ಲವೂ ವಿಭಿನ್ನವಾಗಿವೆ. ಬಹುತೇಕ ಪ್ರತಿ ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಮಾರಾಟಗಾರರು ತನ್ನದೇ ಆದ ಬ್ಯಾಕಪ್ ಪರಿಹಾರವನ್ನು ಹೊಂದಿದ್ದಾರೆ.
ನೀವು ಎಲ್ಲಾ ಬ್ಯಾಕಪ್ ಸಿಸ್ಟಮ್ಗಳನ್ನು ತೆಗೆದುಕೊಂಡರೆ, ವೈಶಿಷ್ಟ್ಯದ ಮ್ಯಾಟ್ರಿಕ್ಸ್ ಅನ್ನು ರಚಿಸಿ ಮತ್ತು ಈ ಮ್ಯಾಟ್ರಿಕ್ಸ್ನಲ್ಲಿ ನಿರ್ಣಾಯಕವನ್ನು ತಮಾಷೆಯಾಗಿ ಲೆಕ್ಕಾಚಾರ ಮಾಡಿದರೆ, ಅದು ಶೂನ್ಯವಾಗಿರುತ್ತದೆ. ಇದರ ಅರ್ಥ ಏನು? ನೀವು ನಿರ್ದಿಷ್ಟ ಬ್ಯಾಕ್ಅಪ್ ಫೈಲ್ ಅನ್ನು ತೆಗೆದುಕೊಂಡರೆ, ಅದನ್ನು ಇತರ ಎಲ್ಲ ತುಣುಕುಗಳಿಂದ ಜೋಡಿಸಲಾಗುವುದಿಲ್ಲ. ಅದರ ಅನುಷ್ಠಾನದಲ್ಲಿ ಅದು ವಿಶಿಷ್ಟವಾಗಿದೆ, ಅದರ ಉದ್ದೇಶದಲ್ಲಿ ಅದು ವಿಶಿಷ್ಟವಾಗಿದೆ, ಅದರಲ್ಲಿ ಹುದುಗಿರುವ ವಿಚಾರಗಳಲ್ಲಿ ಅದು ವಿಶಿಷ್ಟವಾಗಿದೆ. ಮತ್ತು ಅವೆಲ್ಲವೂ ನಿರ್ದಿಷ್ಟವಾಗಿವೆ.
ನಾವು ಈ ಸಮಸ್ಯೆಯ ಕುರಿತು ಕೆಲಸ ಮಾಡುತ್ತಿರುವಾಗ, CitusData WAL-G ಯೋಜನೆಯನ್ನು ಪ್ರಾರಂಭಿಸಿತು. ಇದು ಕ್ಲೌಡ್ ಪರಿಸರವನ್ನು ಗಮನದಲ್ಲಿಟ್ಟುಕೊಂಡು ಮಾಡಲಾದ ಬ್ಯಾಕಪ್ ವ್ಯವಸ್ಥೆಯಾಗಿದೆ. ಈಗ CitusData ಈಗಾಗಲೇ Microsoft ನ ಭಾಗವಾಗಿದೆ. ಮತ್ತು ಆ ಕ್ಷಣದಲ್ಲಿ, WAL-G ಯ ಆರಂಭಿಕ ಬಿಡುಗಡೆಗಳಲ್ಲಿ ಹಾಕಲಾದ ವಿಚಾರಗಳನ್ನು ನಾವು ನಿಜವಾಗಿಯೂ ಇಷ್ಟಪಟ್ಟಿದ್ದೇವೆ. ಮತ್ತು ನಾವು ಈ ಯೋಜನೆಗೆ ಕೊಡುಗೆ ನೀಡಲು ಪ್ರಾರಂಭಿಸಿದ್ದೇವೆ.
ಈಗ ಈ ಯೋಜನೆಯಲ್ಲಿ ಹಲವು ಡಜನ್ ಡೆವಲಪರ್ಗಳು ಇದ್ದಾರೆ, ಆದರೆ WAL-G ಗೆ ಅಗ್ರ 10 ಕೊಡುಗೆದಾರರು 6 Yandexoids ಅನ್ನು ಒಳಗೊಂಡಿದ್ದಾರೆ. ನಾವು ನಮ್ಮ ಬಹಳಷ್ಟು ವಿಚಾರಗಳನ್ನು ಅಲ್ಲಿಗೆ ತಂದಿದ್ದೇವೆ. ಮತ್ತು, ಸಹಜವಾಗಿ, ನಾವು ಅವುಗಳನ್ನು ನಾವೇ ಕಾರ್ಯಗತಗೊಳಿಸಿದ್ದೇವೆ, ಅವುಗಳನ್ನು ನಾವೇ ಪರೀಕ್ಷಿಸಿದ್ದೇವೆ, ಅವುಗಳನ್ನು ನಾವೇ ಉತ್ಪಾದನೆಗೆ ಹೊರತಂದಿದ್ದೇವೆ, ನಾವು ಅವುಗಳನ್ನು ನಾವೇ ಬಳಸುತ್ತೇವೆ, ದೊಡ್ಡ WAL-G ಸಮುದಾಯದೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸುವಾಗ ಮುಂದೆ ಎಲ್ಲಿಗೆ ಹೋಗಬೇಕೆಂದು ನಾವೇ ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತೇವೆ.
ಮತ್ತು ನಮ್ಮ ದೃಷ್ಟಿಕೋನದಿಂದ, ಈಗ ಈ ಬ್ಯಾಕಪ್ ಸಿಸ್ಟಮ್, ನಮ್ಮ ಪ್ರಯತ್ನಗಳನ್ನು ಗಣನೆಗೆ ತೆಗೆದುಕೊಳ್ಳುವುದು ಸೇರಿದಂತೆ, ಕ್ಲೌಡ್ ಪರಿಸರಕ್ಕೆ ಸೂಕ್ತವಾಗಿದೆ. ಕ್ಲೌಡ್ನಲ್ಲಿ ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಅನ್ನು ಬ್ಯಾಕಪ್ ಮಾಡಲು ಇದು ಅತ್ಯುತ್ತಮ ವೆಚ್ಚವಾಗಿದೆ.
ಅದರ ಅರ್ಥವೇನು? ನಾವು ಸಾಕಷ್ಟು ದೊಡ್ಡ ಕಲ್ಪನೆಯನ್ನು ಪ್ರಚಾರ ಮಾಡುತ್ತಿದ್ದೇವೆ: ಬ್ಯಾಕಪ್ ಸುರಕ್ಷಿತವಾಗಿರಬೇಕು, ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಅಗ್ಗವಾಗಿರಬೇಕು ಮತ್ತು ಮರುಸ್ಥಾಪಿಸಲು ಸಾಧ್ಯವಾದಷ್ಟು ವೇಗವಾಗಿರಬೇಕು.
ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಏಕೆ ಅಗ್ಗವಾಗಿರಬೇಕು? ಏನೂ ಮುರಿದಾಗ, ನೀವು ಬ್ಯಾಕ್ಅಪ್ಗಳನ್ನು ಹೊಂದಿರುವಿರಿ ಎಂದು ನಿಮಗೆ ತಿಳಿದಿರಬಾರದು. ಎಲ್ಲವೂ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ನೀವು ಸಾಧ್ಯವಾದಷ್ಟು ಕಡಿಮೆ CPU ಅನ್ನು ವ್ಯರ್ಥ ಮಾಡುತ್ತೀರಿ, ನಿಮ್ಮ ಡಿಸ್ಕ್ ಸಂಪನ್ಮೂಲಗಳನ್ನು ನೀವು ಸಾಧ್ಯವಾದಷ್ಟು ಕಡಿಮೆ ಬಳಸುತ್ತೀರಿ ಮತ್ತು ನಿಮ್ಮ ಅಮೂಲ್ಯವಾದ ಸೇವೆಗಳ ಪೇಲೋಡ್ನಲ್ಲಿ ಹಸ್ತಕ್ಷೇಪ ಮಾಡದಂತೆ ನೀವು ಸಾಧ್ಯವಾದಷ್ಟು ನೆಟ್ವರ್ಕ್ಗೆ ಕೆಲವು ಬೈಟ್ಗಳನ್ನು ಕಳುಹಿಸುತ್ತೀರಿ.
ಮತ್ತು ಎಲ್ಲವೂ ಮುರಿದುಹೋದಾಗ, ಉದಾಹರಣೆಗೆ, ನಿರ್ವಾಹಕರು ಡೇಟಾವನ್ನು ಕೈಬಿಟ್ಟರು, ಏನೋ ತಪ್ಪಾಗಿದೆ, ಮತ್ತು ನೀವು ತುರ್ತಾಗಿ ಹಿಂದಿನದಕ್ಕೆ ಹಿಂತಿರುಗಬೇಕಾಗಿದೆ, ನೀವು ಎಲ್ಲಾ ಹಣದೊಂದಿಗೆ ಚೇತರಿಸಿಕೊಳ್ಳುತ್ತೀರಿ, ಏಕೆಂದರೆ ನಿಮ್ಮ ಡೇಟಾವನ್ನು ತ್ವರಿತವಾಗಿ ಮತ್ತು ಅಖಂಡವಾಗಿ ಹಿಂತಿರುಗಿಸಲು ನೀವು ಬಯಸುತ್ತೀರಿ.
ಮತ್ತು ನಾವು ಈ ಸರಳ ಕಲ್ಪನೆಯನ್ನು ಪ್ರಚಾರ ಮಾಡಿದ್ದೇವೆ. ಮತ್ತು, ಇದು ನಮಗೆ ತೋರುತ್ತದೆ, ನಾವು ಅದನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ನಿರ್ವಹಿಸುತ್ತಿದ್ದೇವೆ.
ಆದರೆ ಅಷ್ಟೆ ಅಲ್ಲ. ನಮಗೆ ಇನ್ನೂ ಒಂದು ಸಣ್ಣ ವಿಷಯ ಬೇಕಿತ್ತು. ನಾವು ಹಲವಾರು ವಿಭಿನ್ನ ಡೇಟಾಬೇಸ್ಗಳನ್ನು ಬಯಸಿದ್ದೇವೆ. ನಮ್ಮ ಎಲ್ಲಾ ಗ್ರಾಹಕರು Postgres ಅನ್ನು ಬಳಸುವುದಿಲ್ಲ. ಕೆಲವರು MySQL, MongoDB ಅನ್ನು ಬಳಸುತ್ತಾರೆ. ಸಮುದಾಯದಲ್ಲಿ, ಇತರ ಡೆವಲಪರ್ಗಳು FoundationDB ಅನ್ನು ಬೆಂಬಲಿಸಿದ್ದಾರೆ. ಮತ್ತು ಈ ಪಟ್ಟಿ ನಿರಂತರವಾಗಿ ವಿಸ್ತರಿಸುತ್ತಿದೆ.
ಕ್ಲೌಡ್ನಲ್ಲಿ ನಿರ್ವಹಿಸಲಾದ ಪರಿಸರದಲ್ಲಿ ಡೇಟಾಬೇಸ್ ಚಾಲನೆಯಾಗುವ ಕಲ್ಪನೆಯನ್ನು ಸಮುದಾಯವು ಇಷ್ಟಪಡುತ್ತದೆ. ಮತ್ತು ಡೆವಲಪರ್ಗಳು ತಮ್ಮ ಡೇಟಾಬೇಸ್ಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತಾರೆ, ಇದನ್ನು ನಮ್ಮ ಬ್ಯಾಕಪ್ ಸಿಸ್ಟಮ್ನೊಂದಿಗೆ ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಜೊತೆಗೆ ಏಕರೂಪವಾಗಿ ಬ್ಯಾಕಪ್ ಮಾಡಬಹುದು.
ಈ ಕಥೆಯಿಂದ ನಾವು ಏನು ಕಲಿತಿದ್ದೇವೆ? ನಮ್ಮ ಉತ್ಪನ್ನವು ಅಭಿವೃದ್ಧಿ ವಿಭಾಗವಾಗಿ, ಕೋಡ್ನ ಸಾಲುಗಳಲ್ಲ, ಅದು ಹೇಳಿಕೆಗಳಲ್ಲ, ಫೈಲ್ಗಳಲ್ಲ. ನಮ್ಮ ಉತ್ಪನ್ನವು ಪುಲ್ ವಿನಂತಿಗಳಲ್ಲ. ಇವು ನಾವು ಸಮುದಾಯಕ್ಕೆ ತಿಳಿಸುವ ವಿಚಾರಗಳು. ಇದು ತಾಂತ್ರಿಕ ಪರಿಣತಿ ಮತ್ತು ಮೋಡದ ಪರಿಸರದ ಕಡೆಗೆ ತಂತ್ರಜ್ಞಾನದ ಚಲನೆಯಾಗಿದೆ.
ಪೋಸ್ಟ್ಗ್ರೆಸ್ನಂತಹ ಡೇಟಾಬೇಸ್ ಇದೆ. ನಾನು ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಕೋರ್ ಅನ್ನು ಹೆಚ್ಚು ಇಷ್ಟಪಡುತ್ತೇನೆ. ಸಮುದಾಯದೊಂದಿಗೆ ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಕೋರ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲು ನಾನು ಸಾಕಷ್ಟು ಸಮಯವನ್ನು ಕಳೆಯುತ್ತೇನೆ.
ಆದರೆ ಇಲ್ಲಿ Yandex.Cloud ನಿರ್ವಹಿಸಿದ ಡೇಟಾಬೇಸ್ಗಳ ಆಂತರಿಕ ಸ್ಥಾಪನೆಯನ್ನು ಹೊಂದಿದೆ ಎಂದು ಹೇಳಬೇಕು. ಮತ್ತು ಇದು Yandex.Mail ನಲ್ಲಿ ಬಹಳ ಹಿಂದೆಯೇ ಪ್ರಾರಂಭವಾಯಿತು. ಪೋಸ್ಟ್ಗ್ರೆಸ್ಗೆ ಮೇಲ್ ಚಲಿಸಲು ಬಯಸಿದಾಗ ಈಗ ನಿರ್ವಹಿಸಿದ ಪೋಸ್ಟ್ಗ್ರೆಸ್ಗೆ ಕಾರಣವಾದ ಪರಿಣತಿಯನ್ನು ಸಂಗ್ರಹಿಸಲಾಗಿದೆ.
ಮೇಲ್ ಕ್ಲೌಡ್ಗೆ ಹೋಲುವ ಅವಶ್ಯಕತೆಗಳನ್ನು ಹೊಂದಿದೆ. ನಿಮ್ಮ ಡೇಟಾದ ಯಾವುದೇ ಹಂತದಲ್ಲಿ ನೀವು ಅನಿರೀಕ್ಷಿತ ಘಾತೀಯ ಬೆಳವಣಿಗೆಗೆ ಅಳೆಯಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ. ಮತ್ತು ಮೇಲ್ ಈಗಾಗಲೇ ಹಲವಾರು ವಿನಂತಿಗಳನ್ನು ನಿರಂತರವಾಗಿ ಮಾಡುವ ಬೃಹತ್ ಸಂಖ್ಯೆಯ ಬಳಕೆದಾರರ ನೂರಾರು ಮಿಲಿಯನ್ ಮೇಲ್ಬಾಕ್ಸ್ಗಳೊಂದಿಗೆ ಲೋಡ್ ಅನ್ನು ಹೊಂದಿದೆ.
ಮತ್ತು ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುತ್ತಿರುವ ತಂಡಕ್ಕೆ ಇದು ಸಾಕಷ್ಟು ಗಂಭೀರ ಸವಾಲಾಗಿತ್ತು. ಆಗ, ನಾವು ಎದುರಿಸಿದ ಯಾವುದೇ ಸಮಸ್ಯೆಗಳನ್ನು ಸಮುದಾಯಕ್ಕೆ ವರದಿ ಮಾಡಲಾಗುತ್ತಿತ್ತು. ಮತ್ತು ಈ ಸಮಸ್ಯೆಗಳನ್ನು ಸರಿಪಡಿಸಲಾಗಿದೆ ಮತ್ತು ಸಮುದಾಯವು ಕೆಲವು ಸ್ಥಳಗಳಲ್ಲಿ ಇತರ ಡೇಟಾಬೇಸ್ಗಳಿಗೆ ಪಾವತಿಸಿದ ಬೆಂಬಲದ ಮಟ್ಟದಲ್ಲಿಯೂ ಸಹ ಸರಿಪಡಿಸಲಾಗಿದೆ ಮತ್ತು ಇನ್ನೂ ಉತ್ತಮವಾಗಿದೆ. ಅಂದರೆ, ನೀವು PgSQL ಹ್ಯಾಕರ್ಗೆ ಪತ್ರವನ್ನು ಕಳುಹಿಸಬಹುದು ಮತ್ತು 40 ನಿಮಿಷಗಳಲ್ಲಿ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಪಡೆಯಬಹುದು. ಕೆಲವು ಡೇಟಾಬೇಸ್ಗಳಲ್ಲಿ ಪಾವತಿಸಿದ ಬೆಂಬಲವು ನಿಮ್ಮ ದೋಷಕ್ಕಿಂತ ಹೆಚ್ಚಿನ ಆದ್ಯತೆಯ ವಿಷಯಗಳಿವೆ ಎಂದು ಭಾವಿಸಬಹುದು.
ಈಗ ಪೋಸ್ಟ್ಗ್ರೆಸ್ನ ಆಂತರಿಕ ಸ್ಥಾಪನೆಯು ಕೆಲವು ಪೆಟಾಬೈಟ್ಗಳ ಡೇಟಾ. ಇವು ಪ್ರತಿ ಸೆಕೆಂಡಿಗೆ ಕೆಲವು ಮಿಲಿಯನ್ ವಿನಂತಿಗಳು. ಇವು ಸಾವಿರಾರು ಸಮೂಹಗಳಾಗಿವೆ. ಇದು ಬಹಳ ದೊಡ್ಡ ಪ್ರಮಾಣದಲ್ಲಿದೆ.
ಆದರೆ ಒಂದು ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸವಿದೆ. ಇದು ಅಲಂಕಾರಿಕ ನೆಟ್ವರ್ಕ್ ಡ್ರೈವ್ಗಳಲ್ಲಿ ಅಲ್ಲ, ಆದರೆ ಸಾಕಷ್ಟು ಸರಳವಾದ ಹಾರ್ಡ್ವೇರ್ನಲ್ಲಿ ವಾಸಿಸುತ್ತದೆ. ಮತ್ತು ಆಸಕ್ತಿದಾಯಕ ಹೊಸ ವಿಷಯಗಳಿಗಾಗಿ ನಿರ್ದಿಷ್ಟವಾಗಿ ಪರೀಕ್ಷಾ ವಾತಾವರಣವಿದೆ.
ಮತ್ತು ಪರೀಕ್ಷಾ ಪರಿಸರದಲ್ಲಿ ಒಂದು ನಿರ್ದಿಷ್ಟ ಕ್ಷಣದಲ್ಲಿ ಡೇಟಾಬೇಸ್ ಸೂಚಿಕೆಗಳ ಆಂತರಿಕ ಬದಲಾವಣೆಗಳನ್ನು ಉಲ್ಲಂಘಿಸಲಾಗಿದೆ ಎಂದು ಸೂಚಿಸುವ ಸಂದೇಶವನ್ನು ನಾವು ಸ್ವೀಕರಿಸಿದ್ದೇವೆ.
ಅಸ್ಥಿರತೆಯು ನಾವು ಯಾವಾಗಲೂ ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳಲು ನಿರೀಕ್ಷಿಸುವ ಕೆಲವು ರೀತಿಯ ಸಂಬಂಧವಾಗಿದೆ.
ನಮಗೆ ಬಹಳ ನಿರ್ಣಾಯಕ ಪರಿಸ್ಥಿತಿ. ಕೆಲವು ಡೇಟಾ ಕಳೆದುಹೋಗಿರಬಹುದು ಎಂದು ಇದು ಸೂಚಿಸುತ್ತದೆ. ಮತ್ತು ಡೇಟಾ ನಷ್ಟವು ಸರಳವಾದ ದುರಂತವಾಗಿದೆ.
ನಿರ್ವಹಿಸಿದ ಡೇಟಾಬೇಸ್ಗಳಲ್ಲಿ ನಾವು ಅನುಸರಿಸುವ ಸಾಮಾನ್ಯ ಕಲ್ಪನೆಯೆಂದರೆ, ಪ್ರಯತ್ನದಿಂದ ಕೂಡ ಡೇಟಾವನ್ನು ಕಳೆದುಕೊಳ್ಳುವುದು ಕಷ್ಟವಾಗುತ್ತದೆ. ನೀವು ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಅವುಗಳನ್ನು ತೆಗೆದುಹಾಕಿದರೂ ಸಹ, ದೀರ್ಘಕಾಲದವರೆಗೆ ಅವರ ಅನುಪಸ್ಥಿತಿಯನ್ನು ನೀವು ನಿರ್ಲಕ್ಷಿಸಬೇಕಾಗುತ್ತದೆ. ಡೇಟಾ ಸುರಕ್ಷತೆಯು ನಾವು ಸಾಕಷ್ಟು ಶ್ರದ್ಧೆಯಿಂದ ಅನುಸರಿಸುವ ಧರ್ಮವಾಗಿದೆ.
ಮತ್ತು ಇಲ್ಲಿ ನಾವು ಸಿದ್ಧರಾಗಿರದ ಪರಿಸ್ಥಿತಿ ಇರಬಹುದು ಎಂದು ಸೂಚಿಸುವ ಪರಿಸ್ಥಿತಿ ಉದ್ಭವಿಸುತ್ತದೆ. ಮತ್ತು ನಾವು ಈ ಪರಿಸ್ಥಿತಿಗೆ ತಯಾರಾಗಲು ಪ್ರಾರಂಭಿಸಿದ್ದೇವೆ.
ನಾವು ಮಾಡಿದ ಮೊದಲ ಕೆಲಸವೆಂದರೆ ಈ ಸಾವಿರಾರು ಕ್ಲಸ್ಟರ್ಗಳಿಂದ ಮರದ ದಿಮ್ಮಿಗಳನ್ನು ಹೂತುಹಾಕುವುದು. ಡೇಟಾ ಪುಟ ನವೀಕರಣಗಳನ್ನು ಕಳೆದುಕೊಳ್ಳುತ್ತಿರುವ ಸಮಸ್ಯಾತ್ಮಕ ಫರ್ಮ್ವೇರ್ನೊಂದಿಗೆ ಡಿಸ್ಕ್ಗಳಲ್ಲಿ ಯಾವ ಕ್ಲಸ್ಟರ್ಗಳು ನೆಲೆಗೊಂಡಿವೆ ಎಂಬುದನ್ನು ನಾವು ಕಂಡುಕೊಂಡಿದ್ದೇವೆ. ಎಲ್ಲಾ Postgres ಡೇಟಾ ಕೋಡ್ ಅನ್ನು ಗುರುತಿಸಲಾಗಿದೆ. ಮತ್ತು ಡೇಟಾ ಭ್ರಷ್ಟಾಚಾರವನ್ನು ಪತ್ತೆಹಚ್ಚಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾದ ಕೋಡ್ನೊಂದಿಗೆ ಆಂತರಿಕ ಬದಲಾವಣೆಗಳ ಉಲ್ಲಂಘನೆಯನ್ನು ಸೂಚಿಸುವ ಸಂದೇಶಗಳನ್ನು ನಾವು ಗುರುತಿಸಿದ್ದೇವೆ.
ಈ ಪ್ಯಾಚ್ ಅನ್ನು ಹೆಚ್ಚಿನ ಚರ್ಚೆಯಿಲ್ಲದೆ ಸಮುದಾಯವು ಪ್ರಾಯೋಗಿಕವಾಗಿ ಅಂಗೀಕರಿಸಿದೆ, ಏಕೆಂದರೆ ಪ್ರತಿ ನಿರ್ದಿಷ್ಟ ಪ್ರಕರಣದಲ್ಲಿ ಏನಾದರೂ ಕೆಟ್ಟದು ಸಂಭವಿಸಿದೆ ಮತ್ತು ಲಾಗ್ಗೆ ವರದಿ ಮಾಡಬೇಕಾಗಿದೆ ಎಂಬುದು ಸ್ಪಷ್ಟವಾಗಿದೆ.
ಇದರ ನಂತರ, ಲಾಗ್ಗಳನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡುವ ಮೇಲ್ವಿಚಾರಣೆಯನ್ನು ನಾವು ಹೊಂದಿದ್ದೇವೆ ಎಂಬ ಅಂಶಕ್ಕೆ ನಾವು ಬಂದಿದ್ದೇವೆ. ಮತ್ತು ಅನುಮಾನಾಸ್ಪದ ಸಂದೇಶಗಳ ಸಂದರ್ಭದಲ್ಲಿ, ಅವರು ಕರ್ತವ್ಯ ಅಧಿಕಾರಿಯನ್ನು ಎಚ್ಚರಗೊಳಿಸುತ್ತಾರೆ ಮತ್ತು ಕರ್ತವ್ಯ ಅಧಿಕಾರಿ ಅದನ್ನು ಸರಿಪಡಿಸುತ್ತಾರೆ.
ಆದರೆ! ಲಾಗ್ಗಳನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡುವುದು ಒಂದು ಕ್ಲಸ್ಟರ್ನಲ್ಲಿ ಅಗ್ಗದ ಕಾರ್ಯಾಚರಣೆಯಾಗಿದೆ ಮತ್ತು ಸಾವಿರ ಕ್ಲಸ್ಟರ್ಗಳಿಗೆ ದುರಂತವಾಗಿ ದುಬಾರಿಯಾಗಿದೆ.
ಎಂಬ ವಿಸ್ತರಣೆಯನ್ನು ನಾವು ಬರೆದಿದ್ದೇವೆ
ಈ ವಿಸ್ತರಣೆಯನ್ನು ಅಳವಡಿಸಿಕೊಳ್ಳಲಾಗಿದೆ, ಉದಾಹರಣೆಗೆ, ರೆಪೊಸಿಟರಿಯಲ್ಲಿ
ಆದರೆ ಅಷ್ಟೆ ಅಲ್ಲ. ನಾವು ಸೂಚಿಕೆಗಳಲ್ಲಿ ಅಸ್ಥಿರ ಉಲ್ಲಂಘನೆಗಳನ್ನು ಕಂಡುಹಿಡಿಯಲು ಸಮುದಾಯ-ನಿರ್ಮಿತ ವಿಸ್ತರಣೆಯಾದ Amcheck ಅನ್ನು ಬಳಸಲು ಪ್ರಾರಂಭಿಸಿದ್ದೇವೆ.
ಮತ್ತು ನೀವು ಅದನ್ನು ಪ್ರಮಾಣದಲ್ಲಿ ನಿರ್ವಹಿಸಿದರೆ, ದೋಷಗಳಿವೆ ಎಂದು ನಾವು ಕಂಡುಕೊಂಡಿದ್ದೇವೆ. ನಾವು ಅವುಗಳನ್ನು ಸರಿಪಡಿಸಲು ಪ್ರಾರಂಭಿಸಿದ್ದೇವೆ. ನಮ್ಮ ತಿದ್ದುಪಡಿಗಳನ್ನು ಸ್ವೀಕರಿಸಲಾಗಿದೆ.
ಈ ವಿಸ್ತರಣೆಯು GiST ಮತ್ತು GIT ಸೂಚಿಕೆಗಳನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ ಎಂದು ನಾವು ಕಂಡುಹಿಡಿದಿದ್ದೇವೆ. ನಾವು ಅವರಿಗೆ ಬೆಂಬಲ ನೀಡಿದ್ದೇವೆ. ಆದರೆ ಈ ಬೆಂಬಲವನ್ನು ಸಮುದಾಯವು ಇನ್ನೂ ಚರ್ಚಿಸುತ್ತಿದೆ, ಏಕೆಂದರೆ ಇದು ತುಲನಾತ್ಮಕವಾಗಿ ಹೊಸ ಕಾರ್ಯವಾಗಿದೆ ಮತ್ತು ಅಲ್ಲಿ ಸಾಕಷ್ಟು ವಿವರಗಳಿವೆ.
ಮತ್ತು ಪ್ರತಿಕೃತಿ ನಾಯಕನ ಮೇಲೆ ಉಲ್ಲಂಘನೆಗಾಗಿ ಸೂಚ್ಯಂಕಗಳನ್ನು ಪರಿಶೀಲಿಸುವಾಗ, ಮಾಸ್ಟರ್ನಲ್ಲಿ ಎಲ್ಲವೂ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಆದರೆ ಪ್ರತಿಕೃತಿಗಳಲ್ಲಿ, ಅನುಯಾಯಿಗಳ ಮೇಲೆ, ಭ್ರಷ್ಟಾಚಾರದ ಹುಡುಕಾಟವು ಅಷ್ಟು ಪರಿಣಾಮಕಾರಿಯಾಗಿಲ್ಲ ಎಂದು ನಾವು ಕಂಡುಹಿಡಿದಿದ್ದೇವೆ. ಎಲ್ಲಾ ಬದಲಾವಣೆಗಳನ್ನು ಪರಿಶೀಲಿಸಲಾಗುವುದಿಲ್ಲ. ಮತ್ತು ಒಂದು ಅಸ್ಥಿರತೆಯು ನಮ್ಮನ್ನು ತುಂಬಾ ಕಾಡಿತು. ಮತ್ತು ಪ್ರತಿಕೃತಿಗಳಲ್ಲಿ ಈ ಪರಿಶೀಲನೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ನಾವು ಸಮುದಾಯದೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸಲು ಒಂದೂವರೆ ವರ್ಷ ಕಳೆದಿದ್ದೇವೆ.
ನಾವು ಎಲ್ಲಾ ಕ್ಯಾನ್... ಪ್ರೋಟೋಕಾಲ್ಗಳನ್ನು ಅನುಸರಿಸಬೇಕಾದ ಕೋಡ್ ಅನ್ನು ಬರೆದಿದ್ದೇವೆ. ಕ್ರಂಚಿ ಡೇಟಾದಿಂದ ಪೀಟರ್ ಗಘನ್ ಅವರೊಂದಿಗೆ ನಾವು ಈ ಪ್ಯಾಚ್ ಅನ್ನು ಸ್ವಲ್ಪ ಸಮಯದವರೆಗೆ ಚರ್ಚಿಸಿದ್ದೇವೆ. ಈ ಪ್ಯಾಚ್ ಅನ್ನು ಸ್ವೀಕರಿಸಲು ಅವರು ಪೋಸ್ಟ್ಗ್ರೆಸ್ನಲ್ಲಿ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಬಿ-ಟ್ರೀಯನ್ನು ಸ್ವಲ್ಪ ಮಾರ್ಪಡಿಸಬೇಕಾಗಿತ್ತು. ಅವರನ್ನು ಸ್ವೀಕರಿಸಲಾಯಿತು. ಮತ್ತು ಈಗ ಪ್ರತಿಕೃತಿಗಳಲ್ಲಿ ಸೂಚ್ಯಂಕಗಳನ್ನು ಪರಿಶೀಲಿಸುವುದು ನಾವು ಎದುರಿಸಿದ ಉಲ್ಲಂಘನೆಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಲು ಸಾಕಷ್ಟು ಪರಿಣಾಮಕಾರಿಯಾಗಿದೆ. ಅಂದರೆ, ಇವುಗಳು ಡಿಸ್ಕ್ ಫರ್ಮ್ವೇರ್ನಲ್ಲಿನ ದೋಷಗಳು, ಪೋಸ್ಟ್ಗ್ರೆಸ್ನಲ್ಲಿನ ದೋಷಗಳು, ಲಿನಕ್ಸ್ ಕರ್ನಲ್ನಲ್ಲಿನ ದೋಷಗಳು ಮತ್ತು ಹಾರ್ಡ್ವೇರ್ ಸಮಸ್ಯೆಗಳಿಂದ ಉಂಟಾಗಬಹುದಾದ ಉಲ್ಲಂಘನೆಗಳಾಗಿವೆ. ನಾವು ಸಿದ್ಧಪಡಿಸುತ್ತಿರುವ ಸಮಸ್ಯೆಗಳ ಮೂಲಗಳ ಸಾಕಷ್ಟು ವಿಸ್ತಾರವಾದ ಪಟ್ಟಿ.
ಆದರೆ ಸೂಚ್ಯಂಕಗಳ ಜೊತೆಗೆ, ರಾಶಿಯಂತಹ ಒಂದು ಭಾಗವಿದೆ, ಅಂದರೆ ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಲಾದ ಸ್ಥಳ. ಮತ್ತು ಪರಿಶೀಲಿಸಬಹುದಾದ ಅನೇಕ ಬದಲಾವಣೆಗಳಿಲ್ಲ.
ನಾವು Heapcheck ಎಂಬ ವಿಸ್ತರಣೆಯನ್ನು ಹೊಂದಿದ್ದೇವೆ. ನಾವು ಅದನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲು ಪ್ರಾರಂಭಿಸಿದ್ದೇವೆ. ಮತ್ತು ಸಮಾನಾಂತರವಾಗಿ, ನಮ್ಮೊಂದಿಗೆ, ಎಂಟರ್ಪ್ರೈಸ್ಡಿಬಿ ಕಂಪನಿಯು ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಬರೆಯಲು ಪ್ರಾರಂಭಿಸಿತು, ಅದನ್ನು ಅವರು ಅದೇ ರೀತಿಯಲ್ಲಿ ಹೀಪ್ಚೆಕ್ ಎಂದು ಕರೆಯುತ್ತಾರೆ. ನಾವು ಮಾತ್ರ ಇದನ್ನು PgHeapcheck ಎಂದು ಕರೆದಿದ್ದೇವೆ ಮತ್ತು ಅವರು ಅದನ್ನು Heapcheck ಎಂದು ಕರೆದರು. ಅವರು ಒಂದೇ ರೀತಿಯ ಕಾರ್ಯಗಳೊಂದಿಗೆ, ಸ್ವಲ್ಪ ವಿಭಿನ್ನವಾದ ಸಹಿಯನ್ನು ಹೊಂದಿದ್ದಾರೆ, ಆದರೆ ಅದೇ ಆಲೋಚನೆಗಳೊಂದಿಗೆ. ಅವರು ಕೆಲವು ಸ್ಥಳಗಳಲ್ಲಿ ಸ್ವಲ್ಪ ಉತ್ತಮವಾಗಿ ಅವುಗಳನ್ನು ಜಾರಿಗೆ ತಂದರು. ಮತ್ತು ಅವರು ಅದನ್ನು ಮೊದಲು ತೆರೆದ ಮೂಲದಲ್ಲಿ ಪೋಸ್ಟ್ ಮಾಡಿದ್ದಾರೆ.
ಮತ್ತು ಈಗ ನಾವು ಅವರ ವಿಸ್ತರಣೆಯನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುತ್ತಿದ್ದೇವೆ, ಏಕೆಂದರೆ ಇದು ಇನ್ನು ಮುಂದೆ ಅವರ ವಿಸ್ತರಣೆಯಲ್ಲ, ಆದರೆ ಸಮುದಾಯದ ವಿಸ್ತರಣೆಯಾಗಿದೆ. ಮತ್ತು ಭವಿಷ್ಯದಲ್ಲಿ, ಇದು ಎಲ್ಲರಿಗೂ ಸರಬರಾಜು ಮಾಡಲಾಗುವ ಕರ್ನಲ್ನ ಭಾಗವಾಗಿದೆ ಇದರಿಂದ ಅವರು ಭವಿಷ್ಯದ ಸಮಸ್ಯೆಗಳ ಬಗ್ಗೆ ಮುಂಚಿತವಾಗಿ ತಿಳಿದುಕೊಳ್ಳಬಹುದು.
ಕೆಲವು ಸ್ಥಳಗಳಲ್ಲಿ, ನಮ್ಮ ಮೇಲ್ವಿಚಾರಣಾ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ನಾವು ತಪ್ಪು ಧನಾತ್ಮಕತೆಯನ್ನು ಹೊಂದಿದ್ದೇವೆ ಎಂಬ ತೀರ್ಮಾನಕ್ಕೆ ಬಂದಿದ್ದೇವೆ. ಉದಾಹರಣೆಗೆ, 1 ಸಿ ಸಿಸ್ಟಮ್. ಡೇಟಾಬೇಸ್ ಅನ್ನು ಬಳಸುವಾಗ, ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಕೆಲವೊಮ್ಮೆ ಅದನ್ನು ಓದಬಹುದಾದ ಡೇಟಾವನ್ನು ಬರೆಯುತ್ತದೆ, ಆದರೆ pg_dump ಅನ್ನು ಓದಲಾಗುವುದಿಲ್ಲ.
ಈ ಪರಿಸ್ಥಿತಿಯು ನಮ್ಮ ಸಮಸ್ಯೆ ಪತ್ತೆ ವ್ಯವಸ್ಥೆಗೆ ಭ್ರಷ್ಟಾಚಾರದಂತೆ ತೋರುತ್ತಿದೆ. ಡ್ಯೂಟಿ ಆಫೀಸರ್ಗೆ ಎಚ್ಚರವಾಯಿತು. ಡ್ಯೂಟಿ ಆಫೀಸರ್ ಏನಾಗುತ್ತಿದೆ ಎಂದು ನೋಡಿದರು. ಸ್ವಲ್ಪ ಸಮಯದ ನಂತರ, ಒಬ್ಬ ಕ್ಲೈಂಟ್ ಬಂದು ನನಗೆ ಸಮಸ್ಯೆಗಳಿವೆ ಎಂದು ಹೇಳಿದರು. ಅಟೆಂಡರ್ ಸಮಸ್ಯೆ ಏನು ಎಂದು ವಿವರಿಸಿದರು. ಆದರೆ ಸಮಸ್ಯೆ ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಕೋರ್ನಲ್ಲಿದೆ.
ಈ ವೈಶಿಷ್ಟ್ಯದ ಕುರಿತು ನಾನು ಚರ್ಚೆಯನ್ನು ಕಂಡುಕೊಂಡಿದ್ದೇನೆ. ಮತ್ತು ನಾವು ಈ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಎದುರಿಸಿದ್ದೇವೆ ಮತ್ತು ಅದು ಅಹಿತಕರವಾಗಿದೆ ಎಂದು ಅವರು ಬರೆದಿದ್ದಾರೆ, ಅದು ಏನೆಂದು ಲೆಕ್ಕಾಚಾರ ಮಾಡಲು ಒಬ್ಬ ವ್ಯಕ್ತಿಯು ರಾತ್ರಿಯಲ್ಲಿ ಎಚ್ಚರವಾಯಿತು.
ಸಮುದಾಯವು ಪ್ರತಿಕ್ರಿಯಿಸಿತು, "ಓಹ್, ನಾವು ಅದನ್ನು ಸರಿಪಡಿಸಬೇಕಾಗಿದೆ."
ನನಗೆ ಸರಳ ಸಾದೃಶ್ಯವಿದೆ. ನೀವು ಮರಳಿನ ಧಾನ್ಯವನ್ನು ಹೊಂದಿರುವ ಶೂನಲ್ಲಿ ನಡೆಯುತ್ತಿದ್ದರೆ, ತಾತ್ವಿಕವಾಗಿ, ನೀವು ಮುಂದುವರಿಯಬಹುದು - ತೊಂದರೆ ಇಲ್ಲ. ನೀವು ಸಾವಿರಾರು ಜನರಿಗೆ ಬೂಟುಗಳನ್ನು ಮಾರಾಟ ಮಾಡಿದರೆ, ಮರಳು ಇಲ್ಲದೆ ಬೂಟುಗಳನ್ನು ಮಾಡೋಣ. ಮತ್ತು ನಿಮ್ಮ ಬೂಟುಗಳ ಬಳಕೆದಾರರಲ್ಲಿ ಒಬ್ಬರು ಮ್ಯಾರಥಾನ್ ಓಡಲು ಹೋದರೆ, ನೀವು ಉತ್ತಮವಾದ ಬೂಟುಗಳನ್ನು ಮಾಡಲು ಬಯಸುತ್ತೀರಿ, ತದನಂತರ ಅವುಗಳನ್ನು ನಿಮ್ಮ ಎಲ್ಲಾ ಬಳಕೆದಾರರಿಗೆ ಅಳೆಯಿರಿ. ಮತ್ತು ಅಂತಹ ಅನಿರೀಕ್ಷಿತ ಬಳಕೆದಾರರು ಯಾವಾಗಲೂ ಕ್ಲೌಡ್ ಪರಿಸರದಲ್ಲಿ ಇರುತ್ತಾರೆ. ಕ್ಲಸ್ಟರ್ ಅನ್ನು ಕೆಲವು ಮೂಲ ರೀತಿಯಲ್ಲಿ ಬಳಸಿಕೊಳ್ಳುವ ಬಳಕೆದಾರರು ಯಾವಾಗಲೂ ಇರುತ್ತಾರೆ. ಇದಕ್ಕಾಗಿ ನೀವು ಯಾವಾಗಲೂ ಸಿದ್ಧರಾಗಿರಬೇಕು.
ನಾವು ಇಲ್ಲಿ ಏನು ಕಲಿತಿದ್ದೇವೆ? ನಾವು ಸರಳವಾದ ವಿಷಯವನ್ನು ಕಲಿತಿದ್ದೇವೆ: ಸಮಸ್ಯೆ ಇದೆ ಎಂದು ಸಮುದಾಯಕ್ಕೆ ವಿವರಿಸುವುದು ಅತ್ಯಂತ ಮುಖ್ಯವಾದ ವಿಷಯವಾಗಿದೆ. ಸಮುದಾಯವು ಸಮಸ್ಯೆಯನ್ನು ಗುರುತಿಸಿದರೆ, ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲು ನೈಸರ್ಗಿಕ ಸ್ಪರ್ಧೆಯು ಉದ್ಭವಿಸುತ್ತದೆ. ಏಕೆಂದರೆ ಪ್ರತಿಯೊಬ್ಬರೂ ಒಂದು ಪ್ರಮುಖ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲು ಬಯಸುತ್ತಾರೆ. ಎಲ್ಲಾ ಮಾರಾಟಗಾರರು, ಎಲ್ಲಾ ಹ್ಯಾಕರ್ಗಳು ತಾವು ಈ ಕುಂಟೆಯ ಮೇಲೆ ಹೆಜ್ಜೆ ಹಾಕಬಹುದು ಎಂದು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುತ್ತಾರೆ, ಆದ್ದರಿಂದ ಅವರು ಅವುಗಳನ್ನು ತೊಡೆದುಹಾಕಲು ಬಯಸುತ್ತಾರೆ.
ನೀವು ಸಮಸ್ಯೆಯೊಂದರಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದರೆ, ಆದರೆ ಅದು ನಿಮ್ಮನ್ನು ಹೊರತುಪಡಿಸಿ ಯಾರಿಗೂ ತೊಂದರೆಯಾಗುವುದಿಲ್ಲ, ಆದರೆ ನೀವು ಅದನ್ನು ವ್ಯವಸ್ಥಿತವಾಗಿ ಕೆಲಸ ಮಾಡಿದರೆ ಮತ್ತು ಅಂತಿಮವಾಗಿ ಅದನ್ನು ಸಮಸ್ಯೆ ಎಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ, ಆಗ ನಿಮ್ಮ ಪುಲ್ ವಿನಂತಿಯನ್ನು ಖಂಡಿತವಾಗಿ ಸ್ವೀಕರಿಸಲಾಗುತ್ತದೆ. ನಿಮ್ಮ ಪ್ಯಾಚ್ ಅನ್ನು ಸ್ವೀಕರಿಸಲಾಗುತ್ತದೆ, ನಿಮ್ಮ ಸುಧಾರಣೆಗಳು ಅಥವಾ ಸುಧಾರಣೆಗಳಿಗಾಗಿ ವಿನಂತಿಗಳನ್ನು ಸಮುದಾಯವು ಪರಿಶೀಲಿಸುತ್ತದೆ. ದಿನದ ಕೊನೆಯಲ್ಲಿ, ನಾವು ಡೇಟಾಬೇಸ್ ಅನ್ನು ಪರಸ್ಪರ ಉತ್ತಮಗೊಳಿಸುತ್ತೇವೆ.
ಆಸಕ್ತಿದಾಯಕ ಡೇಟಾಬೇಸ್ ಗ್ರೀನ್ಪ್ಲಮ್ ಆಗಿದೆ. ಇದು ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಕೋಡ್ಬೇಸ್ ಅನ್ನು ಆಧರಿಸಿದ ಹೆಚ್ಚು ಸಮಾನಾಂತರ ಡೇಟಾಬೇಸ್ ಆಗಿದೆ, ಇದು ನನಗೆ ತುಂಬಾ ಪರಿಚಿತವಾಗಿದೆ.
ಮತ್ತು ಗ್ರೀನ್ಪ್ಲಮ್ ಆಸಕ್ತಿದಾಯಕ ಕಾರ್ಯವನ್ನು ಹೊಂದಿದೆ - ಆಪ್ಟಿಮೈಸ್ಡ್ ಕೋಷ್ಟಕಗಳನ್ನು ಸೇರಿಸಿ. ಇವುಗಳು ನೀವು ತ್ವರಿತವಾಗಿ ಸೇರಿಸಬಹುದಾದ ಕೋಷ್ಟಕಗಳಾಗಿವೆ. ಅವು ಸ್ತಂಭಾಕಾರದ ಅಥವಾ ಸಾಲು ಆಗಿರಬಹುದು.
ಆದರೆ ಯಾವುದೇ ಕ್ಲಸ್ಟರಿಂಗ್ ಇರಲಿಲ್ಲ, ಅಂದರೆ ನೀವು ಸೂಚ್ಯಂಕಗಳಲ್ಲಿರುವ ಕ್ರಮಕ್ಕೆ ಅನುಗುಣವಾಗಿ ಟೇಬಲ್ನಲ್ಲಿರುವ ಡೇಟಾವನ್ನು ಜೋಡಿಸುವ ಯಾವುದೇ ಕಾರ್ಯವಿಲ್ಲ.
ಟ್ಯಾಕ್ಸಿಯ ಹುಡುಗರು ನನ್ನ ಬಳಿಗೆ ಬಂದು ಹೇಳಿದರು: “ಆಂಡ್ರೇ, ನಿಮಗೆ ಪೋಸ್ಟ್ಗ್ರೆಸ್ ತಿಳಿದಿದೆ. ಮತ್ತು ಇಲ್ಲಿ ಅದು ಬಹುತೇಕ ಒಂದೇ ಆಗಿರುತ್ತದೆ. 20 ನಿಮಿಷಗಳಿಗೆ ಬದಲಿಸಿ. ನೀನು ತೆಗೆದುಕೊಂಡು ಮಾಡು.” ಹೌದು, ನನಗೆ ಪೋಸ್ಟ್ಗ್ರೆಸ್ ತಿಳಿದಿದೆ ಎಂದು ನಾನು ಭಾವಿಸಿದೆ, 20 ನಿಮಿಷಗಳ ಕಾಲ ಬದಲಾಯಿಸುತ್ತಿದ್ದೇನೆ - ನಾನು ಇದನ್ನು ಮಾಡಬೇಕಾಗಿದೆ.
ಆದರೆ ಇಲ್ಲ, ಇದು 20 ನಿಮಿಷಗಳು ಅಲ್ಲ, ನಾನು ಅದನ್ನು ತಿಂಗಳುಗಳಲ್ಲಿ ಬರೆದಿದ್ದೇನೆ. PgConf.Russia ಸಮ್ಮೇಳನದಲ್ಲಿ, ನಾನು Pivotal ನಿಂದ Heikki Linakangas ಅನ್ನು ಸಂಪರ್ಕಿಸಿದೆ ಮತ್ತು ಕೇಳಿದೆ: “ಇದರಲ್ಲಿ ಯಾವುದೇ ಸಮಸ್ಯೆಗಳಿವೆಯೇ? ಅನುಬಂಧ ಆಪ್ಟಿಮೈಸ್ಡ್ ಟೇಬಲ್ ಕ್ಲಸ್ಟರಿಂಗ್ ಏಕೆ ಇಲ್ಲ?" ಅವರು ಹೇಳುತ್ತಾರೆ: “ನೀವು ಡೇಟಾವನ್ನು ತೆಗೆದುಕೊಳ್ಳಿ. ನೀವು ವಿಂಗಡಿಸಿ, ನೀವು ಮರುಹೊಂದಿಸಿ. ಇದು ಕೇವಲ ಒಂದು ಕೆಲಸ. ನಾನು: "ಓಹ್, ಹೌದು, ನೀವು ಅದನ್ನು ತೆಗೆದುಕೊಂಡು ಅದನ್ನು ಮಾಡಬೇಕಾಗಿದೆ." ಅವರು ಹೇಳುತ್ತಾರೆ: "ಹೌದು, ಇದನ್ನು ಮಾಡಲು ನಮಗೆ ಉಚಿತ ಕೈಗಳು ಬೇಕು." ನಾನು ಇದನ್ನು ಖಂಡಿತವಾಗಿಯೂ ಮಾಡಬೇಕಾಗಿದೆ ಎಂದು ನಾನು ಭಾವಿಸಿದೆ.
ಮತ್ತು ಕೆಲವು ತಿಂಗಳುಗಳ ನಂತರ ನಾನು ಈ ಕಾರ್ಯವನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಿದ ಪುಲ್ ವಿನಂತಿಯನ್ನು ಸಲ್ಲಿಸಿದೆ. ಈ ಪುಲ್ ವಿನಂತಿಯನ್ನು ಸಮುದಾಯದೊಂದಿಗೆ ಪ್ರಮುಖರು ಪರಿಶೀಲಿಸಿದ್ದಾರೆ. ಸಹಜವಾಗಿ, ದೋಷಗಳು ಇದ್ದವು.
ಆದರೆ ಅತ್ಯಂತ ಆಸಕ್ತಿದಾಯಕ ವಿಷಯವೆಂದರೆ ಈ ಪುಲ್ ವಿನಂತಿಯನ್ನು ವಿಲೀನಗೊಳಿಸಿದಾಗ, ಗ್ರೀನ್ಪ್ಲಮ್ನಲ್ಲಿಯೇ ದೋಷಗಳು ಕಂಡುಬಂದಿವೆ. ಹೀಪ್ ಟೇಬಲ್ಗಳು ಕ್ಲಸ್ಟರ್ ಆಗಿರುವಾಗ ಕೆಲವೊಮ್ಮೆ ವಹಿವಾಟನ್ನು ಮುರಿಯುತ್ತವೆ ಎಂದು ನಾವು ಕಂಡುಕೊಂಡಿದ್ದೇವೆ. ಮತ್ತು ಇದು ಸರಿಪಡಿಸಬೇಕಾದ ವಿಷಯವಾಗಿದೆ. ಮತ್ತು ನಾನು ಸ್ಪರ್ಶಿಸಿದ ಸ್ಥಳದಲ್ಲಿ ಅವಳು ಇದ್ದಾಳೆ. ಮತ್ತು ನನ್ನ ಸಹಜ ಪ್ರತಿಕ್ರಿಯೆ - ಸರಿ, ನನಗೂ ಇದನ್ನು ಮಾಡೋಣ.
ನಾನು ಈ ದೋಷವನ್ನು ಸರಿಪಡಿಸಿದೆ. ಫಿಕ್ಸರ್ಗಳಿಗೆ ಪುಲ್ ವಿನಂತಿಯನ್ನು ಕಳುಹಿಸಲಾಗಿದೆ. ಅವನು ಕೊಲೆಯಾದ.
ಅದರ ನಂತರ ಈ ಕಾರ್ಯವನ್ನು PostgreSQL 12 ಗಾಗಿ ಗ್ರೀನ್ಪ್ಲಮ್ ಆವೃತ್ತಿಯಲ್ಲಿ ಪಡೆಯಬೇಕಾಗಿದೆ ಎಂದು ಬದಲಾಯಿತು. ಅಂದರೆ, 20-ನಿಮಿಷದ ಸಾಹಸವು ಹೊಸ ಆಸಕ್ತಿದಾಯಕ ಸಾಹಸಗಳೊಂದಿಗೆ ಮುಂದುವರಿಯುತ್ತದೆ. ಪ್ರಸ್ತುತ ಅಭಿವೃದ್ಧಿಯನ್ನು ಸ್ಪರ್ಶಿಸುವುದು ಆಸಕ್ತಿದಾಯಕವಾಗಿದೆ, ಅಲ್ಲಿ ಸಮುದಾಯವು ಹೊಸ ಮತ್ತು ಪ್ರಮುಖ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಕತ್ತರಿಸುತ್ತಿದೆ. ಅದು ಹೆಪ್ಪುಗಟ್ಟಿದೆ.
ಆದರೆ ಅದು ಅಲ್ಲಿಗೆ ಮುಗಿಯಲಿಲ್ಲ. ಎಲ್ಲದರ ನಂತರ, ಈ ಎಲ್ಲದಕ್ಕೂ ನಾವು ದಸ್ತಾವೇಜನ್ನು ಬರೆಯಬೇಕಾಗಿದೆ ಎಂದು ಅದು ಬದಲಾಯಿತು.
ನಾನು ದಸ್ತಾವೇಜನ್ನು ಬರೆಯಲು ಪ್ರಾರಂಭಿಸಿದೆ. ಅದೃಷ್ಟವಶಾತ್, ಪಿವೋಟಲ್ನ ಸಾಕ್ಷ್ಯಚಿತ್ರಕಾರರು ಬಂದರು. ಇಂಗ್ಲಿಷ್ ಅವರ ಮಾತೃಭಾಷೆ. ಅವರು ದಾಖಲೆಗಳೊಂದಿಗೆ ನನಗೆ ಸಹಾಯ ಮಾಡಿದರು. ವಾಸ್ತವವಾಗಿ, ನಾನು ಪ್ರಸ್ತಾಪಿಸಿದ್ದನ್ನು ಅವರೇ ನಿಜವಾದ ಇಂಗ್ಲಿಷ್ಗೆ ಪುನಃ ಬರೆದಿದ್ದಾರೆ.
ಮತ್ತು ಇಲ್ಲಿ, ಸಾಹಸವು ಕೊನೆಗೊಂಡಿತು ಎಂದು ತೋರುತ್ತದೆ. ಮತ್ತು ನಂತರ ಏನಾಯಿತು ಎಂದು ನಿಮಗೆ ತಿಳಿದಿದೆಯೇ? ಟ್ಯಾಕ್ಸಿಯ ವ್ಯಕ್ತಿಗಳು ನನ್ನ ಬಳಿಗೆ ಬಂದು ಹೇಳಿದರು: "ಇನ್ನೂ ಎರಡು ಸಾಹಸಗಳಿವೆ, ಪ್ರತಿಯೊಂದೂ 10 ನಿಮಿಷಗಳ ಕಾಲ." ಮತ್ತು ನಾನು ಅವರಿಗೆ ಏನು ಹೇಳಬೇಕು? ಈಗ ನಾನು ಪ್ರಮಾಣದಲ್ಲಿ ವರದಿಯನ್ನು ನೀಡುತ್ತೇನೆ ಎಂದು ನಾನು ಹೇಳಿದೆ, ನಂತರ ನಾವು ನಿಮ್ಮ ಸಾಹಸಗಳನ್ನು ನೋಡುತ್ತೇವೆ, ಏಕೆಂದರೆ ಇದು ಆಸಕ್ತಿದಾಯಕ ಕೆಲಸವಾಗಿದೆ.
ಈ ಪ್ರಕರಣದಿಂದ ನಾವೇನು ಕಲಿತೆವು? ತೆರೆದ ಮೂಲದೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವುದು ಯಾವಾಗಲೂ ನಿರ್ದಿಷ್ಟ ವ್ಯಕ್ತಿಯೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವುದರಿಂದ, ಅದು ಯಾವಾಗಲೂ ಸಮುದಾಯದೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ. ಏಕೆಂದರೆ ಪ್ರತಿಯೊಂದು ಹಂತದಲ್ಲೂ ನಾನು ಕೆಲವು ಡೆವಲಪರ್, ಕೆಲವು ಪರೀಕ್ಷಕ, ಕೆಲವು ಹ್ಯಾಕರ್, ಕೆಲವು ಡಾಕ್ಯುಮೆಂಟರಿಯನ್, ಕೆಲವು ವಾಸ್ತುಶಿಲ್ಪಿಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಿದ್ದೇನೆ. ನಾನು ಗ್ರೀನ್ಪ್ಲಮ್ನೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಲಿಲ್ಲ, ನಾನು ಗ್ರೀನ್ಪ್ಲಮ್ ಸುತ್ತಮುತ್ತಲಿನ ಜನರೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಿದ್ದೇನೆ.
ಆದರೆ! ಮತ್ತೊಂದು ಪ್ರಮುಖ ಅಂಶವಿದೆ - ಇದು ಕೇವಲ ಕೆಲಸ. ಅಂದರೆ, ನೀವು ಬನ್ನಿ, ಕಾಫಿ ಕುಡಿಯಿರಿ, ಕೋಡ್ ಬರೆಯಿರಿ. ಎಲ್ಲಾ ರೀತಿಯ ಸರಳ ಬದಲಾವಣೆಗಳು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ. ಅದನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಮಾಡಿ - ಅದು ಚೆನ್ನಾಗಿರುತ್ತದೆ! ಮತ್ತು ಇದು ಸಾಕಷ್ಟು ಆಸಕ್ತಿದಾಯಕ ಕೆಲಸವಾಗಿದೆ. Yandex.Cloud ಕ್ಲೈಂಟ್ಗಳಿಂದ ಈ ಕೆಲಸಕ್ಕಾಗಿ ವಿನಂತಿಯಿದೆ, Yandex ಒಳಗೆ ಮತ್ತು ಹೊರಗೆ ನಮ್ಮ ಕ್ಲಸ್ಟರ್ಗಳ ಬಳಕೆದಾರರು. ಮತ್ತು ನಾವು ಭಾಗವಹಿಸುವ ಯೋಜನೆಗಳ ಸಂಖ್ಯೆಯು ಹೆಚ್ಚಾಗುತ್ತದೆ ಮತ್ತು ನಮ್ಮ ಒಳಗೊಳ್ಳುವಿಕೆಯ ಆಳವೂ ಹೆಚ್ಚಾಗುತ್ತದೆ ಎಂದು ನಾನು ಭಾವಿಸುತ್ತೇನೆ.
ಅಷ್ಟೇ. ಪ್ರಶ್ನೆಗಳಿಗೆ ಹೋಗೋಣ.
ಪ್ರಶ್ನೆಗಳ ಸೆಷನ್
ನಮಸ್ಕಾರ! ನಾವು ಇನ್ನೊಂದು ಪ್ರಶ್ನೋತ್ತರ ಅವಧಿಯನ್ನು ಹೊಂದಿದ್ದೇವೆ. ಮತ್ತು ಆಂಡ್ರೇ ಬೊರೊಡಿನ್ ಸ್ಟುಡಿಯೋದಲ್ಲಿ. ತೆರೆದ ಮೂಲಕ್ಕೆ Yandex.Cloud ಮತ್ತು Yandex ಕೊಡುಗೆಯ ಬಗ್ಗೆ ನಿಮಗೆ ಹೇಳಿದ ವ್ಯಕ್ತಿ ಇದು. ನಮ್ಮ ವರದಿಯು ಈಗ ಸಂಪೂರ್ಣವಾಗಿ ಕ್ಲೌಡ್ ಬಗ್ಗೆ ಅಲ್ಲ, ಆದರೆ ಅದೇ ಸಮಯದಲ್ಲಿ ನಾವು ಅಂತಹ ತಂತ್ರಜ್ಞಾನಗಳನ್ನು ಆಧರಿಸಿರುತ್ತೇವೆ. Yandex ಒಳಗೆ ನೀವು ಏನು ಮಾಡದಿದ್ದರೆ, Yandex.Cloud ನಲ್ಲಿ ಯಾವುದೇ ಸೇವೆ ಇರುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ನನ್ನಿಂದ ವೈಯಕ್ತಿಕವಾಗಿ ಧನ್ಯವಾದಗಳು. ಮತ್ತು ಪ್ರಸಾರದ ಮೊದಲ ಪ್ರಶ್ನೆ: "ನೀವು ಪ್ರಸ್ತಾಪಿಸಿದ ಪ್ರತಿಯೊಂದು ಯೋಜನೆಗಳು ಏನು ಬರೆಯಲ್ಪಟ್ಟಿವೆ?"
WAL-G ನಲ್ಲಿನ ಬ್ಯಾಕಪ್ ಸಿಸ್ಟಮ್ ಅನ್ನು Go ನಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ. ಇದು ನಾವು ಕೆಲಸ ಮಾಡಿದ ಹೊಸ ಯೋಜನೆಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ. ಅವರು ಅಕ್ಷರಶಃ ಕೇವಲ 3 ವರ್ಷ ವಯಸ್ಸಿನವರು. ಮತ್ತು ಡೇಟಾಬೇಸ್ ಸಾಮಾನ್ಯವಾಗಿ ವಿಶ್ವಾಸಾರ್ಹತೆಯ ಬಗ್ಗೆ. ಮತ್ತು ಇದರರ್ಥ ಡೇಟಾಬೇಸ್ಗಳು ಸಾಕಷ್ಟು ಹಳೆಯದಾಗಿದೆ ಮತ್ತು ಅವುಗಳನ್ನು ಸಾಮಾನ್ಯವಾಗಿ C ನಲ್ಲಿ ಬರೆಯಲಾಗುತ್ತದೆ. ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಯೋಜನೆಯು ಸುಮಾರು 30 ವರ್ಷಗಳ ಹಿಂದೆ ಪ್ರಾರಂಭವಾಯಿತು. ನಂತರ C89 ಸರಿಯಾದ ಆಯ್ಕೆಯಾಗಿದೆ. ಮತ್ತು ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಅನ್ನು ಅದರ ಮೇಲೆ ಬರೆಯಲಾಗಿದೆ. ಕ್ಲಿಕ್ಹೌಸ್ನಂತಹ ಆಧುನಿಕ ಡೇಟಾಬೇಸ್ಗಳನ್ನು ಸಾಮಾನ್ಯವಾಗಿ C++ ನಲ್ಲಿ ಬರೆಯಲಾಗುತ್ತದೆ. ಎಲ್ಲಾ ಸಿಸ್ಟಮ್ ಅಭಿವೃದ್ಧಿಯು C ಮತ್ತು C++ ಅನ್ನು ಆಧರಿಸಿದೆ.
ಕ್ಲೌಡ್ನಲ್ಲಿನ ವೆಚ್ಚಗಳಿಗೆ ಜವಾಬ್ದಾರರಾಗಿರುವ ನಮ್ಮ ಹಣಕಾಸು ವ್ಯವಸ್ಥಾಪಕರಿಂದ ಒಂದು ಪ್ರಶ್ನೆ: "ಓಪನ್ ಸೋರ್ಸ್ ಅನ್ನು ಬೆಂಬಲಿಸಲು ಕ್ಲೌಡ್ ಏಕೆ ಹಣವನ್ನು ಖರ್ಚು ಮಾಡುತ್ತದೆ?"
ಇಲ್ಲಿ ಹಣಕಾಸು ವ್ಯವಸ್ಥಾಪಕರಿಗೆ ಸರಳವಾದ ಉತ್ತರವಿದೆ. ನಮ್ಮ ಸೇವೆಗಳನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ನಾವು ಇದನ್ನು ಮಾಡುತ್ತೇವೆ. ಯಾವ ರೀತಿಯಲ್ಲಿ ನಾವು ಉತ್ತಮವಾಗಿ ಮಾಡಬಹುದು? ನಾವು ಕೆಲಸಗಳನ್ನು ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿ, ವೇಗವಾಗಿ ಮಾಡಬಹುದು ಮತ್ತು ವಿಷಯಗಳನ್ನು ಹೆಚ್ಚು ಸ್ಕೇಲೆಬಲ್ ಮಾಡಬಹುದು. ಆದರೆ ನಮಗೆ, ಈ ಕಥೆಯು ಪ್ರಾಥಮಿಕವಾಗಿ ವಿಶ್ವಾಸಾರ್ಹತೆಯ ಬಗ್ಗೆ. ಉದಾಹರಣೆಗೆ, ಬ್ಯಾಕಪ್ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ನಾವು ಅದಕ್ಕೆ ಅನ್ವಯಿಸುವ 100% ಪ್ಯಾಚ್ಗಳನ್ನು ಪರಿಶೀಲಿಸುತ್ತೇವೆ. ಕೋಡ್ ಏನು ಎಂದು ನಮಗೆ ತಿಳಿದಿದೆ. ಮತ್ತು ಉತ್ಪಾದನೆಗೆ ಹೊಸ ಆವೃತ್ತಿಗಳನ್ನು ಹೊರತರಲು ನಾವು ಹೆಚ್ಚು ಆರಾಮದಾಯಕವಾಗಿದ್ದೇವೆ. ಅಂದರೆ, ಮೊದಲನೆಯದಾಗಿ, ಇದು ಆತ್ಮವಿಶ್ವಾಸದ ಬಗ್ಗೆ, ಅಭಿವೃದ್ಧಿಗೆ ಸಿದ್ಧತೆ ಮತ್ತು ವಿಶ್ವಾಸಾರ್ಹತೆಯ ಬಗ್ಗೆ
ಮತ್ತೊಂದು ಪ್ರಶ್ನೆ: "Yandex.Cloud ನಲ್ಲಿ ವಾಸಿಸುವ ಬಾಹ್ಯ ಬಳಕೆದಾರರ ಅವಶ್ಯಕತೆಗಳು ಆಂತರಿಕ ಮೇಘದಲ್ಲಿ ವಾಸಿಸುವ ಆಂತರಿಕ ಬಳಕೆದಾರರಿಗಿಂತ ಭಿನ್ನವಾಗಿದೆಯೇ?"
ಲೋಡ್ ಪ್ರೊಫೈಲ್, ಸಹಜವಾಗಿ, ವಿಭಿನ್ನವಾಗಿದೆ. ಆದರೆ ನನ್ನ ಇಲಾಖೆಯ ದೃಷ್ಟಿಕೋನದಿಂದ, ಎಲ್ಲಾ ವಿಶೇಷ ಮತ್ತು ಆಸಕ್ತಿದಾಯಕ ಪ್ರಕರಣಗಳನ್ನು ಪ್ರಮಾಣಿತವಲ್ಲದ ಲೋಡ್ನಲ್ಲಿ ರಚಿಸಲಾಗಿದೆ. ಕಲ್ಪನೆಯನ್ನು ಹೊಂದಿರುವ ಡೆವಲಪರ್ಗಳು, ಅನಿರೀಕ್ಷಿತವಾಗಿ ಮಾಡುವ ಡೆವಲಪರ್ಗಳು ಆಂತರಿಕವಾಗಿ ಮತ್ತು ಬಾಹ್ಯವಾಗಿ ಕಂಡುಬರುವ ಸಾಧ್ಯತೆಯಿದೆ. ಈ ನಿಟ್ಟಿನಲ್ಲಿ, ನಾವೆಲ್ಲರೂ ಸರಿಸುಮಾರು ಒಂದೇ ಆಗಿದ್ದೇವೆ. ಮತ್ತು, ಬಹುಶಃ, ಡೇಟಾಬೇಸ್ಗಳ ಯಾಂಡೆಕ್ಸ್ ಕಾರ್ಯಾಚರಣೆಯೊಳಗಿನ ಏಕೈಕ ಪ್ರಮುಖ ವೈಶಿಷ್ಟ್ಯವೆಂದರೆ ಯಾಂಡೆಕ್ಸ್ ಒಳಗೆ ನಾವು ಬೋಧನೆಯನ್ನು ಹೊಂದಿದ್ದೇವೆ. ಕೆಲವು ಹಂತದಲ್ಲಿ, ಕೆಲವು ಲಭ್ಯತೆಯ ವಲಯವು ಸಂಪೂರ್ಣವಾಗಿ ನೆರಳುಗೆ ಹೋಗುತ್ತದೆ, ಮತ್ತು ಎಲ್ಲಾ Yandex ಸೇವೆಗಳು ಹೇಗಾದರೂ ಈ ಹೊರತಾಗಿಯೂ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದನ್ನು ಮುಂದುವರೆಸಬೇಕು. ಇದು ಒಂದು ಸಣ್ಣ ವ್ಯತ್ಯಾಸ. ಆದರೆ ಇದು ಡೇಟಾಬೇಸ್ ಮತ್ತು ನೆಟ್ವರ್ಕ್ ಸ್ಟಾಕ್ನ ಇಂಟರ್ಫೇಸ್ನಲ್ಲಿ ಸಾಕಷ್ಟು ಸಂಶೋಧನಾ ಅಭಿವೃದ್ಧಿಯನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ. ಇಲ್ಲದಿದ್ದರೆ, ಬಾಹ್ಯ ಮತ್ತು ಆಂತರಿಕ ಅನುಸ್ಥಾಪನೆಗಳು ವೈಶಿಷ್ಟ್ಯಗಳಿಗಾಗಿ ಒಂದೇ ರೀತಿಯ ವಿನಂತಿಗಳನ್ನು ಮತ್ತು ವಿಶ್ವಾಸಾರ್ಹತೆ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಸುಧಾರಿಸಲು ಒಂದೇ ರೀತಿಯ ವಿನಂತಿಗಳನ್ನು ರಚಿಸುತ್ತವೆ.
ಮುಂದಿನ ಪ್ರಶ್ನೆ: "ನೀವು ಮಾಡುವ ಹೆಚ್ಚಿನದನ್ನು ಇತರ ಮೋಡಗಳು ಬಳಸುತ್ತವೆ ಎಂಬ ಅಂಶದ ಬಗ್ಗೆ ನಿಮಗೆ ವೈಯಕ್ತಿಕವಾಗಿ ಹೇಗೆ ಅನಿಸುತ್ತದೆ?" ನಾವು ನಿರ್ದಿಷ್ಟವಾದವುಗಳನ್ನು ಹೆಸರಿಸುವುದಿಲ್ಲ, ಆದರೆ Yandex.Cloud ನಲ್ಲಿ ಮಾಡಿದ ಅನೇಕ ಯೋಜನೆಗಳನ್ನು ಇತರ ಜನರ ಮೋಡಗಳಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ.
ಇದು ತಂಪಾಗಿದೆ. ಮೊದಲನೆಯದಾಗಿ, ನಾವು ಏನನ್ನಾದರೂ ಸರಿಯಾಗಿ ಮಾಡಿದ್ದೇವೆ ಎಂಬುದರ ಸಂಕೇತವಾಗಿದೆ. ಮತ್ತು ಇದು ಅಹಂಕಾರವನ್ನು ಗೀಚುತ್ತದೆ. ಮತ್ತು ನಾವು ಸರಿಯಾದ ನಿರ್ಧಾರವನ್ನು ಮಾಡಿದ್ದೇವೆ ಎಂದು ನಮಗೆ ಹೆಚ್ಚು ವಿಶ್ವಾಸವಿದೆ. ಮತ್ತೊಂದೆಡೆ, ಭವಿಷ್ಯದಲ್ಲಿ ಇದು ನಮಗೆ ಹೊಸ ಆಲೋಚನೆಗಳನ್ನು, ಮೂರನೇ ವ್ಯಕ್ತಿಯ ಬಳಕೆದಾರರಿಂದ ಹೊಸ ವಿನಂತಿಗಳನ್ನು ತರುತ್ತದೆ ಎಂಬ ಭರವಸೆಯಾಗಿದೆ. GitHub ನಲ್ಲಿನ ಹೆಚ್ಚಿನ ಸಮಸ್ಯೆಗಳನ್ನು ವೈಯಕ್ತಿಕ ಸಿಸ್ಟಮ್ ನಿರ್ವಾಹಕರು, ವೈಯಕ್ತಿಕ DBA ಗಳು, ವೈಯಕ್ತಿಕ ವಾಸ್ತುಶಿಲ್ಪಿಗಳು, ವೈಯಕ್ತಿಕ ಇಂಜಿನಿಯರ್ಗಳು ರಚಿಸಿದ್ದಾರೆ, ಆದರೆ ಕೆಲವೊಮ್ಮೆ ವ್ಯವಸ್ಥಿತ ಅನುಭವ ಹೊಂದಿರುವ ಜನರು ಬಂದು 30% ಕೆಲವು ಸಂದರ್ಭಗಳಲ್ಲಿ ನಮಗೆ ಈ ಸಮಸ್ಯೆ ಇದೆ ಎಂದು ಹೇಳುತ್ತಾರೆ ಮತ್ತು ಅದನ್ನು ಹೇಗೆ ಪರಿಹರಿಸಬೇಕೆಂದು ಯೋಚಿಸೋಣ. ಇದನ್ನೇ ನಾವು ಹೆಚ್ಚು ಎದುರು ನೋಡುತ್ತಿದ್ದೇವೆ. ಇತರ ಕ್ಲೌಡ್ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗಳೊಂದಿಗೆ ಅನುಭವಗಳನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ನಾವು ಎದುರು ನೋಡುತ್ತಿದ್ದೇವೆ.
ನೀವು ಮ್ಯಾರಥಾನ್ ಬಗ್ಗೆ ಸಾಕಷ್ಟು ಮಾತನಾಡಿದ್ದೀರಿ. ನೀವು ಮಾಸ್ಕೋದಲ್ಲಿ ಮ್ಯಾರಥಾನ್ ಓಡಿದ್ದೀರಿ ಎಂದು ನನಗೆ ತಿಳಿದಿದೆ. ಪರಿಣಾಮವಾಗಿ? PostgreSQL ನಿಂದ ಹುಡುಗರನ್ನು ಹಿಂದಿಕ್ಕಿದ್ದೀರಾ?
ಇಲ್ಲ, ಓಲೆಗ್ ಬಾರ್ಟುನೋವ್ ತುಂಬಾ ವೇಗವಾಗಿ ಓಡುತ್ತಾನೆ. ಅವರು ನನಗಿಂತ ಒಂದು ಗಂಟೆ ಮುಂದೆ ಮುಗಿಸಿದರು. ಒಟ್ಟಾರೆಯಾಗಿ, ನಾನು ಎಷ್ಟು ದೂರಕ್ಕೆ ಬಂದಿದ್ದೇನೆ ಎಂಬುದರ ಬಗ್ಗೆ ನನಗೆ ಸಂತೋಷವಾಗಿದೆ. ನನಗೆ, ಕೇವಲ ಮುಗಿಸುವುದೇ ಒಂದು ಸಾಧನೆಯಾಗಿತ್ತು. ಒಟ್ಟಾರೆಯಾಗಿ, ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಸಮುದಾಯದಲ್ಲಿ ಹಲವಾರು ಓಟಗಾರರು ಇದ್ದಾರೆ ಎಂಬುದು ಆಶ್ಚರ್ಯಕರವಾಗಿದೆ. ಏರೋಬಿಕ್ ಕ್ರೀಡೆ ಮತ್ತು ಸಿಸ್ಟಮ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಬಯಕೆಯ ನಡುವೆ ಕೆಲವು ರೀತಿಯ ಸಂಬಂಧವಿದೆ ಎಂದು ನನಗೆ ತೋರುತ್ತದೆ.
ಕ್ಲಿಕ್ಹೌಸ್ನಲ್ಲಿ ಓಟಗಾರರು ಇಲ್ಲ ಎಂದು ನೀವು ಹೇಳುತ್ತಿದ್ದೀರಾ?
ಅವರು ಅಲ್ಲಿದ್ದಾರೆ ಎಂದು ನನಗೆ ಖಚಿತವಾಗಿ ತಿಳಿದಿದೆ. ಕ್ಲಿಕ್ಹೌಸ್ ಕೂಡ ಡೇಟಾಬೇಸ್ ಆಗಿದೆ. ಅಂದಹಾಗೆ, ಒಲೆಗ್ ಈಗ ನನಗೆ ಬರೆಯುತ್ತಿದ್ದಾನೆ: "ನಾವು ವರದಿಯ ನಂತರ ಓಟಕ್ಕೆ ಹೋಗೋಣವೇ?" ಇದೊಂದು ಉತ್ತಮ ಉಪಾಯ.
ನಿಕಿತಾ ಅವರ ಪ್ರಸಾರದಿಂದ ಮತ್ತೊಂದು ಪ್ರಶ್ನೆ: "ನೀವು ಗ್ರೀನ್ಪ್ಲಮ್ನಲ್ಲಿನ ದೋಷವನ್ನು ನೀವೇ ಏಕೆ ಸರಿಪಡಿಸಿದ್ದೀರಿ ಮತ್ತು ಅದನ್ನು ಕಿರಿಯರಿಗೆ ನೀಡಲಿಲ್ಲ?" ನಿಜ, ದೋಷ ಯಾವುದು ಮತ್ತು ಯಾವ ಸೇವೆಯಲ್ಲಿದೆ ಎಂಬುದು ಸ್ಪಷ್ಟವಾಗಿಲ್ಲ, ಆದರೆ ಬಹುಶಃ ನೀವು ಮಾತನಾಡಿದ ಒಂದನ್ನು ಅರ್ಥೈಸಬಹುದು.
ಹೌದು, ತಾತ್ವಿಕವಾಗಿ, ಅದನ್ನು ಯಾರಿಗಾದರೂ ನೀಡಬಹುದಿತ್ತು. ಇದು ನಾನು ಬದಲಾಯಿಸಿದ ಕೋಡ್ ಮಾತ್ರ. ಮತ್ತು ಈಗಿನಿಂದಲೇ ಅದನ್ನು ಮುಂದುವರಿಸುವುದು ಸಹಜ. ತಾತ್ವಿಕವಾಗಿ, ತಂಡದೊಂದಿಗೆ ಪರಿಣತಿಯನ್ನು ಹಂಚಿಕೊಳ್ಳುವ ಕಲ್ಪನೆಯು ಒಳ್ಳೆಯದು. ನಮ್ಮ ವಿಭಾಗದ ಎಲ್ಲಾ ಸದಸ್ಯರ ನಡುವೆ ನಾವು ಖಂಡಿತವಾಗಿಯೂ ಗ್ರೀನ್ಪ್ಲಮ್ ಕಾರ್ಯಗಳನ್ನು ಹಂಚಿಕೊಳ್ಳುತ್ತೇವೆ.
ನಾವು ಜೂನಿಯರ್ಗಳ ಬಗ್ಗೆ ಮಾತನಾಡುತ್ತಿರುವುದರಿಂದ, ಇಲ್ಲಿ ಒಂದು ಪ್ರಶ್ನೆ ಇದೆ. ಪೋಸ್ಟ್ಗ್ರೆಸ್ನಲ್ಲಿ ಮೊದಲ ಬದ್ಧತೆಯನ್ನು ರಚಿಸಲು ವ್ಯಕ್ತಿ ನಿರ್ಧರಿಸಿದ್ದಾರೆ. ಮೊದಲ ಬದ್ಧತೆಯನ್ನು ಮಾಡಲು ಅವನು ಏನು ಮಾಡಬೇಕು?
ಇದು ಆಸಕ್ತಿದಾಯಕ ಪ್ರಶ್ನೆಯಾಗಿದೆ: "ಎಲ್ಲಿ ಪ್ರಾರಂಭಿಸಬೇಕು?" ಕರ್ನಲ್ನಲ್ಲಿ ಏನನ್ನಾದರೂ ಪ್ರಾರಂಭಿಸಲು ಸಾಮಾನ್ಯವಾಗಿ ತುಂಬಾ ಕಷ್ಟ. ಪೋಸ್ಟ್ಗ್ರೆಸ್ನಲ್ಲಿ, ಉದಾಹರಣೆಗೆ, ಮಾಡಬೇಕಾದ ಪಟ್ಟಿ ಇದೆ. ಆದರೆ ವಾಸ್ತವವಾಗಿ, ಇದು ಅವರು ಏನು ಮಾಡಲು ಪ್ರಯತ್ನಿಸಿದರು ಎಂಬುದರ ಹಾಳೆಯಾಗಿದೆ, ಆದರೆ ಯಶಸ್ವಿಯಾಗಲಿಲ್ಲ. ಇವು ಸಂಕೀರ್ಣ ವಿಷಯಗಳು. ಮತ್ತು ಸಾಮಾನ್ಯವಾಗಿ ನೀವು ಪರಿಸರ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ಕೆಲವು ಉಪಯುಕ್ತತೆಗಳನ್ನು ಕಾಣಬಹುದು, ಕೆಲವು ವಿಸ್ತರಣೆಗಳನ್ನು ಸುಧಾರಿಸಬಹುದು, ಅದು ಕರ್ನಲ್ ಡೆವಲಪರ್ಗಳಿಂದ ಕಡಿಮೆ ಗಮನವನ್ನು ಸೆಳೆಯುತ್ತದೆ. ಮತ್ತು, ಅದರ ಪ್ರಕಾರ, ಅಲ್ಲಿ ಬೆಳವಣಿಗೆಗೆ ಹೆಚ್ಚಿನ ಅಂಕಗಳಿವೆ. ಗೂಗಲ್ ಸಮ್ಮರ್ ಆಫ್ ಕೋಡ್ ಪ್ರೋಗ್ರಾಂನಲ್ಲಿ, ಪ್ರತಿ ವರ್ಷ ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಸಮುದಾಯವು ಹಲವಾರು ವಿಭಿನ್ನ ವಿಷಯಗಳನ್ನು ಪ್ರಸ್ತಾಪಿಸುತ್ತದೆ. ಈ ವರ್ಷ ನಾವು ಮೂರು ವಿದ್ಯಾರ್ಥಿಗಳನ್ನು ಹೊಂದಿದ್ದೇವೆ ಎಂದು ನಾನು ಭಾವಿಸುತ್ತೇನೆ. ಯಾಂಡೆಕ್ಸ್ಗೆ ಮುಖ್ಯವಾದ ವಿಷಯಗಳ ಕುರಿತು ಒಬ್ಬರು WAL-G ನಲ್ಲಿ ಬರೆದಿದ್ದಾರೆ. ಗ್ರೀನ್ಪ್ಲಮ್ನಲ್ಲಿ, ಪೋಸ್ಟ್ಗ್ರೆಸ್ ಸಮುದಾಯಕ್ಕಿಂತ ಎಲ್ಲವೂ ಸರಳವಾಗಿದೆ, ಏಕೆಂದರೆ ಗ್ರೀನ್ಪ್ಲಮ್ ಹ್ಯಾಕರ್ಗಳು ಪುಲ್ ವಿನಂತಿಗಳನ್ನು ಚೆನ್ನಾಗಿ ಪರಿಗಣಿಸುತ್ತಾರೆ ಮತ್ತು ತಕ್ಷಣವೇ ಪರಿಶೀಲಿಸಲು ಪ್ರಾರಂಭಿಸುತ್ತಾರೆ. ಪೋಸ್ಟ್ಗ್ರೆಸ್ಗೆ ಪ್ಯಾಚ್ ಕಳುಹಿಸುವುದು ತಿಂಗಳುಗಳ ವಿಷಯವಾಗಿದೆ, ಆದರೆ ಗ್ರೀನ್ಪ್ಲಮ್ ಒಂದು ದಿನದಲ್ಲಿ ಬರುತ್ತದೆ ಮತ್ತು ನೀವು ಏನು ಮಾಡಿದ್ದೀರಿ ಎಂದು ನೋಡುತ್ತೀರಿ. ಇನ್ನೊಂದು ವಿಷಯವೆಂದರೆ ಗ್ರೀನ್ಪ್ಲಮ್ ಪ್ರಸ್ತುತ ಸಮಸ್ಯೆಗಳನ್ನು ಪರಿಹರಿಸಬೇಕಾಗಿದೆ. ಗ್ರೀನ್ಪ್ಲಮ್ ಅನ್ನು ವ್ಯಾಪಕವಾಗಿ ಬಳಸಲಾಗುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ನಿಮ್ಮ ಸಮಸ್ಯೆಯನ್ನು ಕಂಡುಹಿಡಿಯುವುದು ತುಂಬಾ ಕಷ್ಟ. ಮತ್ತು ಮೊದಲನೆಯದಾಗಿ, ನಾವು ಸಹಜವಾಗಿ ಸಮಸ್ಯೆಗಳನ್ನು ಪರಿಹರಿಸಬೇಕಾಗಿದೆ.
ಮೂಲ: www.habr.com