ಸರ್ವರ್ ಅನಾಲಿಟಿಕ್ಸ್ ಸಿಸ್ಟಮ್ಸ್

ಇದು ವಿಶ್ಲೇಷಣಾತ್ಮಕ ವ್ಯವಸ್ಥೆಗಳ ಕುರಿತ ಲೇಖನಗಳ ಸರಣಿಯ ಎರಡನೇ ಭಾಗವಾಗಿದೆ (ಭಾಗ 1 ಗೆ ಲಿಂಕ್).

ಸರ್ವರ್ ಅನಾಲಿಟಿಕ್ಸ್ ಸಿಸ್ಟಮ್ಸ್

ಇಂದು, ಡೇಟಾದ ನಿಖರವಾದ ಪ್ರಕ್ರಿಯೆ ಮತ್ತು ಫಲಿತಾಂಶಗಳ ವ್ಯಾಖ್ಯಾನವು ಯಾವುದೇ ರೀತಿಯ ವ್ಯವಹಾರಕ್ಕೆ ಸಹಾಯ ಮಾಡುತ್ತದೆ ಎಂಬುದರಲ್ಲಿ ಸಂದೇಹವಿಲ್ಲ. ಈ ನಿಟ್ಟಿನಲ್ಲಿ, ವಿಶ್ಲೇಷಣಾತ್ಮಕ ವ್ಯವಸ್ಥೆಗಳು ನಿಯತಾಂಕಗಳೊಂದಿಗೆ ಹೆಚ್ಚು ಹೆಚ್ಚು ಲೋಡ್ ಆಗುತ್ತಿವೆ, ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಟ್ರಿಗ್ಗರ್‌ಗಳು ಮತ್ತು ಬಳಕೆದಾರರ ಘಟನೆಗಳ ಸಂಖ್ಯೆ ಬೆಳೆಯುತ್ತಿದೆ.
ಈ ಕಾರಣದಿಂದಾಗಿ, ಕಂಪನಿಗಳು ತಮ್ಮ ವಿಶ್ಲೇಷಕರಿಗೆ ಹೆಚ್ಚು ಹೆಚ್ಚು "ಕಚ್ಚಾ" ಮಾಹಿತಿಯನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಮತ್ತು ಸರಿಯಾದ ನಿರ್ಧಾರಗಳಾಗಿ ಪರಿವರ್ತಿಸಲು ನೀಡುತ್ತಿವೆ. ಕಂಪನಿಗೆ ವಿಶ್ಲೇಷಣಾ ವ್ಯವಸ್ಥೆಯ ಪ್ರಾಮುಖ್ಯತೆಯನ್ನು ಕಡಿಮೆ ಅಂದಾಜು ಮಾಡಬಾರದು ಮತ್ತು ವ್ಯವಸ್ಥೆಯು ಸ್ವತಃ ವಿಶ್ವಾಸಾರ್ಹ ಮತ್ತು ಸಮರ್ಥನೀಯವಾಗಿರಬೇಕು.

ಗ್ರಾಹಕ ವಿಶ್ಲೇಷಕರು

ಕ್ಲೈಂಟ್ ಅನಾಲಿಟಿಕ್ಸ್ ಎನ್ನುವುದು ಕಂಪನಿಯು ತನ್ನ ವೆಬ್‌ಸೈಟ್ ಅಥವಾ ಅಪ್ಲಿಕೇಶನ್‌ಗೆ ಅಧಿಕೃತ SDK ಮೂಲಕ ಸಂಪರ್ಕಿಸುವ ಸೇವೆಯಾಗಿದೆ, ಅದನ್ನು ತನ್ನದೇ ಆದ ಕೋಡ್‌ಬೇಸ್‌ಗೆ ಸಂಯೋಜಿಸುತ್ತದೆ ಮತ್ತು ಈವೆಂಟ್ ಟ್ರಿಗ್ಗರ್‌ಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡುತ್ತದೆ. ಈ ವಿಧಾನವು ಸ್ಪಷ್ಟ ನ್ಯೂನತೆಯನ್ನು ಹೊಂದಿದೆ: ಯಾವುದೇ ಆಯ್ಕೆಮಾಡಿದ ಸೇವೆಯ ಮಿತಿಗಳಿಂದಾಗಿ ನೀವು ಬಯಸಿದಂತೆ ಎಲ್ಲಾ ಸಂಗ್ರಹಿಸಿದ ಡೇಟಾವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲಾಗುವುದಿಲ್ಲ. ಉದಾಹರಣೆಗೆ, ಒಂದು ವ್ಯವಸ್ಥೆಯಲ್ಲಿ MapReduce ಕಾರ್ಯಗಳನ್ನು ಚಲಾಯಿಸಲು ಸುಲಭವಾಗುವುದಿಲ್ಲ, ಇನ್ನೊಂದರಲ್ಲಿ ನಿಮ್ಮ ಮಾದರಿಯನ್ನು ಚಲಾಯಿಸಲು ನಿಮಗೆ ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. ಮತ್ತೊಂದು ಅನನುಕೂಲವೆಂದರೆ ಸೇವೆಗಳಿಗೆ ನಿಯಮಿತ (ಪ್ರಭಾವಶಾಲಿ) ಬಿಲ್.
ಮಾರುಕಟ್ಟೆಯಲ್ಲಿ ಅನೇಕ ಕ್ಲೈಂಟ್ ಅನಾಲಿಟಿಕ್ಸ್ ಪರಿಹಾರಗಳಿವೆ, ಆದರೆ ಬೇಗ ಅಥವಾ ನಂತರ, ವಿಶ್ಲೇಷಕರು ಯಾವುದೇ ಕಾರ್ಯಕ್ಕೆ ಸೂಕ್ತವಾದ ಯಾವುದೇ ಸಾರ್ವತ್ರಿಕ ಸೇವೆಯಿಲ್ಲ ಎಂಬ ಅಂಶವನ್ನು ಎದುರಿಸುತ್ತಾರೆ (ಈ ಎಲ್ಲಾ ಸೇವೆಗಳ ಬೆಲೆಗಳು ನಿರಂತರವಾಗಿ ಬೆಳೆಯುತ್ತಿರುವಾಗ). ಅಂತಹ ಪರಿಸ್ಥಿತಿಯಲ್ಲಿ, ಕಂಪನಿಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಎಲ್ಲಾ ಅಗತ್ಯ ಕಸ್ಟಮ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳು ಮತ್ತು ವೈಶಿಷ್ಟ್ಯಗಳೊಂದಿಗೆ ತಮ್ಮದೇ ಆದ ವಿಶ್ಲೇಷಣಾ ವ್ಯವಸ್ಥೆಯನ್ನು ರಚಿಸಲು ನಿರ್ಧರಿಸುತ್ತವೆ.

