ಹೈವ್ ವ್ಯಾಪಾರದಲ್ಲಿ ವ್ಯಾಪಕವಾಗಿ ಬಳಸಲಾಗುವ ಬಿಗ್ ಡೇಟಾ ಅನಾಲಿಟಿಕ್ಸ್ ಸಾಧನವಾಗಿದೆ ಮತ್ತು ನೀವು ಬಿಗ್ ಡೇಟಾಗೆ ಹೊಸಬರಾಗಿದ್ದರೆ ಪ್ರಾರಂಭಿಸಲು ಇದು ಅದ್ಭುತ ಸ್ಥಳವಾಗಿದೆ. ಈ ಅಪಾಚೆ ಹೈವ್ ಪಾಠವು ಅಪಾಚೆ ಹೈವ್ನ ಮೂಲಭೂತ ಅಂಶಗಳ ಮೂಲಕ ಹೋಗುತ್ತದೆ, ಜೇನುಗೂಡು ಏಕೆ ಅಗತ್ಯ, ಅದರ ವೈಶಿಷ್ಟ್ಯಗಳು ಮತ್ತು ನೀವು ತಿಳಿದುಕೊಳ್ಳಬೇಕಾದ ಎಲ್ಲದರ ಮೂಲಕ.
ಅಪಾಚೆ ಹೈವ್ ಅನ್ನು ನಿರ್ಮಿಸಿದ ಹಡೂಪ್ ಚೌಕಟ್ಟನ್ನು ಮೊದಲು ಅರ್ಥಮಾಡಿಕೊಳ್ಳೋಣ.
ಅಪಾಚೆ ಹಡೂಪ್
ಅಪಾಚೆ ಹಡೂಪ್ ಉಚಿತ ಮತ್ತು ಮುಕ್ತ ಸಂಪನ್ಮೂಲ ಗಿಗಾಬೈಟ್ಗಳಿಂದ ಪೆಟಾಬೈಟ್ಗಳವರೆಗಿನ ಗಾತ್ರದ ದೊಡ್ಡ ಡೇಟಾಸೆಟ್ಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಮತ್ತು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲು ವೇದಿಕೆ. ದತ್ತಾಂಶವನ್ನು ಸಂಗ್ರಹಿಸಲು ಮತ್ತು ವಿಶ್ಲೇಷಿಸಲು ಒಂದೇ ದೊಡ್ಡ ಗಣಕಯಂತ್ರದ ಅಗತ್ಯಕ್ಕಿಂತ ಹೆಚ್ಚಾಗಿ, ಅಗಾಧವಾದ ಡೇಟಾಸೆಟ್ಗಳನ್ನು ಸಮಾನಾಂತರವಾಗಿ ವಿಶ್ಲೇಷಿಸಲು ಹಲವಾರು ಕಂಪ್ಯೂಟರ್ಗಳನ್ನು ಕ್ಲಸ್ಟರಿಂಗ್ ಮಾಡಲು Hadoop ಅನುಮತಿಸುತ್ತದೆ.
MapReduce ಮತ್ತು Hadoop ಡಿಸ್ಟ್ರಿಬ್ಯೂಟೆಡ್ ಫೈಲ್ ಸಿಸ್ಟಮ್ ಎರಡು ಘಟಕಗಳಾಗಿವೆ:
- ಮ್ಯಾಪ್ರೆಡ್ಯೂಸ್ - ಮ್ಯಾಪ್ರೆಡ್ಯೂಸ್ ಎನ್ನುವುದು ಸರಕು ಹಾರ್ಡ್ವೇರ್ ಕ್ಲಸ್ಟರ್ಗಳಲ್ಲಿ ಸಂಘಟಿತ, ಅರೆ-ರಚನಾತ್ಮಕ ಮತ್ತು ರಚನಾತ್ಮಕವಲ್ಲದ ದತ್ತಾಂಶದ ಬೃಹತ್ ಪರಿಮಾಣಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಸಮಾನಾಂತರ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ತಂತ್ರವಾಗಿದೆ.
- ಎಚ್ಡಿಎಫ್ಎಸ್ - HDFS (ಹಡೂಪ್ ಡಿಸ್ಟ್ರಿಬ್ಯೂಟೆಡ್ ಫೈಲ್ ಸಿಸ್ಟಮ್) ಒಂದು ಹಡೂಪ್ ಫ್ರೇಮ್ವರ್ಕ್ ಘಟಕವಾಗಿದ್ದು ಅದು ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸುತ್ತದೆ ಮತ್ತು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುತ್ತದೆ. ಇದು ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಹಾರ್ಡ್ವೇರ್ನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ದೋಷ-ಸಹಿಷ್ಣು ಫೈಲ್ ಸಿಸ್ಟಮ್ ಆಗಿದೆ
ಸ್ಕೂಪ್, ಪಿಗ್ ಮತ್ತು ಹೈವ್ ಸೇರಿದಂತೆ ಹಡೂಪ್ ಪರಿಸರ ವ್ಯವಸ್ಥೆಯಲ್ಲಿನ ವಿವಿಧ ಉಪ-ಯೋಜನೆಗಳನ್ನು (ಉಪಕರಣಗಳು) ಹಡೂಪ್ ಮಾಡ್ಯೂಲ್ಗಳಿಗೆ ಸಹಾಯ ಮಾಡಲು ಬಳಸಲಾಗುತ್ತದೆ.
- ಹೈವ್ – MapReduce ಕಂಪ್ಯೂಟೇಶನ್ಗಳನ್ನು ನಿರ್ವಹಿಸುವ SQL-ಶೈಲಿಯ ಸ್ಕ್ರಿಪ್ಟ್ಗಳನ್ನು ಬರೆಯಲು ಹೈವ್ ಒಂದು ಚೌಕಟ್ಟಾಗಿದೆ.
- ಹಂದಿ - ಪಿಗ್ ಒಂದು ಕಾರ್ಯವಿಧಾನದ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಾಗಿದ್ದು ಇದನ್ನು MapReduce ಪ್ರಕ್ರಿಯೆಗಳಿಗಾಗಿ ಸ್ಕ್ರಿಪ್ಟ್ ರಚಿಸಲು ಬಳಸಬಹುದು.
- ಸ್ಕೂಪ್ - Sqoop HDFS ಮತ್ತು RDBMS ನಡುವೆ ಡೇಟಾವನ್ನು ಆಮದು ಮಾಡಿಕೊಳ್ಳಲು ಮತ್ತು ರಫ್ತು ಮಾಡಲು ಒಂದು ಸಾಧನವಾಗಿದೆ.
ಏನದು ಅಪಾಚೆ ಹೈವ್?
ಅಪಾಚೆ ಹೈವ್ ಒಂದು ತೆರೆದ ಮೂಲವಾಗಿದೆ ಡೇಟಾ ವೇರ್ಹೌಸ್ ಅಪಾಚೆ ಹಡೂಪ್ ಡಿಸ್ಟ್ರಿಬ್ಯೂಟೆಡ್ ಫೈಲ್ ಸಿಸ್ಟಮ್ (ಎಚ್ಡಿಎಫ್ಎಸ್) ಅಥವಾ ಅಪಾಚೆ ಎಚ್ಬೇಸ್ನಂತಹ ಇತರ ಡೇಟಾ ಶೇಖರಣಾ ವ್ಯವಸ್ಥೆಗಳಲ್ಲಿ ನೇರವಾಗಿ ಸಂಗ್ರಹಿಸಲಾದ ಬೃಹತ್ ಡೇಟಾ ಸೆಟ್ಗಳನ್ನು ಓದುವುದು, ಬರೆಯುವುದು ಮತ್ತು ನಿರ್ವಹಿಸುವ ಪ್ರೋಗ್ರಾಂ.
SQL ಡೆವಲಪರ್ಗಳು ಹೈವ್ ಕ್ವೆರಿ ಲ್ಯಾಂಗ್ವೇಜ್ (HQL) ಸ್ಟೇಟ್ಮೆಂಟ್ಗಳನ್ನು ರಚಿಸಲು ಹೈವ್ ಅನ್ನು ಬಳಸಬಹುದು ಡೇಟಾ ಪ್ರಶ್ನೆ ಮತ್ತು ವಿಶ್ಲೇಷಣೆಗಾಗಿ ಸಾಮಾನ್ಯ SQL ಹೇಳಿಕೆಗಳಿಗೆ ಹೋಲಿಸಬಹುದು. ದೀರ್ಘ ಜಾವಾ ಕೋಡ್ ಕಲಿಯುವ ಮತ್ತು ಬರೆಯುವ ಅಗತ್ಯವನ್ನು ತೆಗೆದುಹಾಕುವ ಮೂಲಕ MapReduce ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಅನ್ನು ಸುಲಭಗೊಳಿಸಲು ಇದನ್ನು ರಚಿಸಲಾಗಿದೆ. ಬದಲಾಗಿ, ನೀವು ನಿಮ್ಮ ಪ್ರಶ್ನೆಗಳನ್ನು HQL ನಲ್ಲಿ ಬರೆಯಬಹುದು ಮತ್ತು ಹೈವ್ ನಕ್ಷೆಯನ್ನು ನಿರ್ಮಿಸುತ್ತದೆ ಮತ್ತು ನಿಮಗಾಗಿ ಕಾರ್ಯಗಳನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ.
ಅಪಾಚೆ ಹೈವ್ನ SQL-ತರಹದ ಇಂಟರ್ಫೇಸ್ ತಾತ್ಕಾಲಿಕ ಹುಡುಕಾಟಗಳನ್ನು ನಿರ್ವಹಿಸಲು, ಹಡೂಪ್ ಡೇಟಾವನ್ನು ಸಂಕ್ಷೇಪಿಸಲು ಮತ್ತು ವಿಶ್ಲೇಷಿಸಲು ಚಿನ್ನದ ಮಾನದಂಡವಾಗಿದೆ. ಮೋಡದಲ್ಲಿ ಸೇರಿಸಿದಾಗ ಕಂಪ್ಯೂಟಿಂಗ್ ಜಾಲಗಳು, ಈ ಪರಿಹಾರವು ವಿಶೇಷವಾಗಿ ವೆಚ್ಚ-ಪರಿಣಾಮಕಾರಿ ಮತ್ತು ಸ್ಕೇಲೆಬಲ್ ಆಗಿದೆ, ಅದಕ್ಕಾಗಿಯೇ ನೆಟ್ಫ್ಲಿಕ್ಸ್ ಮತ್ತು ಅಮೆಜಾನ್ ಸೇರಿದಂತೆ ಅನೇಕ ಸಂಸ್ಥೆಗಳು ಅಪಾಚೆ ಹೈವ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುವುದನ್ನು ಮತ್ತು ಸುಧಾರಿಸುವುದನ್ನು ಮುಂದುವರಿಸುತ್ತವೆ.
ಇತಿಹಾಸ
ಫೇಸ್ಬುಕ್ನಲ್ಲಿದ್ದ ಸಮಯದಲ್ಲಿ, ಜೋಯ್ದೀಪ್ ಸೇನ್ ಶರ್ಮಾ ಮತ್ತು ಆಶಿಶ್ ತುಸೂ ಅಪಾಚೆ ಹೈವ್ ಅನ್ನು ಸಹ-ರಚಿಸಿದರು. ಹಡೂಪ್ನಿಂದ ಹೆಚ್ಚಿನದನ್ನು ಪಡೆಯಲು, ಅವರು ಕೆಲವು ಸಂಕೀರ್ಣವಾದ ಜಾವಾ ನಕ್ಷೆ-ಕಡಿಮೆ ಕಾರ್ಯಗಳನ್ನು ರಚಿಸಬೇಕು ಎಂದು ಇಬ್ಬರೂ ಗುರುತಿಸಿದ್ದಾರೆ. ಅವರು ಕಂಪನಿಯಾದ್ಯಂತ ಹಡೂಪ್ ಅನ್ನು ಹತೋಟಿಗೆ ತರಲು ಅಗತ್ಯವಿರುವ ಕೌಶಲ್ಯಗಳ ಕುರಿತು ತಮ್ಮ ವೇಗವಾಗಿ ವಿಸ್ತರಿಸುತ್ತಿರುವ ಎಂಜಿನಿಯರಿಂಗ್ ಮತ್ತು ವಿಶ್ಲೇಷಣಾತ್ಮಕ ತಂಡಗಳಿಗೆ ಶಿಕ್ಷಣ ನೀಡಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ ಎಂದು ಅವರು ಗುರುತಿಸಿದ್ದಾರೆ. ಇಂಜಿನಿಯರ್ಗಳು ಮತ್ತು ವಿಶ್ಲೇಷಕರು ಆಗಾಗ್ಗೆ SQL ಅನ್ನು ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ ಆಗಿ ಬಳಸುತ್ತಾರೆ.
SQL ಬಹುಪಾಲು ವಿಶ್ಲೇಷಣಾ ಅಗತ್ಯಗಳನ್ನು ಪೂರೈಸಬಹುದಾದರೂ, ಡೆವಲಪರ್ಗಳು ಹಡೂಪ್ನ ಪ್ರೋಗ್ರಾಮೆಬಿಲಿಟಿಯನ್ನು ಸಂಯೋಜಿಸಲು ಉದ್ದೇಶಿಸಿದ್ದಾರೆ. ಅಪಾಚೆ ಹೈವ್ ಈ ಎರಡು ಉದ್ದೇಶಗಳಿಂದ ಹುಟ್ಟಿಕೊಂಡಿತು: SQL-ಆಧಾರಿತ ಘೋಷಣಾತ್ಮಕ ಭಾಷೆ, ಇದು SQL ಸಾಕಾಗದೇ ಇದ್ದಾಗ ಡೆವಲಪರ್ಗಳು ತಮ್ಮದೇ ಆದ ಸ್ಕ್ರಿಪ್ಟ್ಗಳು ಮತ್ತು ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ತರಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.
ದತ್ತಾಂಶ-ಚಾಲಿತ ಸಂಸ್ಥೆಗಳ ನಿರ್ಮಾಣವನ್ನು ಸುಲಭಗೊಳಿಸಲು ಕಂಪನಿಯಲ್ಲಿನ ಎಲ್ಲಾ ಡೇಟಾಸೆಟ್ಗಳ ಬಗ್ಗೆ ಕೇಂದ್ರೀಕೃತ ಮೆಟಾಡೇಟಾವನ್ನು (ಹಡೂಪ್-ಆಧಾರಿತ) ಹಿಡಿದಿಡಲು ಇದನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗಿದೆ.
ಅಪಾಚೆ ಹೈವ್ ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ?
ಸಂಕ್ಷಿಪ್ತವಾಗಿ ಹೇಳುವುದಾದರೆ, ಅಪಾಚೆ ಹೈವ್ HiveQL (SQL-ತರಹದ) ಭಾಷೆಯಲ್ಲಿ ಬರೆದ ಇನ್ಪುಟ್ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಒಂದು ಅಥವಾ ಹೆಚ್ಚಿನ Java MapReduce, Tez, ಅಥವಾ Spark ಕಾರ್ಯಗಳಾಗಿ ಪರಿವರ್ತಿಸುತ್ತದೆ. (ಈ ಎಲ್ಲಾ ಎಕ್ಸಿಕ್ಯೂಶನ್ ಇಂಜಿನ್ಗಳು Hadoop YARN ನೊಂದಿಗೆ ಹೊಂದಿಕೊಳ್ಳುತ್ತವೆ.) ಅದರ ನಂತರ, Apache Hive ಡೇಟಾವನ್ನು Hadoop ಡಿಸ್ಟ್ರಿಬ್ಯೂಟೆಡ್ ಫೈಲ್ ಸಿಸ್ಟಮ್ HDFS ಗಾಗಿ ಟೇಬಲ್ಗಳಾಗಿ ಜೋಡಿಸುತ್ತದೆ ಮತ್ತು ಉತ್ತರವನ್ನು ಪಡೆಯಲು ಕ್ಲಸ್ಟರ್ನಲ್ಲಿ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ.
ಡೇಟಾ
ಅಪಾಚೆ ಹೈವ್ ಕೋಷ್ಟಕಗಳನ್ನು ಸಂಬಂಧಿತ ಡೇಟಾಬೇಸ್ನಲ್ಲಿನ ಕೋಷ್ಟಕಗಳನ್ನು ಹೇಗೆ ಆಯೋಜಿಸಲಾಗಿದೆಯೋ ಅದೇ ರೀತಿಯಲ್ಲಿ ಜೋಡಿಸಲಾಗಿದೆ, ಡೇಟಾ ಘಟಕಗಳು ದೊಡ್ಡದರಿಂದ ಚಿಕ್ಕದಕ್ಕೆ ಗಾತ್ರದಲ್ಲಿರುತ್ತವೆ. ಡೇಟಾಬೇಸ್ಗಳನ್ನು ವಿಭಾಗಗಳಾಗಿ ವಿಂಗಡಿಸಲಾದ ಕೋಷ್ಟಕಗಳಿಂದ ಮಾಡಲ್ಪಟ್ಟಿದೆ, ಇವುಗಳನ್ನು ಮತ್ತಷ್ಟು ಬಕೆಟ್ಗಳಾಗಿ ವಿಂಗಡಿಸಲಾಗಿದೆ. HiveQL (ಹೈವ್ ಕ್ವೆರಿ ಲಾಂಗ್ವೇಜ್) ಅನ್ನು ಡೇಟಾವನ್ನು ಪ್ರವೇಶಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ, ಅದನ್ನು ಬದಲಾಯಿಸಬಹುದು ಅಥವಾ ಸೇರಿಸಬಹುದು. ಪ್ರತಿ ಡೇಟಾಬೇಸ್ನಲ್ಲಿ ಟೇಬಲ್ ಡೇಟಾವನ್ನು ಧಾರಾವಾಹಿ ಮಾಡಲಾಗಿದೆ, ಮತ್ತು ಪ್ರತಿ ಟೇಬಲ್ ತನ್ನದೇ ಆದ HDFS ಡೈರೆಕ್ಟರಿಯನ್ನು ಹೊಂದಿದೆ.
ಆರ್ಕಿಟೆಕ್ಚರ್
ಈಗ ನಾವು ಹೈವ್ ಆರ್ಕಿಟೆಕ್ಚರ್ನ ಪ್ರಮುಖ ಅಂಶದ ಬಗ್ಗೆ ಮಾತನಾಡುತ್ತೇವೆ. ಅಪಾಚೆ ಹೈವ್ನ ಘಟಕಗಳು ಈ ಕೆಳಗಿನಂತಿವೆ:
ಮೆಟಾಸ್ಟೋರ್ - ಇದು ಪ್ರತಿ ಟೇಬಲ್ ಬಗ್ಗೆ ಅದರ ರಚನೆ ಮತ್ತು ಸ್ಥಳದಂತಹ ಮಾಹಿತಿಯನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡುತ್ತದೆ. ವಿಭಜನಾ ಮೆಟಾಡೇಟಾವನ್ನು ಹೈವ್ನಲ್ಲಿ ಸೇರಿಸಲಾಗಿದೆ. ಕ್ಲಸ್ಟರ್ನಾದ್ಯಂತ ಹರಡಿರುವ ವಿವಿಧ ಡೇಟಾ ಸೆಟ್ಗಳ ಪ್ರಗತಿಯನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಲು ಇದು ಚಾಲಕವನ್ನು ಅನುಮತಿಸುತ್ತದೆ. ಡೇಟಾವನ್ನು ಸಾಂಪ್ರದಾಯಿಕ RDBMS ಸ್ವರೂಪದಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗಿದೆ. ಹೈವ್ ಮೆಟಾಡೇಟಾವು ಚಾಲಕನಿಗೆ ಡೇಟಾದ ಟ್ರ್ಯಾಕ್ ಅನ್ನು ನಿರ್ವಹಿಸಲು ಬಹಳ ಮುಖ್ಯವಾಗಿದೆ. ಬ್ಯಾಕಪ್ ಸರ್ವರ್ ನಿಯಮಿತವಾಗಿ ಡೇಟಾವನ್ನು ನಕಲು ಮಾಡುತ್ತದೆ ಇದರಿಂದ ಡೇಟಾ ನಷ್ಟದ ಸಂದರ್ಭದಲ್ಲಿ ಅದನ್ನು ಮರುಪಡೆಯಬಹುದು.
ಚಾಲಕ - HiveQL ಹೇಳಿಕೆಗಳನ್ನು ಚಾಲಕರಿಂದ ಸ್ವೀಕರಿಸಲಾಗುತ್ತದೆ, ಇದು ನಿಯಂತ್ರಕವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಅವಧಿಗಳನ್ನು ಸ್ಥಾಪಿಸುವ ಮೂಲಕ, ಚಾಲಕನು ಹೇಳಿಕೆಯ ಮರಣದಂಡನೆಯನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತಾನೆ. ಇದು ಕಾರ್ಯನಿರ್ವಾಹಕರ ಜೀವಿತಾವಧಿ ಮತ್ತು ಪ್ರಗತಿಯನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡುತ್ತದೆ. HiveQL ಹೇಳಿಕೆಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವಾಗ, ಚಾಲಕ ಅಗತ್ಯವಿರುವ ಮೆಟಾಡೇಟಾವನ್ನು ಉಳಿಸುತ್ತದೆ. ಇದು ರಿಡ್ಯೂಸ್ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಅನುಸರಿಸಿ ಡೇಟಾ ಅಥವಾ ಕ್ವೆರಿ ಫಲಿತಾಂಶ ಸಂಗ್ರಹಣೆಯಾಗಿಯೂ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ.
ಕಂಪೈಲರ್ - ಇದು HiveQL ಪ್ರಶ್ನೆ ಸಂಕಲನವನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ. ಪ್ರಶ್ನೆಯನ್ನು ಈಗ ಕಾರ್ಯಗತಗೊಳಿಸುವ ಯೋಜನೆಗೆ ಪರಿವರ್ತಿಸಲಾಗಿದೆ. ಕಾರ್ಯಗಳನ್ನು ಯೋಜನೆಯಲ್ಲಿ ಪಟ್ಟಿ ಮಾಡಲಾಗಿದೆ. ಪ್ರಶ್ನೆಯಿಂದ ಅನುವಾದಿಸಿದಂತೆ ಫಲಿತಾಂಶವನ್ನು ಪಡೆಯಲು MapReduce ತೆಗೆದುಕೊಳ್ಳಬೇಕಾದ ಹಂತಗಳನ್ನು ಸಹ ಇದು ಒಳಗೊಂಡಿದೆ. ಹೈವ್ಸ್ ಕಂಪೈಲರ್ (AST) ಮೂಲಕ ಪ್ರಶ್ನೆಯನ್ನು ಅಮೂರ್ತ ಸಿಂಟ್ಯಾಕ್ಸ್ ಟ್ರೀ ಆಗಿ ಪರಿವರ್ತಿಸಲಾಗಿದೆ. ಹೊಂದಾಣಿಕೆ ಮತ್ತು ಕಂಪೈಲ್-ಟೈಮ್ ದೋಷಗಳನ್ನು (DAG) ಪರಿಶೀಲಿಸಿದ ನಂತರ AST ಅನ್ನು ಡೈರೆಕ್ಟೆಡ್ ಅಸಿಕ್ಲಿಕ್ ಗ್ರಾಫ್ಗೆ ಪರಿವರ್ತಿಸುತ್ತದೆ.
ಆಪ್ಟಿಮೈಜರ್ - ಇದು ಕಾರ್ಯಗತಗೊಳಿಸುವ ಯೋಜನೆಯಲ್ಲಿ ವಿಭಿನ್ನ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡುವ ಮೂಲಕ DAG ಅನ್ನು ಉತ್ತಮಗೊಳಿಸುತ್ತದೆ. ಇದು ಸುಧಾರಿತ ದಕ್ಷತೆಗಾಗಿ ರೂಪಾಂತರಗಳನ್ನು ಸಂಯೋಜಿಸುತ್ತದೆ, ಉದಾಹರಣೆಗೆ ಸೇರ್ಪಡೆಗಳ ಪೈಪ್ಲೈನ್ ಅನ್ನು ಒಂದೇ ಸೇರ್ಪಡೆಯಾಗಿ ಪರಿವರ್ತಿಸುವುದು. ವೇಗವನ್ನು ಸುಧಾರಿಸಲು, ಆಪ್ಟಿಮೈಜರ್ ಚಟುವಟಿಕೆಗಳನ್ನು ವಿಭಜಿಸಬಹುದು, ಉದಾಹರಣೆಗೆ ಕಡಿತ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ನಿರ್ವಹಿಸುವ ಮೊದಲು ಡೇಟಾಗೆ ರೂಪಾಂತರವನ್ನು ಅನ್ವಯಿಸುತ್ತದೆ.
ಎಕ್ಸಿಕ್ಯೂಟರ್ - ಸಂಕಲನ ಮತ್ತು ಆಪ್ಟಿಮೈಸೇಶನ್ ಪೂರ್ಣಗೊಂಡಾಗ ಕಾರ್ಯನಿರ್ವಾಹಕರು ಕಾರ್ಯಗಳನ್ನು ನಡೆಸುತ್ತಾರೆ. ಕಾರ್ಯನಿರ್ವಾಹಕರಿಂದ ಕೆಲಸಗಳನ್ನು ಪೈಪ್ಲೈನ್ ಮಾಡಲಾಗಿದೆ.
CLI, UI, ಮತ್ತು ಮಿತವ್ಯಯ ಸರ್ವರ್ - ಕಮಾಂಡ್-ಲೈನ್ ಇಂಟರ್ಫೇಸ್ (CLI) ಒಂದು ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ ಆಗಿದ್ದು ಅದು ಹೈವ್ನೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸಲು ಬಾಹ್ಯ ಬಳಕೆದಾರರನ್ನು ಅನುಮತಿಸುತ್ತದೆ. ಹೈವ್ನ ಮಿತವ್ಯಯ ಸರ್ವರ್, JDBC ಅಥವಾ ODBC ಪ್ರೋಟೋಕಾಲ್ಗಳಂತೆಯೇ, ಬಾಹ್ಯ ಕ್ಲೈಂಟ್ಗಳು ನೆಟ್ವರ್ಕ್ ಮೂಲಕ ಹೈವ್ನೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸಲು ಅನುಮತಿಸುತ್ತದೆ.
ಭದ್ರತಾ
Apache Hive ಅನ್ನು Hadoop ಭದ್ರತೆಯೊಂದಿಗೆ ಸಂಯೋಜಿಸಲಾಗಿದೆ, ಇದು ಕ್ಲೈಂಟ್-ಸರ್ವರ್ ಪರಸ್ಪರ ದೃಢೀಕರಣಕ್ಕಾಗಿ Kerberos ಅನ್ನು ಬಳಸುತ್ತದೆ. ಅಪಾಚೆ ಹೈವ್ನಲ್ಲಿ ಹೊಸದಾಗಿ ರಚಿಸಲಾದ ಫೈಲ್ಗಳಿಗೆ HDFS ಅನುಮತಿಗಳನ್ನು ನಿರ್ದೇಶಿಸುತ್ತದೆ, ಇದು ಬಳಕೆದಾರ, ಗುಂಪು ಮತ್ತು ಇತರರಿಂದ ಅನುಮೋದಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
ಕೀ ಲಕ್ಷಣಗಳು
- ಹೈವ್ ಬಾಹ್ಯ ಕೋಷ್ಟಕಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ, ಇದು HDFS ನಲ್ಲಿ ಸಂಗ್ರಹಿಸದೆ ಡೇಟಾವನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
- ಇದು ವೇಗವನ್ನು ಹೆಚ್ಚಿಸಲು ಟೇಬಲ್ ಮಟ್ಟದಲ್ಲಿ ಡೇಟಾ ವಿಭಜನೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ.
- ಅಪಾಚೆ ಹೈವ್ ಹಡೂಪ್ನ ಕೆಳಮಟ್ಟದ ಇಂಟರ್ಫೇಸ್ ಅಗತ್ಯವನ್ನು ಅತ್ಯುತ್ತಮವಾಗಿ ಪೂರೈಸುತ್ತದೆ.
- ಹೈವ್ ಡೇಟಾ ಸಾರಾಂಶ, ಪ್ರಶ್ನೆ ಮತ್ತು ವಿಶ್ಲೇಷಣೆಯನ್ನು ಸುಲಭಗೊಳಿಸುತ್ತದೆ.
- HiveQL ಗೆ ಯಾವುದೇ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಕೌಶಲ್ಯಗಳ ಅಗತ್ಯವಿರುವುದಿಲ್ಲ; SQL ಪ್ರಶ್ನೆಗಳ ಸರಳ ತಿಳುವಳಿಕೆ ಸಾಕಾಗುತ್ತದೆ.
- ಡೇಟಾ ವಿಶ್ಲೇಷಣೆಗಾಗಿ ತಾತ್ಕಾಲಿಕ ಪ್ರಶ್ನೆಗಳನ್ನು ನಡೆಸಲು ನಾವು ಹೈವ್ ಅನ್ನು ಸಹ ಬಳಸಬಹುದು.
- ಇದು ಸ್ಕೇಲೆಬಲ್, ಪರಿಚಿತ ಮತ್ತು ಹೊಂದಿಕೊಳ್ಳಬಲ್ಲದು.
- HiveQL ಗೆ ಯಾವುದೇ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಕೌಶಲ್ಯಗಳ ಅಗತ್ಯವಿರುವುದಿಲ್ಲ; SQL ಪ್ರಶ್ನೆಗಳ ಸರಳ ತಿಳುವಳಿಕೆ ಸಾಕಾಗುತ್ತದೆ.
ಪ್ರಯೋಜನಗಳು
ಅಪಾಚೆ ಹೈವ್ ದಿನದ ಅಂತ್ಯದ ವರದಿಗಳು, ದೈನಂದಿನ ವಹಿವಾಟು ಮೌಲ್ಯಮಾಪನಗಳು, ತಾತ್ಕಾಲಿಕ ಹುಡುಕಾಟಗಳು ಮತ್ತು ಡೇಟಾ ವಿಶ್ಲೇಷಣೆಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಅಪಾಚೆ ಹೈವ್ ಒದಗಿಸಿದ ಸಮಗ್ರ ಒಳನೋಟಗಳು ಗಮನಾರ್ಹ ಸ್ಪರ್ಧಾತ್ಮಕ ಪ್ರಯೋಜನಗಳನ್ನು ನೀಡುತ್ತವೆ ಮತ್ತು ಮಾರುಕಟ್ಟೆ ಬೇಡಿಕೆಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸಲು ನಿಮಗೆ ಸುಲಭವಾಗುತ್ತದೆ.
ಅಂತಹ ಮಾಹಿತಿಯು ಸುಲಭವಾಗಿ ಲಭ್ಯವಾಗುವುದರ ಕೆಲವು ಪ್ರಯೋಜನಗಳು ಇಲ್ಲಿವೆ:
- ಸುಲಭವಾದ ಬಳಕೆ - ಅದರ SQL ತರಹದ ಭಾಷೆಯೊಂದಿಗೆ, ಡೇಟಾವನ್ನು ಪ್ರಶ್ನಿಸುವುದು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಸರಳವಾಗಿದೆ.
- ವೇಗವರ್ಧಿತ ಡೇಟಾ ಅಳವಡಿಕೆ — ಅಪಾಚೆ ಹೈವ್ ಟೇಬಲ್ ಪ್ರಕಾರ ಅಥವಾ ಸ್ಕೀಮಾ ವ್ಯಾಖ್ಯಾನವನ್ನು ಪರಿಶೀಲಿಸದೆಯೇ ಸ್ಕೀಮಾವನ್ನು ಓದುತ್ತದೆ, ಡೇಟಾಬೇಸ್ನ ಆಂತರಿಕ ಸ್ವರೂಪದಲ್ಲಿ ಡೇಟಾವನ್ನು ಓದಲು, ಪಾರ್ಸ್ ಮಾಡಲು ಮತ್ತು ಡಿಸ್ಕ್ಗೆ ಧಾರಾವಾಹಿ ಮಾಡಬೇಕಾಗಿಲ್ಲ. ಇದಕ್ಕೆ ವಿರುದ್ಧವಾಗಿ, ಸಾಂಪ್ರದಾಯಿಕ ಡೇಟಾಬೇಸ್ನಲ್ಲಿ, ಡೇಟಾವನ್ನು ಸೇರಿಸಿದಾಗ ಪ್ರತಿ ಬಾರಿ ಮೌಲ್ಯೀಕರಿಸಬೇಕು.
- ಉನ್ನತ ಸ್ಕೇಲೆಬಿಲಿಟಿ, ನಮ್ಯತೆ ಮತ್ತು ವೆಚ್ಚ-ಪರಿಣಾಮಕಾರಿತ್ವ - ಡೇಟಾವನ್ನು HDFS ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಿರುವುದರಿಂದ, ಅಪಾಚೆ ಹೈವ್ 100s ಪೆಟಾಬೈಟ್ಗಳ ಡೇಟಾವನ್ನು ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳುತ್ತದೆ, ಇದು ಸಾಮಾನ್ಯ ಡೇಟಾಬೇಸ್ಗಿಂತ ಹೆಚ್ಚು ಸ್ಕೇಲೆಬಲ್ ಆಯ್ಕೆಯಾಗಿದೆ. Apache Hive, ಕ್ಲೌಡ್-ಆಧಾರಿತ Hadoop ಸೇವೆಯಾಗಿ, ಗ್ರಾಹಕರು ಬದಲಾಗುತ್ತಿರುವ ಕೆಲಸದ ಹೊರೆಗಳನ್ನು ಪೂರೈಸಲು ವರ್ಚುವಲ್ ಸರ್ವರ್ಗಳನ್ನು ತ್ವರಿತವಾಗಿ ತಿರುಗಿಸಲು ಮತ್ತು ಕೆಳಕ್ಕೆ ತಿರುಗಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.
- ವ್ಯಾಪಕವಾದ ಕಾರ್ಯ ಸಾಮರ್ಥ್ಯ - ದೊಡ್ಡ ಡೇಟಾಸೆಟ್ಗಳು ಪ್ರತಿ ಗಂಟೆಗೆ 100,000 ಪ್ರಶ್ನೆಗಳನ್ನು ನಿರ್ವಹಿಸಬಹುದು.
ಮಿತಿಗಳು
- ಸಾಮಾನ್ಯವಾಗಿ, ಅಪಾಚೆ ಹೈವ್ ಪ್ರಶ್ನೆಗಳು ಹೆಚ್ಚಿನ ಸುಪ್ತತೆಯನ್ನು ಹೊಂದಿರುತ್ತವೆ.
- ಸಬ್ಕ್ವೆರಿ ಬೆಂಬಲ ಸೀಮಿತವಾಗಿದೆ.
- ಅಪಾಚೆ ಹೈವ್ನಲ್ಲಿ ನೈಜ-ಸಮಯದ ಪ್ರಶ್ನೆಗಳು ಮತ್ತು ಸಾಲು-ಹಂತದ ಬದಲಾವಣೆಗಳು ಲಭ್ಯವಿಲ್ಲ.
- ವಸ್ತುನಿಷ್ಠ ವೀಕ್ಷಣೆಗಳಿಗೆ ಯಾವುದೇ ಬೆಂಬಲವಿಲ್ಲ.
- ಜೇನುಗೂಡಿನಲ್ಲಿ, ಅಪ್ಡೇಟ್ ಮತ್ತು ಅಳಿಸುವಿಕೆ ಕ್ರಿಯೆಗಳು ಬೆಂಬಲಿತವಾಗಿಲ್ಲ.
- OLTP (ಆನ್ಲೈನ್ ಪರಿವರ್ತನೆಯ ಪ್ರಕ್ರಿಯೆ) ಗಾಗಿ ಉದ್ದೇಶಿಸಿಲ್ಲ.
ಅಪಾಚೆ ಹೈವ್ನೊಂದಿಗೆ ಪ್ರಾರಂಭಿಸಲಾಗುತ್ತಿದೆ
ಅಪಾಚೆ ಹೈವ್ ಪ್ರಬಲವಾದ ಹಡೂಪ್ ಪಾಲುದಾರರಾಗಿದ್ದು ಅದು ನಿಮ್ಮ ಕೆಲಸದ ಹರಿವನ್ನು ಸರಳಗೊಳಿಸುತ್ತದೆ ಮತ್ತು ಸುಗಮಗೊಳಿಸುತ್ತದೆ. ಅಪಾಚೆ ಹೈವ್ನಿಂದ ಹೆಚ್ಚಿನದನ್ನು ಪಡೆಯಲು, ತಡೆರಹಿತ ಏಕೀಕರಣವು ಅತ್ಯಗತ್ಯ. ಗೆ ಹೋಗುವುದು ಮೊದಲ ಹೆಜ್ಜೆ ವೆಬ್ಸೈಟ್.
1. ಸ್ಥಿರ ಬಿಡುಗಡೆಯಿಂದ ಅನುಸ್ಥಾಪನ ಹೈವ್
ಅಪಾಚೆ ಡೌನ್ಲೋಡ್ ಮಿರರ್ಗಳಲ್ಲಿ ಒಂದರಿಂದ ಹೈವ್ನ ಇತ್ತೀಚಿನ ಸ್ಥಿರ ಬಿಡುಗಡೆಯನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡುವ ಮೂಲಕ ಪ್ರಾರಂಭಿಸಿ (ನೋಡಿ ಹೈವ್ ಬಿಡುಗಡೆಗಳು) ನಂತರ ಟಾರ್ಬಾಲ್ ಅನ್ನು ಅನ್ಪ್ಯಾಕ್ ಮಾಡಬೇಕು. ಇದು hive-xyz ಎಂಬ ಉಪಫೋಲ್ಡರ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ (ಇಲ್ಲಿ xyz ಎಂಬುದು ಬಿಡುಗಡೆ ಸಂಖ್ಯೆ):
ಅನುಸ್ಥಾಪನಾ ಡೈರೆಕ್ಟರಿಗೆ ಪಾಯಿಂಟ್ ಮಾಡಲು ಪರಿಸರ ವೇರಿಯೇಬಲ್ HIVE_HOME ಅನ್ನು ಹೊಂದಿಸಿ:
ಅಂತಿಮವಾಗಿ, ನಿಮಗೆ $HIVE_HOME/bin ಅನ್ನು ಸೇರಿಸಿ PATH
:
2. ಹೈವ್ ರನ್ನಿಂಗ್
ಹೈವ್ ಹಡೂಪ್ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಆದ್ದರಿಂದ:
- ನಿಮ್ಮ ಹಾದಿಯಲ್ಲಿ ನೀವು ಹಡೂಪ್ ಅನ್ನು ಹೊಂದಿರಬೇಕು ಅಥವಾ
3. DLL ಕಾರ್ಯಾಚರಣೆ
ಹೈವ್ ಟೇಬಲ್ ರಚಿಸಲಾಗುತ್ತಿದೆ
ಎರಡು ಕಾಲಮ್ಗಳೊಂದಿಗೆ ಪೋಕ್ಸ್ ಹೆಸರಿನ ಕೋಷ್ಟಕವನ್ನು ರಚಿಸುತ್ತದೆ, ಅದರಲ್ಲಿ ಮೊದಲನೆಯದು ಪೂರ್ಣಾಂಕ ಮತ್ತು ಎರಡನೆಯದು ಸ್ಟ್ರಿಂಗ್.
ಕೋಷ್ಟಕಗಳ ಮೂಲಕ ಬ್ರೌಸಿಂಗ್
ಎಲ್ಲಾ ಕೋಷ್ಟಕಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡುವುದು
ಕೋಷ್ಟಕಗಳನ್ನು ಬದಲಾಯಿಸುವುದು ಮತ್ತು ಬಿಡುವುದು
ಟೇಬಲ್ ಹೆಸರುಗಳನ್ನು ಬದಲಾಯಿಸಬಹುದು ಮತ್ತು ಕಾಲಮ್ಗಳನ್ನು ಸೇರಿಸಬಹುದು ಅಥವಾ ಬದಲಾಯಿಸಬಹುದು:
ರೀಪ್ಲೇಸ್ ಕಾಲಮ್ಗಳು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಎಲ್ಲಾ ಕಾಲಮ್ಗಳನ್ನು ಬದಲಾಯಿಸುತ್ತದೆ ಆದರೆ ಟೇಬಲ್ನ ರಚನೆಯನ್ನು ಮಾತ್ರ ಬದಲಾಯಿಸುತ್ತದೆ ಮತ್ತು ಡೇಟಾವನ್ನು ಅಲ್ಲ ಎಂಬುದು ಗಮನಿಸಬೇಕಾದ ಸಂಗತಿ. ಟೇಬಲ್ನಲ್ಲಿ ಸ್ಥಳೀಯ SerDe ಅನ್ನು ಬಳಸಬೇಕು. ಟೇಬಲ್ನ ಸ್ಕೀಮಾದಿಂದ ಕಾಲಮ್ಗಳನ್ನು ತೆಗೆದುಹಾಕಲು ಸಹ ಕಾಲಮ್ಗಳನ್ನು ಬದಲಾಯಿಸಿ:
ಡ್ರಾಪಿಂಗ್ ಟೇಬಲ್ಸ್
ಅಧಿಕೃತ ವೆಬ್ಸೈಟ್ಗೆ ಭೇಟಿ ನೀಡುವ ಮೂಲಕ ನೀವು ಕಲಿಯಬಹುದಾದ ಅಪಾಚೆ ಹೈವ್ನಲ್ಲಿ ಹಲವು ಹೆಚ್ಚುವರಿ ಕಾರ್ಯಾಚರಣೆಗಳು ಮತ್ತು ವೈಶಿಷ್ಟ್ಯಗಳಿವೆ.
ತೀರ್ಮಾನ
ಹೈವ್ ವ್ಯಾಖ್ಯಾನವು ಅಪಾಚೆ ಹಡೂಪ್ನ ಮೇಲ್ಭಾಗದಲ್ಲಿ ನಿರ್ಮಿಸಲಾದ ಬೃಹತ್ ಡೇಟಾಸೆಟ್ಗಳನ್ನು ಪ್ರಶ್ನಿಸಲು ಮತ್ತು ವಿಶ್ಲೇಷಣೆಗಾಗಿ ಡೇಟಾ ಪ್ರೋಗ್ರಾಂ ಇಂಟರ್ಫೇಸ್ ಆಗಿದೆ. ವೃತ್ತಿಪರರು ಇದನ್ನು ಇತರ ಪ್ರೋಗ್ರಾಂಗಳು, ಪರಿಕರಗಳು ಮತ್ತು ಸಾಫ್ಟ್ವೇರ್ಗಳ ಮೇಲೆ ಆಯ್ಕೆ ಮಾಡುತ್ತಾರೆ ಏಕೆಂದರೆ ಇದನ್ನು ಮುಖ್ಯವಾಗಿ ಹೈವ್ ವ್ಯಾಪಕ ಡೇಟಾಕ್ಕಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ ಮತ್ತು ಬಳಸಲು ಸರಳವಾಗಿದೆ.
ಈ ಟ್ಯುಟೋರಿಯಲ್ ನಿಮಗೆ ಅಪಾಚೆ ಹೈವ್ನೊಂದಿಗೆ ಕಿಕ್ಸ್ಟಾರ್ಟ್ ಮಾಡಲು ಮತ್ತು ನಿಮ್ಮ ವರ್ಕ್ಫ್ಲೋಗಳನ್ನು ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಮಾಡಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ ಎಂದು ಭಾವಿಸುತ್ತೇವೆ. ಕಾಮೆಂಟ್ಗಳಲ್ಲಿ ನಮಗೆ ತಿಳಿಸಿ.
ಪ್ರತ್ಯುತ್ತರ ನೀಡಿ