ಸರ್ವರ್ ವಿಶ್ಲೇಷಕರು

ಸರ್ವರ್-ಸೈಡ್ ಅನಾಲಿಟಿಕ್ಸ್ ಎನ್ನುವುದು ಕಂಪನಿಯ ಸ್ವಂತ ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಮತ್ತು (ಸಾಮಾನ್ಯವಾಗಿ) ಆಂತರಿಕವಾಗಿ ನಿಯೋಜಿಸಬಹುದಾದ ಸೇವೆಯಾಗಿದೆ. ಈ ಮಾದರಿಯಲ್ಲಿ, ಎಲ್ಲಾ ಬಳಕೆದಾರ ಈವೆಂಟ್‌ಗಳನ್ನು ಆಂತರಿಕ ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ, ಡೆವಲಪರ್‌ಗಳು ಶೇಖರಣೆಗಾಗಿ ವಿಭಿನ್ನ ಡೇಟಾಬೇಸ್‌ಗಳನ್ನು ಪ್ರಯತ್ನಿಸಲು ಮತ್ತು ಹೆಚ್ಚು ಅನುಕೂಲಕರವಾದ ಆರ್ಕಿಟೆಕ್ಚರ್ ಅನ್ನು ಆಯ್ಕೆ ಮಾಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಮತ್ತು ನೀವು ಇನ್ನೂ ಕೆಲವು ಕಾರ್ಯಗಳಿಗಾಗಿ ಮೂರನೇ ವ್ಯಕ್ತಿಯ ಕ್ಲೈಂಟ್-ಸೈಡ್ ಅನಾಲಿಟಿಕ್ಸ್ ಅನ್ನು ಬಳಸಲು ಬಯಸಿದರೆ, ಅದು ಇನ್ನೂ ಸಾಧ್ಯವಾಗುತ್ತದೆ.
ಸರ್ವರ್-ಸೈಡ್ ಅನಾಲಿಟಿಕ್ಸ್ ಅನ್ನು ಎರಡು ರೀತಿಯಲ್ಲಿ ನಿಯೋಜಿಸಬಹುದು. ಮೊದಲನೆಯದು: ಕೆಲವು ತೆರೆದ ಮೂಲ ಉಪಯುಕ್ತತೆಗಳನ್ನು ಆಯ್ಕೆಮಾಡಿ, ಅವುಗಳನ್ನು ನಿಮ್ಮ ಯಂತ್ರಗಳಲ್ಲಿ ನಿಯೋಜಿಸಿ ಮತ್ತು ವ್ಯಾಪಾರ ತರ್ಕವನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಿ.

ಪ್ಲೂಸ್
ಮಿನುಸು

ನೀವು ಯಾವುದನ್ನಾದರೂ ಕಸ್ಟಮೈಸ್ ಮಾಡಬಹುದು
ಸಾಮಾನ್ಯವಾಗಿ ಇದು ತುಂಬಾ ಕಷ್ಟಕರವಾಗಿರುತ್ತದೆ ಮತ್ತು ಪ್ರತ್ಯೇಕ ಡೆವಲಪರ್ಗಳ ಅಗತ್ಯವಿದೆ

ಎರಡನೆಯದು: SaaS ಸೇವೆಗಳನ್ನು (Amazon, Google, Azure) ನೀವೇ ನಿಯೋಜಿಸುವ ಬದಲು ತೆಗೆದುಕೊಳ್ಳಿ. ನಾವು ಮೂರನೇ ಭಾಗದಲ್ಲಿ SaaS ಬಗ್ಗೆ ಹೆಚ್ಚು ವಿವರವಾಗಿ ಮಾತನಾಡುತ್ತೇವೆ.

ಪ್ಲೂಸ್
ಮಿನುಸು

ಮಧ್ಯಮ ಸಂಪುಟಗಳಲ್ಲಿ ಇದು ಅಗ್ಗವಾಗಬಹುದು, ಆದರೆ ದೊಡ್ಡ ಹೆಚ್ಚಳದೊಂದಿಗೆ ಅದು ಇನ್ನೂ ತುಂಬಾ ದುಬಾರಿಯಾಗುತ್ತದೆ
ಎಲ್ಲಾ ನಿಯತಾಂಕಗಳನ್ನು ನಿಯಂತ್ರಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ

ಆಡಳಿತವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಸೇವಾ ಪೂರೈಕೆದಾರರ ಹೆಗಲಿಗೆ ವರ್ಗಾಯಿಸಲಾಗುತ್ತದೆ
ಸೇವೆಯೊಳಗೆ ಏನಿದೆ ಎಂದು ಯಾವಾಗಲೂ ತಿಳಿದಿಲ್ಲ (ಅಗತ್ಯವಿರುವುದಿಲ್ಲ)

ಸರ್ವರ್ ಅನಾಲಿಟಿಕ್ಸ್ ಅನ್ನು ಹೇಗೆ ಸಂಗ್ರಹಿಸುವುದು

ನಾವು ಕ್ಲೈಂಟ್ ಅನಾಲಿಟಿಕ್ಸ್ ಅನ್ನು ಬಳಸುವುದರಿಂದ ದೂರವಿರಲು ಮತ್ತು ನಮ್ಮದೇ ಆದದನ್ನು ನಿರ್ಮಿಸಲು ಬಯಸಿದರೆ, ಮೊದಲನೆಯದಾಗಿ ನಾವು ಹೊಸ ಸಿಸ್ಟಮ್ನ ವಾಸ್ತುಶಿಲ್ಪದ ಬಗ್ಗೆ ಯೋಚಿಸಬೇಕು. ನೀವು ಪರಿಗಣಿಸಬೇಕಾದದ್ದನ್ನು ಹಂತ ಹಂತವಾಗಿ ನಾನು ನಿಮಗೆ ಹೇಳುತ್ತೇನೆ, ಪ್ರತಿಯೊಂದು ಹಂತಗಳು ಏಕೆ ಬೇಕು ಮತ್ತು ನೀವು ಯಾವ ಸಾಧನಗಳನ್ನು ಬಳಸಬಹುದು.

1. ಡೇಟಾ ಸ್ವಾಧೀನ

ಕ್ಲೈಂಟ್ ಅನಾಲಿಟಿಕ್ಸ್‌ನಂತೆಯೇ, ಮೊದಲನೆಯದಾಗಿ, ಕಂಪನಿಯ ವಿಶ್ಲೇಷಕರು ಅವರು ಮತ್ತಷ್ಟು ಅಧ್ಯಯನ ಮಾಡಲು ಬಯಸುವ ಈವೆಂಟ್‌ಗಳ ಪ್ರಕಾರಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡುತ್ತಾರೆ ಮತ್ತು ಅವುಗಳನ್ನು ಪಟ್ಟಿಯಲ್ಲಿ ಸಂಗ್ರಹಿಸುತ್ತಾರೆ. ಸಾಮಾನ್ಯವಾಗಿ, ಈ ಘಟನೆಗಳು ಒಂದು ನಿರ್ದಿಷ್ಟ ಕ್ರಮದಲ್ಲಿ ಸಂಭವಿಸುತ್ತವೆ, ಇದನ್ನು "ಈವೆಂಟ್ ಸ್ಕೀಮ್" ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ.
ಮುಂದೆ, ಮೊಬೈಲ್ ಅಪ್ಲಿಕೇಶನ್ (ವೆಬ್‌ಸೈಟ್) ಸಾಮಾನ್ಯ ಬಳಕೆದಾರರು (ಸಾಧನಗಳು) ಮತ್ತು ಅನೇಕ ಸರ್ವರ್‌ಗಳನ್ನು ಹೊಂದಿದೆ ಎಂದು ಊಹಿಸೋಣ. ಸಾಧನಗಳಿಂದ ಸರ್ವರ್‌ಗಳಿಗೆ ಈವೆಂಟ್‌ಗಳನ್ನು ಸುರಕ್ಷಿತವಾಗಿ ವರ್ಗಾಯಿಸಲು, ಮಧ್ಯಂತರ ಪದರದ ಅಗತ್ಯವಿದೆ. ವಾಸ್ತುಶಿಲ್ಪವನ್ನು ಅವಲಂಬಿಸಿ, ಹಲವಾರು ವಿಭಿನ್ನ ಈವೆಂಟ್ ಕ್ಯೂಗಳು ಸಂಭವಿಸಬಹುದು.
ಅಪಾಚೆ ಕಾಫ್ಕಾ - ಇದು ಪಬ್/ಸಬ್ ಕ್ಯೂ, ಈವೆಂಟ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಸರತಿ ಸಾಲಿನಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ.

ಪ್ರಕಾರ Quora ನಲ್ಲಿ ಪೋಸ್ಟ್ 2014 ರಲ್ಲಿ, ಅಪಾಚೆ ಕಾಫ್ಕಾದ ಸೃಷ್ಟಿಕರ್ತರು ಫ್ರಾಂಜ್ ಕಾಫ್ಕಾ ನಂತರ ಸಾಫ್ಟ್‌ವೇರ್ ಅನ್ನು ಹೆಸರಿಸಲು ನಿರ್ಧರಿಸಿದರು ಏಕೆಂದರೆ "ಇದು ಬರವಣಿಗೆ-ಆಪ್ಟಿಮೈಸ್ಡ್ ಸಿಸ್ಟಮ್" ಮತ್ತು ಅವರು ಕಾಫ್ಕಾ ಅವರ ಬರಹಗಳನ್ನು ಪ್ರೀತಿಸುತ್ತಿದ್ದರು. - ವಿಕಿಪೀಡಿಯ

ನಮ್ಮ ಉದಾಹರಣೆಯಲ್ಲಿ, ಅನೇಕ ಡೇಟಾ ನಿರ್ಮಾಪಕರು ಮತ್ತು ಅವರ ಗ್ರಾಹಕರು (ಸಾಧನಗಳು ಮತ್ತು ಸರ್ವರ್‌ಗಳು) ಇದ್ದಾರೆ ಮತ್ತು ಕಾಫ್ಕಾ ಅವರನ್ನು ಪರಸ್ಪರ ಸಂಪರ್ಕಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಮುಂದಿನ ಹಂತಗಳಲ್ಲಿ ಗ್ರಾಹಕರನ್ನು ಹೆಚ್ಚು ವಿವರವಾಗಿ ವಿವರಿಸಲಾಗುವುದು, ಅಲ್ಲಿ ಅವರು ಮುಖ್ಯ ನಟರಾಗಿರುತ್ತಾರೆ. ಈಗ ನಾವು ಡೇಟಾ ನಿರ್ಮಾಪಕರನ್ನು (ಈವೆಂಟ್‌ಗಳು) ಮಾತ್ರ ಪರಿಗಣಿಸುತ್ತೇವೆ.
ಕಾಫ್ಕಾ ಕ್ಯೂ ಮತ್ತು ವಿಭಜನೆಯ ಪರಿಕಲ್ಪನೆಗಳನ್ನು ಸುತ್ತುವರೆದಿದ್ದಾರೆ, ಹೆಚ್ಚು ನಿರ್ದಿಷ್ಟವಾಗಿ ಇದರ ಬಗ್ಗೆ ಬೇರೆಡೆ ಓದುವುದು ಉತ್ತಮ (ಉದಾಹರಣೆಗೆ, ರಲ್ಲಿ ದಸ್ತಾವೇಜನ್ನು) ವಿವರಗಳಿಗೆ ಹೋಗದೆ, ಎರಡು ವಿಭಿನ್ನ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್‌ಗಳಿಗಾಗಿ ಮೊಬೈಲ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಲಾಗಿದೆ ಎಂದು ಊಹಿಸೋಣ. ನಂತರ ಪ್ರತಿ ಆವೃತ್ತಿಯು ತನ್ನದೇ ಆದ ಪ್ರತ್ಯೇಕ ಈವೆಂಟ್ ಸ್ಟ್ರೀಮ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ. ನಿರ್ಮಾಪಕರು ಈವೆಂಟ್‌ಗಳನ್ನು ಕಾಫ್ಕಾಗೆ ಕಳುಹಿಸುತ್ತಾರೆ, ಅವುಗಳನ್ನು ಸೂಕ್ತವಾದ ಸರದಿಯಲ್ಲಿ ದಾಖಲಿಸಲಾಗುತ್ತದೆ.
ಸರ್ವರ್ ಅನಾಲಿಟಿಕ್ಸ್ ಸಿಸ್ಟಮ್ಸ್
(ಚಿತ್ರ ಇಲ್ಲಿಂದ)

ಅದೇ ಸಮಯದಲ್ಲಿ, ಕಾಫ್ಕಾ ನಿಮಗೆ ತುಣುಕುಗಳಲ್ಲಿ ಓದಲು ಮತ್ತು ಮಿನಿ-ಬ್ಯಾಚ್‌ಗಳಲ್ಲಿ ಘಟನೆಗಳ ಹರಿವನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲು ಅನುಮತಿಸುತ್ತದೆ. ಕಾಫ್ಕಾ ಬಹಳ ಅನುಕೂಲಕರವಾದ ಸಾಧನವಾಗಿದ್ದು ಅದು ಬೆಳೆಯುತ್ತಿರುವ ಅಗತ್ಯಗಳೊಂದಿಗೆ ಚೆನ್ನಾಗಿ ಅಳೆಯುತ್ತದೆ (ಉದಾಹರಣೆಗೆ, ಘಟನೆಗಳ ಜಿಯೋಲೋಕೇಶನ್ ಮೂಲಕ).
ಸಾಮಾನ್ಯವಾಗಿ ಒಂದು ಚೂರು ಸಾಕು, ಆದರೆ ಸ್ಕೇಲಿಂಗ್ ಮಾಡುವಾಗ (ಯಾವಾಗಲೂ) ಸಂವಹನದೊಂದಿಗೆ ವಿಷಯಗಳು ಹೆಚ್ಚು ಜಟಿಲವಾಗುತ್ತವೆ. ಪ್ರಾಯಶಃ ಯಾರೂ ಉತ್ಪಾದನೆಯಲ್ಲಿ ಕೇವಲ ಒಂದು ಭೌತಿಕ ಚೂರುಗಳನ್ನು ಬಳಸಲು ಬಯಸುವುದಿಲ್ಲ, ಏಕೆಂದರೆ ವಾಸ್ತುಶಿಲ್ಪವು ದೋಷ-ಸಹಿಷ್ಣುವಾಗಿರಬೇಕು. ಕಾಫ್ಕಾ ಜೊತೆಗೆ, ಮತ್ತೊಂದು ಪ್ರಸಿದ್ಧ ಪರಿಹಾರವಿದೆ - RabbitMQ. ಈವೆಂಟ್ ಅನಾಲಿಟಿಕ್ಸ್‌ಗಾಗಿ ನಾವು ಅದನ್ನು ಉತ್ಪಾದನೆಯಲ್ಲಿ ಸರದಿಯಲ್ಲಿ ಬಳಸಲಿಲ್ಲ (ನಿಮಗೆ ಅಂತಹ ಅನುಭವವಿದ್ದರೆ, ಅದರ ಬಗ್ಗೆ ಕಾಮೆಂಟ್‌ಗಳಲ್ಲಿ ನಮಗೆ ತಿಳಿಸಿ!). ಆದಾಗ್ಯೂ, AWS ಕೈನೆಸಿಸ್ ಅನ್ನು ಬಳಸಲಾಯಿತು.

ಮುಂದಿನ ಹಂತಕ್ಕೆ ತೆರಳುವ ಮೊದಲು, ಸಿಸ್ಟಮ್ನ ಇನ್ನೊಂದು ಹೆಚ್ಚುವರಿ ಪದರವನ್ನು ನಮೂದಿಸಬೇಕಾಗಿದೆ - ಕಚ್ಚಾ ದಾಖಲೆಗಳ ಸಂಗ್ರಹಣೆ. ಇದು ಕಡ್ಡಾಯ ಲೇಯರ್ ಅಲ್ಲ, ಆದರೆ ಏನಾದರೂ ತಪ್ಪಾದಲ್ಲಿ ಮತ್ತು ಕಾಫ್ಕಾದಲ್ಲಿನ ಈವೆಂಟ್ ಕ್ಯೂಗಳನ್ನು ಶೂನ್ಯಕ್ಕೆ ಮರುಹೊಂದಿಸಿದರೆ ಇದು ಉಪಯುಕ್ತವಾಗಿರುತ್ತದೆ. ಕಚ್ಚಾ ಲಾಗ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಸಂಕೀರ್ಣ ಮತ್ತು ದುಬಾರಿ ಪರಿಹಾರದ ಅಗತ್ಯವಿರುವುದಿಲ್ಲ, ನೀವು ಅವುಗಳನ್ನು ಎಲ್ಲೋ ಸರಿಯಾದ ಕ್ರಮದಲ್ಲಿ ಬರೆಯಬಹುದು (ಹಾರ್ಡ್ ಡ್ರೈವ್‌ಗೆ ಸಹ).
ಸರ್ವರ್ ಅನಾಲಿಟಿಕ್ಸ್ ಸಿಸ್ಟಮ್ಸ್

2. ಈವೆಂಟ್ ಸ್ಟ್ರೀಮ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸುವುದು

ನಾವು ಎಲ್ಲಾ ಈವೆಂಟ್‌ಗಳನ್ನು ಸಿದ್ಧಪಡಿಸಿದ ನಂತರ ಮತ್ತು ಅವುಗಳನ್ನು ಸರಿಯಾದ ಸರತಿಯಲ್ಲಿ ಇರಿಸಿದ ನಂತರ, ನಾವು ಪ್ರಕ್ರಿಯೆಯ ಹಂತಕ್ಕೆ ಹೋಗುತ್ತೇವೆ. ಇಲ್ಲಿ ನಾನು ಎರಡು ಸಾಮಾನ್ಯ ಸಂಸ್ಕರಣಾ ಆಯ್ಕೆಗಳ ಬಗ್ಗೆ ಮಾತನಾಡುತ್ತೇನೆ.
ಅಪಾಚೆ ಸಿಸ್ಟಂನಲ್ಲಿ ಸ್ಪಾರ್ಕ್ ಸ್ಟ್ರೀಮಿಂಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುವುದು ಮೊದಲ ಆಯ್ಕೆಯಾಗಿದೆ. ಎಲ್ಲಾ ಅಪಾಚೆ ಉತ್ಪನ್ನಗಳು ಎಚ್‌ಡಿಎಫ್‌ಎಸ್‌ನಲ್ಲಿ ವಾಸಿಸುತ್ತವೆ, ಇದು ಸುರಕ್ಷಿತ ಪ್ರತಿಕೃತಿ ಫೈಲ್ ಸಿಸ್ಟಮ್. ಸ್ಪಾರ್ಕ್ ಸ್ಟ್ರೀಮಿಂಗ್ ಎನ್ನುವುದು ಸ್ಟ್ರೀಮಿಂಗ್ ಡೇಟಾ ಮತ್ತು ಸ್ಕೇಲ್‌ಗಳನ್ನು ಉತ್ತಮವಾಗಿ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವ ಒಂದು ಸುಲಭವಾದ ಬಳಕೆ ಸಾಧನವಾಗಿದೆ. ಆದಾಗ್ಯೂ, ಅದನ್ನು ನಿರ್ವಹಿಸಲು ಕಷ್ಟವಾಗಬಹುದು.
ನಿಮ್ಮ ಸ್ವಂತ ಈವೆಂಟ್ ಹ್ಯಾಂಡ್ಲರ್ ಅನ್ನು ನಿರ್ಮಿಸುವುದು ಮತ್ತೊಂದು ಆಯ್ಕೆಯಾಗಿದೆ. ಇದನ್ನು ಮಾಡಲು, ಉದಾಹರಣೆಗೆ, ನೀವು ಪೈಥಾನ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಬರೆಯಬೇಕು, ಅದನ್ನು ಡಾಕರ್‌ನಲ್ಲಿ ನಿರ್ಮಿಸಬೇಕು ಮತ್ತು ಕಾಫ್ಕಾ ಅವರ ಕ್ಯೂಗಳಿಗೆ ಚಂದಾದಾರರಾಗಬೇಕು. ಟ್ರಿಗ್ಗರ್‌ಗಳು ಡಾಕರ್‌ನಲ್ಲಿ ಹ್ಯಾಂಡ್ಲರ್‌ಗಳಿಗೆ ಬಂದಾಗ, ಪ್ರಕ್ರಿಯೆಯು ಪ್ರಾರಂಭವಾಗುತ್ತದೆ. ಈ ವಿಧಾನದೊಂದಿಗೆ, ನೀವು ನಿರಂತರವಾಗಿ ಚಾಲನೆಯಲ್ಲಿರುವ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಇರಿಸಿಕೊಳ್ಳಬೇಕು.
ಮೇಲೆ ವಿವರಿಸಿದ ಆಯ್ಕೆಗಳಲ್ಲಿ ಒಂದನ್ನು ನಾವು ಆರಿಸಿದ್ದೇವೆ ಮತ್ತು ಪ್ರಕ್ರಿಯೆಗೆ ಮುಂದುವರಿಯುತ್ತೇವೆ ಎಂದು ಭಾವಿಸೋಣ. ಪ್ರೊಸೆಸರ್‌ಗಳು ಡೇಟಾದ ಸಿಂಧುತ್ವವನ್ನು ಪರಿಶೀಲಿಸುವ ಮೂಲಕ ಪ್ರಾರಂಭಿಸಬೇಕು, ಕಸ ಮತ್ತು "ಮುರಿದ" ಘಟನೆಗಳನ್ನು ಫಿಲ್ಟರ್ ಮಾಡಬೇಕು. ದೃಢೀಕರಣಕ್ಕಾಗಿ ನಾವು ಸಾಮಾನ್ಯವಾಗಿ ಬಳಸುತ್ತೇವೆ ಸರ್ಬರಸ್. ಅದರ ನಂತರ, ಡೇಟಾ ಮ್ಯಾಪಿಂಗ್ ಅನ್ನು ಮಾಡಬಹುದು: ಸಾಮಾನ್ಯ ಕೋಷ್ಟಕಕ್ಕೆ ಸೇರಿಸಲು ವಿವಿಧ ಮೂಲಗಳಿಂದ ಡೇಟಾವನ್ನು ಸಾಮಾನ್ಯೀಕರಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಪ್ರಮಾಣೀಕರಿಸಲಾಗುತ್ತದೆ.
ಸರ್ವರ್ ಅನಾಲಿಟಿಕ್ಸ್ ಸಿಸ್ಟಮ್ಸ್

3. ಡೇಟಾಬೇಸ್

ಮೂರನೇ ಹಂತವು ಸಾಮಾನ್ಯ ಘಟನೆಗಳನ್ನು ಉಳಿಸುವುದು. ಸಿದ್ಧ-ಸಿದ್ಧ ವಿಶ್ಲೇಷಣಾತ್ಮಕ ವ್ಯವಸ್ಥೆಯೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವಾಗ, ನಾವು ಅವುಗಳನ್ನು ಹೆಚ್ಚಾಗಿ ಪ್ರವೇಶಿಸಬೇಕಾಗುತ್ತದೆ, ಆದ್ದರಿಂದ ಅನುಕೂಲಕರ ಡೇಟಾಬೇಸ್ ಅನ್ನು ಆಯ್ಕೆ ಮಾಡುವುದು ಮುಖ್ಯವಾಗಿದೆ.
ಡೇಟಾವು ಸ್ಥಿರ ಸ್ಕೀಮಾದಲ್ಲಿ ಉತ್ತಮವಾಗಿ ಹೊಂದಿಕೊಂಡರೆ, ನೀವು ಆಯ್ಕೆ ಮಾಡಬಹುದು ಕ್ಲಿಕ್ಹೌಸ್ ಅಥವಾ ಕೆಲವು ಇತರ ಕಾಲಮ್ ಡೇಟಾಬೇಸ್. ಆದ್ದರಿಂದ ಒಟ್ಟುಗೂಡುವಿಕೆಗಳು ಬಹಳ ಬೇಗನೆ ಕೆಲಸ ಮಾಡುತ್ತವೆ. ತೊಂದರೆಯೆಂದರೆ ಯೋಜನೆಯು ಕಟ್ಟುನಿಟ್ಟಾಗಿ ನಿವಾರಿಸಲಾಗಿದೆ ಮತ್ತು ಆದ್ದರಿಂದ ಪರಿಷ್ಕರಣೆಯಿಲ್ಲದೆ ಅನಿಯಂತ್ರಿತ ವಸ್ತುಗಳನ್ನು ಸೇರಿಸಲು ಇದು ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ (ಉದಾಹರಣೆಗೆ, ಪ್ರಮಾಣಿತವಲ್ಲದ ಘಟನೆ ಸಂಭವಿಸಿದಾಗ). ಆದರೆ ಇದು ನಿಜವಾಗಿಯೂ ವೇಗವಾಗಿ ಮಾಡಬಹುದು.
ರಚನೆಯಿಲ್ಲದ ಡೇಟಾಕ್ಕಾಗಿ, ನೀವು NoSQL ಅನ್ನು ತೆಗೆದುಕೊಳ್ಳಬಹುದು, ಉದಾಹರಣೆಗೆ, ಅಪಾಚೆ ಕಸ್ಸಂದ್ರ. ಇದು ಎಚ್‌ಡಿಎಫ್‌ಎಸ್‌ನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಉತ್ತಮವಾಗಿ ಪುನರಾವರ್ತಿಸುತ್ತದೆ, ನೀವು ಅನೇಕ ನಿದರ್ಶನಗಳನ್ನು ಎತ್ತಬಹುದು ಮತ್ತು ದೋಷ ಸಹಿಷ್ಣುವಾಗಿದೆ.
ನೀವು ಸರಳವಾದದ್ದನ್ನು ಸಂಗ್ರಹಿಸಬಹುದು, ಉದಾಹರಣೆಗೆ, ಮೊಂಗೋಡಬ್ಬಿ. ಸಣ್ಣ ಸಂಪುಟಗಳಿಗೆ ಸಹ ಇದು ತುಂಬಾ ನಿಧಾನವಾಗಿರುತ್ತದೆ. ಆದರೆ ಪ್ಲಸ್ ಇದು ತುಂಬಾ ಸರಳವಾಗಿದೆ ಮತ್ತು ಆದ್ದರಿಂದ ಪ್ರಾರಂಭಿಸಲು ಸೂಕ್ತವಾಗಿದೆ.
ಸರ್ವರ್ ಅನಾಲಿಟಿಕ್ಸ್ ಸಿಸ್ಟಮ್ಸ್

4. ಒಟ್ಟುಗೂಡಿಸುವಿಕೆಗಳು

ಎಲ್ಲಾ ಈವೆಂಟ್‌ಗಳನ್ನು ಎಚ್ಚರಿಕೆಯಿಂದ ಉಳಿಸಿದ ನಂತರ, ನಾವು ಬಂದ ಬ್ಯಾಚ್‌ನಿಂದ ಎಲ್ಲಾ ಪ್ರಮುಖ ಮಾಹಿತಿಯನ್ನು ಸಂಗ್ರಹಿಸಲು ಮತ್ತು ಡೇಟಾಬೇಸ್ ಅನ್ನು ನವೀಕರಿಸಲು ಬಯಸುತ್ತೇವೆ. ಜಾಗತಿಕವಾಗಿ, ನಾವು ಸಂಬಂಧಿತ ಡ್ಯಾಶ್‌ಬೋರ್ಡ್‌ಗಳು ಮತ್ತು ಮೆಟ್ರಿಕ್‌ಗಳನ್ನು ಬಯಸುತ್ತೇವೆ. ಉದಾಹರಣೆಗೆ, ಈವೆಂಟ್‌ಗಳಿಂದ ಬಳಕೆದಾರರ ಪ್ರೊಫೈಲ್ ಅನ್ನು ಸಂಗ್ರಹಿಸಲು ಮತ್ತು ಹೇಗಾದರೂ ನಡವಳಿಕೆಯನ್ನು ಅಳೆಯಲು. ಈವೆಂಟ್‌ಗಳನ್ನು ಒಟ್ಟುಗೂಡಿಸಲಾಗಿದೆ, ಸಂಗ್ರಹಿಸಲಾಗಿದೆ ಮತ್ತು ಮತ್ತೆ ಉಳಿಸಲಾಗಿದೆ (ಈಗಾಗಲೇ ಬಳಕೆದಾರರ ಕೋಷ್ಟಕಗಳಲ್ಲಿ). ಅದೇ ಸಮಯದಲ್ಲಿ, ಫಿಲ್ಟರ್ ಅನ್ನು ಸಮನ್ವಯಗೊಳಿಸುವ ಸಂಗ್ರಾಹಕಕ್ಕೆ ಸಂಪರ್ಕಿಸುವ ರೀತಿಯಲ್ಲಿ ಸಿಸ್ಟಮ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ಸಾಧ್ಯವಿದೆ: ನಿರ್ದಿಷ್ಟ ರೀತಿಯ ಘಟನೆಗಳಿಂದ ಮಾತ್ರ ಬಳಕೆದಾರರನ್ನು ಸಂಗ್ರಹಿಸಲು.
ಅದರ ನಂತರ, ತಂಡದಲ್ಲಿ ಯಾರಿಗಾದರೂ ಉನ್ನತ ಮಟ್ಟದ ವಿಶ್ಲೇಷಣೆಯ ಅಗತ್ಯವಿದ್ದರೆ, ನೀವು ಬಾಹ್ಯ ವಿಶ್ಲೇಷಣಾ ವ್ಯವಸ್ಥೆಗಳನ್ನು ಸಂಪರ್ಕಿಸಬಹುದು. ನೀವು ಮತ್ತೆ Mixpanel ತೆಗೆದುಕೊಳ್ಳಬಹುದು. ಆದರೆ ಇದು ಸಾಕಷ್ಟು ದುಬಾರಿಯಾಗಿರುವುದರಿಂದ, ಎಲ್ಲಾ ಬಳಕೆದಾರರ ಈವೆಂಟ್‌ಗಳನ್ನು ಅಲ್ಲಿಗೆ ಕಳುಹಿಸಲಾಗುವುದಿಲ್ಲ, ಆದರೆ ಅಗತ್ಯವಿರುವದನ್ನು ಮಾತ್ರ ಕಳುಹಿಸಲಾಗುತ್ತದೆ. ಇದನ್ನು ಮಾಡಲು, ನಾವು ಸಂಯೋಜಕವನ್ನು ರಚಿಸಬೇಕಾಗಿದೆ ಅದು ಕೆಲವು ಕಚ್ಚಾ ಈವೆಂಟ್‌ಗಳನ್ನು ಅಥವಾ ನಾವೇ ಈ ಹಿಂದೆ ಒಟ್ಟುಗೂಡಿಸಿರುವ ಯಾವುದನ್ನಾದರೂ ಬಾಹ್ಯ ಸಿಸ್ಟಮ್‌ಗಳು, API ಗಳು ಅಥವಾ ಜಾಹೀರಾತು ವೇದಿಕೆಗಳಿಗೆ ವರ್ಗಾಯಿಸುತ್ತದೆ.
ಸರ್ವರ್ ಅನಾಲಿಟಿಕ್ಸ್ ಸಿಸ್ಟಮ್ಸ್

5. ಮುಂಭಾಗ

ನೀವು ರಚಿಸಿದ ವ್ಯವಸ್ಥೆಗೆ ಮುಂಭಾಗವನ್ನು ಸಂಪರ್ಕಿಸಬೇಕಾಗಿದೆ. ಉತ್ತಮ ಉದಾಹರಣೆಯೆಂದರೆ ಸೇವೆ. ಕೆಂಪು, ಪ್ಯಾನಲ್‌ಗಳನ್ನು ನಿರ್ಮಿಸಲು ಸಹಾಯ ಮಾಡುವ ಡೇಟಾಬೇಸ್ GUI ಆಗಿದೆ. ಪರಸ್ಪರ ಕ್ರಿಯೆಯು ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ:

  1. ಬಳಕೆದಾರರು SQL ಪ್ರಶ್ನೆಯನ್ನು ಮಾಡುತ್ತಾರೆ.
  2. ಪ್ರತಿಕ್ರಿಯೆಯಾಗಿ, ಅವನು ಒಂದು ಚಿಹ್ನೆಯನ್ನು ಪಡೆಯುತ್ತಾನೆ.
  3. ಅದಕ್ಕಾಗಿ 'ಹೊಸ ದೃಶ್ಯೀಕರಣ'ವನ್ನು ರಚಿಸುತ್ತದೆ ಮತ್ತು ನೀವು ಈಗಾಗಲೇ ನಿಮ್ಮನ್ನು ಉಳಿಸಬಹುದಾದ ಸುಂದರವಾದ ಗ್ರಾಫ್ ಅನ್ನು ಪಡೆಯುತ್ತದೆ.

ಸೇವೆಯಲ್ಲಿನ ದೃಶ್ಯೀಕರಣಗಳು ಸ್ವಯಂ-ಅಪ್‌ಡೇಟ್ ಆಗುತ್ತಿವೆ, ನಿಮ್ಮ ಮೇಲ್ವಿಚಾರಣೆಯನ್ನು ನೀವು ಕಾನ್ಫಿಗರ್ ಮಾಡಬಹುದು ಮತ್ತು ಟ್ರ್ಯಾಕ್ ಮಾಡಬಹುದು. ಸ್ವಯಂ-ಹೋಸ್ಟ್ ಮಾಡಲಾದ ಸಂದರ್ಭದಲ್ಲಿ Redash ಉಚಿತವಾಗಿದೆ, ಆದರೆ SaaS ನಂತೆ ಇದು ತಿಂಗಳಿಗೆ $50 ವೆಚ್ಚವಾಗುತ್ತದೆ.
ಸರ್ವರ್ ಅನಾಲಿಟಿಕ್ಸ್ ಸಿಸ್ಟಮ್ಸ್

ತೀರ್ಮಾನಕ್ಕೆ

ಮೇಲಿನ ಎಲ್ಲಾ ಹಂತಗಳನ್ನು ಪೂರ್ಣಗೊಳಿಸಿದ ನಂತರ, ನಿಮ್ಮ ಸರ್ವರ್-ಸೈಡ್ ಅನಾಲಿಟಿಕ್ಸ್ ಅನ್ನು ನೀವು ರಚಿಸುತ್ತೀರಿ. ಕ್ಲೈಂಟ್ ಅನಾಲಿಟಿಕ್ಸ್ ಅನ್ನು ಸಂಪರ್ಕಿಸುವಷ್ಟು ಸುಲಭವಲ್ಲ ಎಂಬುದನ್ನು ದಯವಿಟ್ಟು ಗಮನಿಸಿ, ಏಕೆಂದರೆ ಎಲ್ಲವನ್ನೂ ನಿಮ್ಮದೇ ಆದ ಮೇಲೆ ಕಾನ್ಫಿಗರ್ ಮಾಡಬೇಕಾಗಿದೆ. ಆದ್ದರಿಂದ, ನಿಮ್ಮ ಸ್ವಂತ ವ್ಯವಸ್ಥೆಯನ್ನು ರಚಿಸುವ ಮೊದಲು, ಗಂಭೀರವಾದ ವಿಶ್ಲೇಷಣಾ ವ್ಯವಸ್ಥೆಯ ಅಗತ್ಯವನ್ನು ನೀವು ಅದಕ್ಕೆ ನಿಯೋಜಿಸಲು ಸಿದ್ಧವಾಗಿರುವ ಸಂಪನ್ಮೂಲಗಳೊಂದಿಗೆ ಹೋಲಿಸುವುದು ಯೋಗ್ಯವಾಗಿದೆ.
ನೀವು ಎಲ್ಲಾ ಗಣಿತವನ್ನು ಮಾಡಿದರೆ ಮತ್ತು ವೆಚ್ಚಗಳು ತುಂಬಾ ಹೆಚ್ಚಿವೆ ಎಂದು ಕಂಡುಕೊಂಡರೆ, ಮುಂದಿನ ಭಾಗದಲ್ಲಿ ನಾನು ಬ್ಯಾಕ್-ಎಂಡ್ ಅನಾಲಿಟಿಕ್ಸ್ನ ಅಗ್ಗದ ಆವೃತ್ತಿಯನ್ನು ಹೇಗೆ ಮಾಡುವುದು ಎಂಬುದರ ಕುರಿತು ಮಾತನಾಡುತ್ತೇನೆ.

ಓದಿದ್ದಕ್ಕಾಗಿ ಧನ್ಯವಾದಗಳು! ಕಾಮೆಂಟ್‌ಗಳಲ್ಲಿ ಪ್ರಶ್ನೆಗಳಿಗೆ ನಾನು ಸಂತೋಷಪಡುತ್ತೇನೆ.

ಮೂಲ: www.habr.com

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