Hive ਵਪਾਰ ਵਿੱਚ ਵਿਆਪਕ ਤੌਰ 'ਤੇ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਬਿਗ ਡੇਟਾ ਵਿਸ਼ਲੇਸ਼ਣ ਟੂਲ ਹੈ, ਅਤੇ ਜੇਕਰ ਤੁਸੀਂ ਬਿਗ ਡੇਟਾ ਲਈ ਨਵੇਂ ਹੋ ਤਾਂ ਇਹ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਇੱਕ ਸ਼ਾਨਦਾਰ ਸਥਾਨ ਹੈ। ਇਹ ਅਪਾਚੇ ਹਾਈਵ ਸਬਕ ਅਪਾਚੇ ਹਾਈਵ ਦੇ ਬੁਨਿਆਦੀ ਸਿਧਾਂਤਾਂ ਵਿੱਚੋਂ ਲੰਘਦਾ ਹੈ, ਇੱਕ ਛਪਾਕੀ ਕਿਉਂ ਜ਼ਰੂਰੀ ਹੈ, ਇਸ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ, ਅਤੇ ਬਾਕੀ ਸਭ ਕੁਝ ਜੋ ਤੁਹਾਨੂੰ ਪਤਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।
ਆਉ ਪਹਿਲਾਂ ਹਾਡੂਪ ਫਰੇਮਵਰਕ ਨੂੰ ਸਮਝੀਏ ਜਿਸ ਉੱਤੇ ਅਪਾਚੇ ਹਾਈਵ ਬਣਾਇਆ ਗਿਆ ਹੈ।
ਅਪਾਚੇ ਹੈਡੋਪ
ਅਪਾਚੇ ਹਡੂਪ ਇੱਕ ਮੁਫਤ ਹੈ ਅਤੇ ਓਪਨ-ਸਰੋਤ ਗੀਗਾਬਾਈਟ ਤੋਂ ਲੈ ਕੇ ਪੇਟਾਬਾਈਟ ਤੱਕ ਦੇ ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਨੂੰ ਸਟੋਰ ਕਰਨ ਅਤੇ ਪ੍ਰੋਸੈਸ ਕਰਨ ਲਈ ਪਲੇਟਫਾਰਮ। ਹੈਡੂਪ ਬਹੁਤ ਸਾਰੇ ਕੰਪਿਊਟਰਾਂ ਨੂੰ ਕਲੱਸਟਰ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਨਾ ਕਿ ਡੇਟਾ ਨੂੰ ਸਟੋਰ ਕਰਨ ਅਤੇ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਲਈ ਇੱਕ ਵੱਡੇ ਕੰਪਿਊਟਰ ਦੀ ਲੋੜ ਦੀ ਬਜਾਏ, ਸਮਾਨਾਂਤਰ ਵਿੱਚ ਵਿਸ਼ਾਲ ਡੇਟਾਸੈਟਾਂ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਲਈ।
MapReduce ਅਤੇ Hadoop ਡਿਸਟਰੀਬਿਊਟਿਡ ਫਾਈਲ ਸਿਸਟਮ ਦੋ ਭਾਗ ਹਨ:
- ਮੈਪਰੇਡੂ - MapReduce ਕਮੋਡਿਟੀ ਹਾਰਡਵੇਅਰ ਕਲੱਸਟਰਾਂ 'ਤੇ ਸੰਗਠਿਤ, ਅਰਧ-ਸੰਰਚਨਾ ਵਾਲੇ, ਅਤੇ ਗੈਰ-ਸੰਗਠਿਤ ਡੇਟਾ ਦੀ ਵੱਡੀ ਮਾਤਰਾ ਨੂੰ ਸੰਭਾਲਣ ਲਈ ਇੱਕ ਸਮਾਨਾਂਤਰ ਪ੍ਰੋਗਰਾਮਿੰਗ ਤਕਨੀਕ ਹੈ।
- ਐਚ.ਡੀ.ਐੱਫ.ਐੱਸ - ਐਚਡੀਐਫਐਸ (ਹਡੂਪ ਡਿਸਟ੍ਰੀਬਿਊਟਿਡ ਫਾਈਲ ਸਿਸਟਮ) ਇੱਕ ਹੈਡੂਪ ਫਰੇਮਵਰਕ ਕੰਪੋਨੈਂਟ ਹੈ ਜੋ ਡੇਟਾ ਨੂੰ ਸਟੋਰ ਅਤੇ ਪ੍ਰੋਸੈਸ ਕਰਦਾ ਹੈ। ਇਹ ਇੱਕ ਨੁਕਸ-ਸਹਿਣਸ਼ੀਲ ਫਾਈਲ ਸਿਸਟਮ ਹੈ ਜੋ ਸਟੈਂਡਰਡ ਹਾਰਡਵੇਅਰ 'ਤੇ ਚੱਲਦਾ ਹੈ
ਹਾਡੂਪ ਈਕੋਸਿਸਟਮ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਉਪ-ਪ੍ਰੋਜੈਕਟ (ਟੂਲ), ਜਿਸ ਵਿੱਚ ਸਕੂਪ, ਪਿਗ ਅਤੇ ਹਾਈਵ ਸ਼ਾਮਲ ਹਨ, ਦੀ ਵਰਤੋਂ ਹੈਡੂਪ ਮੋਡਿਊਲਾਂ ਦੀ ਸਹਾਇਤਾ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।
- Hive - Hive SQL-ਸ਼ੈਲੀ ਦੀਆਂ ਸਕ੍ਰਿਪਟਾਂ ਲਿਖਣ ਲਈ ਇੱਕ ਢਾਂਚਾ ਹੈ ਜੋ MapReduce ਗਣਨਾ ਕਰਦੇ ਹਨ।
- ਸੂਰ - ਪਿਗ ਇੱਕ ਪ੍ਰਕਿਰਿਆਤਮਕ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਹੈ ਜੋ MapReduce ਪ੍ਰਕਿਰਿਆਵਾਂ ਲਈ ਇੱਕ ਸਕ੍ਰਿਪਟ ਬਣਾਉਣ ਲਈ ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ।
- ਸਕੂਪ - Sqoop HDFS ਅਤੇ RDBMS ਵਿਚਕਾਰ ਡੇਟਾ ਨੂੰ ਆਯਾਤ ਅਤੇ ਨਿਰਯਾਤ ਕਰਨ ਲਈ ਇੱਕ ਸਾਧਨ ਹੈ।
ਕੀ ਹੈ ਅਪਾਚੇ ਹਾਇ?
Apache Hive ਇੱਕ ਓਪਨ ਸੋਰਸ ਹੈ ਡਾਟਾ ਵੇਅਰਹਾਊਸ Apache Hadoop ਡਿਸਟਰੀਬਿਊਟਡ ਫਾਈਲ ਸਿਸਟਮ (HDFS) ਜਾਂ Apache HBase ਵਰਗੇ ਹੋਰ ਡਾਟਾ ਸਟੋਰੇਜ ਸਿਸਟਮਾਂ ਵਿੱਚ ਸਿੱਧੇ ਸਟੋਰ ਕੀਤੇ ਵਿਸ਼ਾਲ ਡੇਟਾ ਸੈੱਟਾਂ ਨੂੰ ਪੜ੍ਹਨ, ਲਿਖਣ ਅਤੇ ਪ੍ਰਬੰਧਨ ਲਈ ਪ੍ਰੋਗਰਾਮ।
SQL ਡਿਵੈਲਪਰ ਡਾਟਾ ਪੁੱਛਗਿੱਛ ਅਤੇ ਵਿਸ਼ਲੇਸ਼ਣ ਲਈ Hive ਕਿਊਰੀ ਲੈਂਗੂਏਜ (HQL) ਸਟੇਟਮੈਂਟਾਂ ਬਣਾਉਣ ਲਈ Hive ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹਨ ਜੋ ਨਿਯਮਤ SQL ਸਟੇਟਮੈਂਟਾਂ ਨਾਲ ਤੁਲਨਾਯੋਗ ਹਨ। ਇਹ ਲੰਬੇ Java ਕੋਡ ਨੂੰ ਸਿੱਖਣ ਅਤੇ ਲਿਖਣ ਦੀ ਲੋੜ ਨੂੰ ਖਤਮ ਕਰਕੇ MapReduce ਪ੍ਰੋਗਰਾਮਿੰਗ ਨੂੰ ਆਸਾਨ ਬਣਾਉਣ ਲਈ ਬਣਾਇਆ ਗਿਆ ਸੀ। ਇਸਦੀ ਬਜਾਏ, ਤੁਸੀਂ HQL ਵਿੱਚ ਆਪਣੇ ਸਵਾਲ ਲਿਖ ਸਕਦੇ ਹੋ, ਅਤੇ Hive ਨਕਸ਼ੇ ਨੂੰ ਬਣਾਏਗਾ ਅਤੇ ਤੁਹਾਡੇ ਲਈ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਘਟਾ ਦੇਵੇਗਾ।
Apache Hive ਦਾ SQL-ਵਰਗਾ ਇੰਟਰਫੇਸ ਐਡ-ਹਾਕ ਖੋਜਾਂ ਕਰਨ, ਸੰਖੇਪ ਜਾਣਕਾਰੀ ਦੇਣ ਅਤੇ Hadoop ਡੇਟਾ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਲਈ ਗੋਲਡ ਸਟੈਂਡਰਡ ਬਣ ਗਿਆ ਹੈ। ਜਦੋਂ ਕਲਾਉਡ ਵਿੱਚ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ ਕੰਪਿਊਟਿੰਗ ਨੈੱਟਵਰਕ, ਇਹ ਹੱਲ ਖਾਸ ਤੌਰ 'ਤੇ ਲਾਗਤ-ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਅਤੇ ਸਕੇਲੇਬਲ ਹੈ, ਇਸੇ ਕਰਕੇ Netflix ਅਤੇ Amazon ਸਮੇਤ ਬਹੁਤ ਸਾਰੀਆਂ ਫਰਮਾਂ, Apache Hive ਦਾ ਵਿਕਾਸ ਅਤੇ ਸੁਧਾਰ ਕਰਨਾ ਜਾਰੀ ਰੱਖਦੀਆਂ ਹਨ।
ਇਤਿਹਾਸ
ਫੇਸਬੁੱਕ 'ਤੇ ਆਪਣੇ ਸਮੇਂ ਦੌਰਾਨ, ਜੋਯਦੀਪ ਸੇਨ ਸਰਮਾ ਅਤੇ ਆਸ਼ੀਸ਼ ਥਸੂ ਨੇ ਅਪਾਚੇ ਹਾਈਵ ਨੂੰ ਸਹਿ-ਬਣਾਇਆ। ਉਹਨਾਂ ਦੋਵਾਂ ਨੇ ਪਛਾਣ ਲਿਆ ਕਿ ਹੈਡੂਪ ਤੋਂ ਵੱਧ ਤੋਂ ਵੱਧ ਲਾਭ ਲੈਣ ਲਈ, ਉਹਨਾਂ ਨੂੰ ਕੁਝ ਨਾ ਕਿ ਗੁੰਝਲਦਾਰ Java Map-Reduce ਟਾਸਕ ਬਣਾਉਣੇ ਪੈਣਗੇ। ਉਹਨਾਂ ਨੇ ਪਛਾਣਿਆ ਕਿ ਉਹ ਆਪਣੀ ਤੇਜ਼ੀ ਨਾਲ ਫੈਲ ਰਹੀ ਇੰਜੀਨੀਅਰਿੰਗ ਅਤੇ ਵਿਸ਼ਲੇਸ਼ਣ ਟੀਮਾਂ ਨੂੰ ਉਹਨਾਂ ਹੁਨਰਾਂ ਬਾਰੇ ਸਿੱਖਿਆ ਦੇਣ ਦੇ ਯੋਗ ਨਹੀਂ ਹੋਣਗੇ ਜਿਹਨਾਂ ਦੀ ਉਹਨਾਂ ਨੂੰ ਪੂਰੀ ਕੰਪਨੀ ਵਿੱਚ ਹੈਡੂਪ ਦਾ ਲਾਭ ਉਠਾਉਣ ਦੀ ਲੋੜ ਹੈ। ਇੰਜੀਨੀਅਰ ਅਤੇ ਵਿਸ਼ਲੇਸ਼ਕ ਅਕਸਰ ਇੱਕ ਉਪਭੋਗਤਾ ਇੰਟਰਫੇਸ ਵਜੋਂ SQL ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ।
ਜਦੋਂ ਕਿ SQL ਬਹੁਗਿਣਤੀ ਵਿਸ਼ਲੇਸ਼ਕੀ ਲੋੜਾਂ ਨੂੰ ਪੂਰਾ ਕਰ ਸਕਦਾ ਹੈ, ਡਿਵੈਲਪਰਾਂ ਨੇ ਹੈਡੂਪ ਦੀ ਪ੍ਰੋਗਰਾਮੇਬਿਲਟੀ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਦਾ ਇਰਾਦਾ ਵੀ ਰੱਖਿਆ। ਅਪਾਚੇ ਹਾਈਵ ਇਹਨਾਂ ਦੋ ਉਦੇਸ਼ਾਂ ਤੋਂ ਪੈਦਾ ਹੋਇਆ: ਇੱਕ SQL-ਅਧਾਰਿਤ ਘੋਸ਼ਣਾਤਮਕ ਭਾਸ਼ਾ ਜਿਸ ਨੇ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਉਹਨਾਂ ਦੀਆਂ ਆਪਣੀਆਂ ਸਕ੍ਰਿਪਟਾਂ ਅਤੇ ਪ੍ਰੋਗਰਾਮਾਂ ਨੂੰ ਲਿਆਉਣ ਦੇ ਯੋਗ ਬਣਾਇਆ ਜਦੋਂ SQL ਕਾਫ਼ੀ ਨਹੀਂ ਸੀ।
ਇਹ ਡਾਟਾ-ਸੰਚਾਲਿਤ ਸੰਸਥਾਵਾਂ ਦੇ ਨਿਰਮਾਣ ਨੂੰ ਆਸਾਨ ਬਣਾਉਣ ਲਈ ਕੰਪਨੀ ਵਿੱਚ ਸਾਰੇ ਡੇਟਾਸੇਟਾਂ ਬਾਰੇ ਕੇਂਦਰੀਕ੍ਰਿਤ ਮੈਟਾਡੇਟਾ (ਹਡੂਪ-ਅਧਾਰਿਤ) ਰੱਖਣ ਲਈ ਵੀ ਵਿਕਸਤ ਕੀਤਾ ਗਿਆ ਸੀ।
Apache Hive ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ?
ਸੰਖੇਪ ਰੂਪ ਵਿੱਚ, Apache Hive HiveQL (SQL-ਵਰਗੀ) ਭਾਸ਼ਾ ਵਿੱਚ ਲਿਖੇ ਇੱਕ ਇਨਪੁਟ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ Java MapReduce, Tez, ਜਾਂ Spark ਕੰਮਾਂ ਵਿੱਚ ਬਦਲਦਾ ਹੈ। (ਇਹ ਸਾਰੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਇੰਜਣ Hadoop YARN ਦੇ ਅਨੁਕੂਲ ਹਨ।) ਉਸ ਤੋਂ ਬਾਅਦ, Apache Hive ਹੈਡੂਪ ਡਿਸਟਰੀਬਿਊਟਿਡ ਫਾਈਲ ਸਿਸਟਮ HDFS ਲਈ ਟੇਬਲਾਂ ਵਿੱਚ ਡੇਟਾ ਦਾ ਪ੍ਰਬੰਧ ਕਰਦਾ ਹੈ) ਅਤੇ ਇੱਕ ਜਵਾਬ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਇੱਕ ਕਲੱਸਟਰ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ।
ਡੇਟਾ
ਅਪਾਚੇ ਹਾਈਵ ਟੇਬਲਾਂ ਨੂੰ ਉਸੇ ਤਰ੍ਹਾਂ ਵਿਵਸਥਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਿਵੇਂ ਕਿ ਇੱਕ ਰਿਲੇਸ਼ਨਲ ਡੇਟਾਬੇਸ ਵਿੱਚ ਟੇਬਲਾਂ ਨੂੰ ਸੰਗਠਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਡੇਟਾ ਯੂਨਿਟਾਂ ਦਾ ਆਕਾਰ ਵੱਡੇ ਤੋਂ ਛੋਟੇ ਤੱਕ ਹੁੰਦਾ ਹੈ। ਡੇਟਾਬੇਸ ਟੇਬਲਾਂ ਦੇ ਬਣੇ ਹੁੰਦੇ ਹਨ ਜੋ ਡਿਵੀਜ਼ਨਾਂ ਵਿੱਚ ਵੰਡੇ ਜਾਂਦੇ ਹਨ, ਜੋ ਅੱਗੇ ਬਾਲਟੀ ਵਿੱਚ ਵੰਡੇ ਜਾਂਦੇ ਹਨ। HiveQL (Hive Query Language) ਦੀ ਵਰਤੋਂ ਡੇਟਾ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਿਸ ਨੂੰ ਬਦਲਿਆ ਜਾਂ ਜੋੜਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਟੇਬਲ ਡੇਟਾ ਹਰੇਕ ਡੇਟਾਬੇਸ ਦੇ ਅੰਦਰ ਲੜੀਬੱਧ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਹਰੇਕ ਸਾਰਣੀ ਦੀ ਆਪਣੀ HDFS ਡਾਇਰੈਕਟਰੀ ਹੁੰਦੀ ਹੈ।
ਆਰਕੀਟੈਕਚਰ
ਹੁਣ ਅਸੀਂ Hive ਆਰਕੀਟੈਕਚਰ ਦੇ ਸਭ ਤੋਂ ਮਹੱਤਵਪੂਰਨ ਪਹਿਲੂ ਬਾਰੇ ਗੱਲ ਕਰਾਂਗੇ. ਅਪਾਚੇ ਹਾਈਵ ਦੇ ਭਾਗ ਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਹਨ:
ਮੈਟਾਸਟੋਰ — ਇਹ ਹਰੇਕ ਸਾਰਣੀ ਬਾਰੇ ਜਾਣਕਾਰੀ ਦਾ ਰਿਕਾਰਡ ਰੱਖਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਇਸਦੀ ਬਣਤਰ ਅਤੇ ਸਥਾਨ। ਭਾਗ ਮੈਟਾਡੇਟਾ ਇਸੇ ਤਰ੍ਹਾਂ Hive ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ। ਇਹ ਡ੍ਰਾਈਵਰ ਨੂੰ ਕਲੱਸਟਰ ਵਿੱਚ ਫੈਲੇ ਵੱਖ-ਵੱਖ ਡੇਟਾ ਸੈੱਟਾਂ ਦੀ ਪ੍ਰਗਤੀ 'ਤੇ ਨਜ਼ਰ ਰੱਖਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਡੇਟਾ ਨੂੰ ਇੱਕ ਰਵਾਇਤੀ RDBMS ਫਾਰਮੈਟ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਡਾਟੇ ਦਾ ਟ੍ਰੈਕ ਬਣਾਈ ਰੱਖਣ ਲਈ ਡਰਾਈਵਰ ਲਈ ਹਾਈਵ ਮੈਟਾਡੇਟਾ ਬਹੁਤ ਮਹੱਤਵਪੂਰਨ ਹੈ। ਬੈਕਅਪ ਸਰਵਰ ਨਿਯਮਤ ਅਧਾਰ 'ਤੇ ਡੇਟਾ ਨੂੰ ਡੁਪਲੀਕੇਟ ਕਰਦਾ ਹੈ ਤਾਂ ਜੋ ਡੇਟਾ ਦੇ ਨੁਕਸਾਨ ਦੀ ਸਥਿਤੀ ਵਿੱਚ ਇਸਨੂੰ ਮੁੜ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕੇ।
ਡਰਾਈਵਰ - HiveQL ਸਟੇਟਮੈਂਟਾਂ ਇੱਕ ਡਰਾਈਵਰ ਦੁਆਰਾ ਪ੍ਰਾਪਤ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ, ਜੋ ਇੱਕ ਕੰਟਰੋਲਰ ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। ਸੈਸ਼ਨਾਂ ਦੀ ਸਥਾਪਨਾ ਕਰਕੇ, ਡਰਾਈਵਰ ਬਿਆਨ ਨੂੰ ਲਾਗੂ ਕਰਨ ਦੀ ਸ਼ੁਰੂਆਤ ਕਰਦਾ ਹੈ। ਇਹ ਕਾਰਜਕਾਰੀ ਦੇ ਜੀਵਨ ਕਾਲ ਅਤੇ ਤਰੱਕੀ 'ਤੇ ਨਜ਼ਰ ਰੱਖਦਾ ਹੈ। HiveQL ਸਟੇਟਮੈਂਟ ਦੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਦੌਰਾਨ, ਡਰਾਈਵਰ ਲੋੜੀਂਦਾ ਮੈਟਾਡੇਟਾ ਸੁਰੱਖਿਅਤ ਕਰਦਾ ਹੈ। ਇਹ ਘਟਾਓ ਪ੍ਰਕਿਰਿਆ ਦੇ ਬਾਅਦ ਇੱਕ ਡੇਟਾ ਜਾਂ ਪੁੱਛਗਿੱਛ ਨਤੀਜੇ ਇਕੱਤਰ ਕਰਨ ਵਾਲੇ ਬਿੰਦੂ ਵਜੋਂ ਵੀ ਕੰਮ ਕਰਦਾ ਹੈ।
ਕੰਪਾਈਲਰ - ਇਹ HiveQL ਪੁੱਛਗਿੱਛ ਸੰਕਲਨ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ। ਪੁੱਛਗਿੱਛ ਨੂੰ ਹੁਣ ਇੱਕ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਪਲਾਨ ਵਿੱਚ ਬਦਲ ਦਿੱਤਾ ਗਿਆ ਹੈ। ਕਾਰਜ ਯੋਜਨਾ ਵਿੱਚ ਸੂਚੀਬੱਧ ਹਨ. ਇਸ ਵਿੱਚ ਉਹ ਕਦਮ ਵੀ ਸ਼ਾਮਲ ਹਨ ਜੋ MapReduce ਨੂੰ ਪੁੱਛਗਿੱਛ ਦੁਆਰਾ ਅਨੁਵਾਦ ਕੀਤੇ ਅਨੁਸਾਰ ਨਤੀਜਾ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਲੈਣੇ ਚਾਹੀਦੇ ਹਨ। ਪੁੱਛਗਿੱਛ ਨੂੰ Hive ਦੇ ਕੰਪਾਈਲਰ (AST) ਦੁਆਰਾ ਇੱਕ ਐਬਸਟਰੈਕਟ ਸਿੰਟੈਕਸ ਟ੍ਰੀ ਵਿੱਚ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ। ਅਨੁਕੂਲਤਾ ਅਤੇ ਕੰਪਾਈਲ-ਟਾਈਮ ਫਾਲਟਸ (DAG) ਦੀ ਜਾਂਚ ਕਰਨ ਤੋਂ ਬਾਅਦ AST ਨੂੰ ਇੱਕ ਡਾਇਰੈਕਟਡ ਐਸੀਕਲਿਕ ਗ੍ਰਾਫ ਵਿੱਚ ਬਦਲਦਾ ਹੈ।
ਅਨੁਕੂਲ - ਇਹ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਪਲਾਨ 'ਤੇ ਵੱਖ-ਵੱਖ ਬਦਲਾਅ ਕਰਕੇ DAG ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਂਦਾ ਹੈ। ਇਹ ਸੁਧਾਰੀ ਕੁਸ਼ਲਤਾ ਲਈ ਪਰਿਵਰਤਨ ਨੂੰ ਜੋੜਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਜੋੜਾਂ ਦੀ ਪਾਈਪਲਾਈਨ ਨੂੰ ਇੱਕ ਸਿੰਗਲ ਜੋੜ ਵਿੱਚ ਬਦਲਣਾ। ਸਪੀਡ ਨੂੰ ਬਿਹਤਰ ਬਣਾਉਣ ਲਈ, ਆਪਟੀਮਾਈਜ਼ਰ ਗਤੀਵਿਧੀਆਂ ਨੂੰ ਵੰਡ ਸਕਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਕਟੌਤੀ ਕਾਰਵਾਈ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਡੇਟਾ ਵਿੱਚ ਇੱਕ ਪਰਿਵਰਤਨ ਲਾਗੂ ਕਰਨਾ।
ਐਕਵਾਇਰਰ - ਜਦੋਂ ਸੰਕਲਨ ਅਤੇ ਅਨੁਕੂਲਨ ਪੂਰਾ ਹੋ ਜਾਂਦਾ ਹੈ ਤਾਂ ਐਗਜ਼ੀਕਿਊਟਰ ਕੰਮ ਚਲਾਉਂਦਾ ਹੈ। ਨੌਕਰੀਆਂ ਨੂੰ ਕਾਰਜਕਾਰੀ ਦੁਆਰਾ ਪਾਈਪਲਾਈਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.
CLI, UI, ਅਤੇ ਥ੍ਰਿਫਟ ਸਰਵਰ - ਕਮਾਂਡ-ਲਾਈਨ ਇੰਟਰਫੇਸ (CLI) ਇੱਕ ਉਪਭੋਗਤਾ ਇੰਟਰਫੇਸ ਹੈ ਜੋ ਇੱਕ ਬਾਹਰੀ ਉਪਭੋਗਤਾ ਨੂੰ Hive ਨਾਲ ਸੰਚਾਰ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। Hive ਦਾ ਥ੍ਰਿਫਟ ਸਰਵਰ, JDBC ਜਾਂ ODBC ਪ੍ਰੋਟੋਕੋਲ ਦੇ ਸਮਾਨ, ਬਾਹਰੀ ਗਾਹਕਾਂ ਨੂੰ ਇੱਕ ਨੈੱਟਵਰਕ ਰਾਹੀਂ Hive ਨਾਲ ਸੰਚਾਰ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ।
ਸੁਰੱਖਿਆ
Apache Hive ਨੂੰ Hadoop ਸੁਰੱਖਿਆ ਨਾਲ ਜੋੜਿਆ ਗਿਆ ਹੈ, ਜੋ ਕਿ ਕਲਾਇੰਟ-ਸਰਵਰ ਆਪਸੀ ਪ੍ਰਮਾਣਿਕਤਾ ਲਈ ਕਰਬੇਰੋਸ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ। HDFS ਅਪਾਚੇ ਹਾਈਵ ਵਿੱਚ ਨਵੀਆਂ ਤਿਆਰ ਕੀਤੀਆਂ ਫਾਈਲਾਂ ਲਈ ਅਨੁਮਤੀਆਂ ਦਾ ਹੁਕਮ ਦਿੰਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਤੁਸੀਂ ਉਪਭੋਗਤਾ, ਸਮੂਹ ਅਤੇ ਹੋਰਾਂ ਦੁਆਰਾ ਮਨਜ਼ੂਰੀ ਦੇ ਸਕਦੇ ਹੋ।
ਜਰੂਰੀ ਚੀਜਾ
- Hive ਬਾਹਰੀ ਸਾਰਣੀਆਂ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ, ਜੋ ਤੁਹਾਨੂੰ HDFS ਵਿੱਚ ਸਟੋਰ ਕੀਤੇ ਬਿਨਾਂ ਡੇਟਾ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਦਿੰਦਾ ਹੈ।
- ਇਹ ਸਪੀਡ ਵਧਾਉਣ ਲਈ ਟੇਬਲ ਪੱਧਰ 'ਤੇ ਡਾਟਾ ਸੈਗਮੈਂਟੇਸ਼ਨ ਨੂੰ ਵੀ ਸਮਰੱਥ ਬਣਾਉਂਦਾ ਹੈ।
- ਅਪਾਚੇ ਹਾਈਵ ਹੈਡੂਪ ਦੀ ਘੱਟ-ਪੱਧਰੀ ਇੰਟਰਫੇਸ ਲੋੜ ਨੂੰ ਸ਼ਾਨਦਾਰ ਢੰਗ ਨਾਲ ਪੂਰਾ ਕਰਦਾ ਹੈ।
- Hive ਡਾਟਾ ਸੰਖੇਪ, ਪੁੱਛਗਿੱਛ ਅਤੇ ਵਿਸ਼ਲੇਸ਼ਣ ਨੂੰ ਆਸਾਨ ਬਣਾਉਂਦਾ ਹੈ।
- HiveQL ਨੂੰ ਕਿਸੇ ਵੀ ਪ੍ਰੋਗਰਾਮਿੰਗ ਹੁਨਰ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ; SQL ਸਵਾਲਾਂ ਦੀ ਇੱਕ ਸਧਾਰਨ ਸਮਝ ਕਾਫੀ ਹੈ।
- ਅਸੀਂ ਡਾਟਾ ਵਿਸ਼ਲੇਸ਼ਣ ਲਈ ਐਡ-ਹਾਕ ਪੁੱਛਗਿੱਛਾਂ ਕਰਨ ਲਈ Hive ਦੀ ਵਰਤੋਂ ਵੀ ਕਰ ਸਕਦੇ ਹਾਂ।
- ਇਹ ਮਾਪਯੋਗ, ਜਾਣੂ ਅਤੇ ਅਨੁਕੂਲ ਹੈ।
- HiveQL ਨੂੰ ਕਿਸੇ ਵੀ ਪ੍ਰੋਗਰਾਮਿੰਗ ਹੁਨਰ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ; SQL ਸਵਾਲਾਂ ਦੀ ਇੱਕ ਸਧਾਰਨ ਸਮਝ ਕਾਫੀ ਹੈ।
ਲਾਭ
Apache Hive ਦਿਨ ਦੇ ਅੰਤ ਦੀਆਂ ਰਿਪੋਰਟਾਂ, ਰੋਜ਼ਾਨਾ ਲੈਣ-ਦੇਣ ਦੇ ਮੁਲਾਂਕਣਾਂ, ਐਡ-ਹਾਕ ਖੋਜਾਂ, ਅਤੇ ਡੇਟਾ ਵਿਸ਼ਲੇਸ਼ਣ ਲਈ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। Apache Hive ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੀ ਗਈ ਵਿਆਪਕ ਸਮਝ ਮਹੱਤਵਪੂਰਨ ਪ੍ਰਤੀਯੋਗੀ ਫਾਇਦੇ ਦਿੰਦੀ ਹੈ ਅਤੇ ਤੁਹਾਡੇ ਲਈ ਮਾਰਕੀਟ ਦੀਆਂ ਮੰਗਾਂ ਦਾ ਜਵਾਬ ਦੇਣਾ ਆਸਾਨ ਬਣਾਉਂਦੀ ਹੈ।
ਇੱਥੇ ਅਜਿਹੀ ਜਾਣਕਾਰੀ ਆਸਾਨੀ ਨਾਲ ਉਪਲਬਧ ਹੋਣ ਦੇ ਕੁਝ ਫਾਇਦੇ ਹਨ:
- ਵਰਤਣ ਵਿੱਚ ਆਸਾਨੀ - ਇਸਦੀ SQL-ਵਰਗੀ ਭਾਸ਼ਾ ਦੇ ਨਾਲ, ਪੁੱਛਗਿੱਛ ਡੇਟਾ ਨੂੰ ਸਮਝਣਾ ਆਸਾਨ ਹੈ।
- ਐਕਸਲਰੇਟਿਡ ਡਾਟਾ ਸੰਮਿਲਨ — ਕਿਉਂਕਿ ਅਪਾਚੇ ਹਾਈਵ ਸਾਰਣੀ ਦੀ ਕਿਸਮ ਜਾਂ ਸਕੀਮਾ ਪਰਿਭਾਸ਼ਾ ਦੀ ਪੁਸ਼ਟੀ ਕੀਤੇ ਬਿਨਾਂ ਸਕੀਮਾ ਨੂੰ ਪੜ੍ਹਦਾ ਹੈ, ਡੇਟਾਬੇਸ ਦੇ ਅੰਦਰੂਨੀ ਫਾਰਮੈਟ ਵਿੱਚ ਡਿਸਕ ਨੂੰ ਪੜ੍ਹਨ, ਪਾਰਸ ਕਰਨ ਅਤੇ ਲੜੀਬੱਧ ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ। ਇਸਦੇ ਉਲਟ, ਇੱਕ ਰਵਾਇਤੀ ਡੇਟਾਬੇਸ ਵਿੱਚ, ਡੇਟਾ ਨੂੰ ਹਰ ਵਾਰ ਜੋੜਨ 'ਤੇ ਪ੍ਰਮਾਣਿਤ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ।
- ਉੱਤਮ ਮਾਪਯੋਗਤਾ, ਲਚਕਤਾ, ਅਤੇ ਲਾਗਤ-ਪ੍ਰਭਾਵਸ਼ੀਲਤਾ - ਕਿਉਂਕਿ ਡੇਟਾ HDFS ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, Apache Hive ਵਿੱਚ 100s ਪੇਟਾਬਾਈਟ ਡੇਟਾ ਹੋ ਸਕਦਾ ਹੈ, ਇਸ ਨੂੰ ਇੱਕ ਆਮ ਡੇਟਾਬੇਸ ਨਾਲੋਂ ਕਿਤੇ ਵੱਧ ਸਕੇਲੇਬਲ ਵਿਕਲਪ ਬਣਾਉਂਦਾ ਹੈ। Apache Hive, ਇੱਕ ਕਲਾਉਡ-ਅਧਾਰਿਤ ਹੈਡੂਪ ਸੇਵਾ ਦੇ ਰੂਪ ਵਿੱਚ, ਗਾਹਕਾਂ ਨੂੰ ਵਰਚੁਅਲ ਸਰਵਰਾਂ ਨੂੰ ਬਦਲਦੇ ਹੋਏ ਵਰਕਲੋਡਾਂ ਨੂੰ ਪੂਰਾ ਕਰਨ ਲਈ ਤੇਜ਼ੀ ਨਾਲ ਸਪਿਨ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ।
- ਵਿਆਪਕ ਕੰਮ ਕਰਨ ਦੀ ਸਮਰੱਥਾ - ਵੱਡੇ ਡੇਟਾਸੈੱਟ ਪ੍ਰਤੀ ਘੰਟਾ 100,000 ਸਵਾਲਾਂ ਨੂੰ ਸੰਭਾਲ ਸਕਦੇ ਹਨ।
ਇਸਤੇਮਾਲ
- ਆਮ ਤੌਰ 'ਤੇ, Apache Hive ਸਵਾਲਾਂ ਵਿੱਚ ਬਹੁਤ ਜ਼ਿਆਦਾ ਲੇਟੈਂਸੀ ਹੁੰਦੀ ਹੈ।
- ਸਬਕਵੇਰੀ ਸਹਾਇਤਾ ਸੀਮਤ ਹੈ।
- Apache Hive ਵਿੱਚ ਅਸਲ-ਸਮੇਂ ਦੀਆਂ ਪੁੱਛਗਿੱਛਾਂ ਅਤੇ ਕਤਾਰ-ਪੱਧਰ ਦੀਆਂ ਤਬਦੀਲੀਆਂ ਉਪਲਬਧ ਨਹੀਂ ਹਨ।
- ਪਦਾਰਥਵਾਦੀ ਵਿਚਾਰਾਂ ਦਾ ਕੋਈ ਸਮਰਥਨ ਨਹੀਂ ਹੈ।
- Hive ਵਿੱਚ, ਅੱਪਡੇਟ ਅਤੇ ਮਿਟਾਉਣ ਦੀਆਂ ਕਾਰਵਾਈਆਂ ਸਮਰਥਿਤ ਨਹੀਂ ਹਨ।
- OLTP (ਆਨਲਾਈਨ ਪਰਿਵਰਤਨਸ਼ੀਲ ਪ੍ਰਕਿਰਿਆ) ਲਈ ਨਹੀਂ ਹੈ।
Apache Hive ਨਾਲ ਸ਼ੁਰੂਆਤ ਕਰਨਾ
Apache Hive ਇੱਕ ਮਜ਼ਬੂਤ Hadoop ਸਾਥੀ ਹੈ ਜੋ ਤੁਹਾਡੇ ਵਰਕਫਲੋ ਨੂੰ ਸਰਲ ਅਤੇ ਸੁਚਾਰੂ ਬਣਾਉਂਦਾ ਹੈ। ਅਪਾਚੇ ਹਾਈਵ ਤੋਂ ਵੱਧ ਤੋਂ ਵੱਧ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ, ਸਹਿਜ ਏਕੀਕਰਣ ਜ਼ਰੂਰੀ ਹੈ। ਪਹਿਲਾ ਕਦਮ 'ਤੇ ਜਾਣਾ ਹੈ ਵੈਬਸਾਈਟ.
1. ਇੱਕ ਸਥਿਰ ਰੀਲੀਜ਼ ਤੋਂ ਇੰਸਟਾਲੇਸ਼ਨ Hive
ਅਪਾਚੇ ਡਾਊਨਲੋਡ ਮਿਰਰਾਂ ਵਿੱਚੋਂ ਇੱਕ ਤੋਂ Hive ਦੀ ਸਭ ਤੋਂ ਤਾਜ਼ਾ ਸਥਿਰ ਰੀਲੀਜ਼ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰਕੇ ਸ਼ੁਰੂ ਕਰੋ (ਦੇਖੋ Hive ਰੀਲੀਜ਼). ਫਿਰ ਟਾਰਬਾਲ ਨੂੰ ਅਨਪੈਕ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਇਹ Hive-xyz (ਜਿੱਥੇ xyz ਰਿਲੀਜ਼ ਨੰਬਰ ਹੈ) ਨਾਮਕ ਇੱਕ ਸਬਫੋਲਡਰ ਬਣਾਏਗਾ:
ਇਨਵਾਇਰਮੈਂਟ ਵੇਰੀਏਬਲ HIVE_HOME ਨੂੰ ਇੰਸਟਾਲੇਸ਼ਨ ਡਾਇਰੈਕਟਰੀ ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਨ ਲਈ ਸੈੱਟ ਕਰੋ:
ਅੰਤ ਵਿੱਚ, ਆਪਣੇ ਵਿੱਚ $HIVE_HOME/bin ਸ਼ਾਮਲ ਕਰੋ PATH
:
2. Hive ਚਲਾਉਣਾ
Hive Hadoop ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ, ਇਸ ਲਈ:
- ਤੁਹਾਡੇ ਮਾਰਗ ਵਿੱਚ ਹਾਡੂਪ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜਾਂ
3. DLL ਓਪਰੇਸ਼ਨ
Hive ਟੇਬਲ ਬਣਾਉਣਾ
ਦੋ ਕਾਲਮਾਂ ਦੇ ਨਾਲ ਪੋਕਸ ਨਾਮਕ ਇੱਕ ਟੇਬਲ ਤਿਆਰ ਕਰਦਾ ਹੈ, ਜਿਸ ਵਿੱਚੋਂ ਪਹਿਲਾ ਇੱਕ ਪੂਰਨ ਅੰਕ ਹੈ ਅਤੇ ਦੂਜਾ ਇੱਕ ਸਤਰ ਹੈ।
ਟੇਬਲ ਦੁਆਰਾ ਬ੍ਰਾਊਜ਼ਿੰਗ
ਸਾਰੀਆਂ ਸਾਰਣੀਆਂ ਨੂੰ ਸੂਚੀਬੱਧ ਕਰਨਾ
ਟੇਬਲਾਂ ਨੂੰ ਬਦਲਣਾ ਅਤੇ ਛੱਡਣਾ
ਸਾਰਣੀ ਦੇ ਨਾਮ ਬਦਲੇ ਜਾ ਸਕਦੇ ਹਨ ਅਤੇ ਕਾਲਮਾਂ ਨੂੰ ਜੋੜਿਆ ਜਾਂ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ:
ਇਹ ਧਿਆਨ ਦੇਣ ਯੋਗ ਹੈ ਕਿ REPLACE COLUMNS ਸਾਰੇ ਮੌਜੂਦਾ ਕਾਲਮਾਂ ਨੂੰ ਬਦਲਦਾ ਹੈ ਜਦੋਂ ਕਿ ਸਿਰਫ ਸਾਰਣੀ ਦੇ ਢਾਂਚੇ ਨੂੰ ਬਦਲਦਾ ਹੈ ਨਾ ਕਿ ਡੇਟਾ ਨੂੰ। ਸਾਰਣੀ ਵਿੱਚ ਇੱਕ ਮੂਲ SerDe ਵਰਤਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। REPLACE COLUMNS ਦੀ ਵਰਤੋਂ ਸਾਰਣੀ ਦੀ ਸਕੀਮਾ ਤੋਂ ਕਾਲਮਾਂ ਨੂੰ ਹਟਾਉਣ ਲਈ ਵੀ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ:
ਡ੍ਰੌਪਿੰਗ ਟੇਬਲ
Apache Hive ਵਿੱਚ ਬਹੁਤ ਸਾਰੇ ਵਾਧੂ ਓਪਰੇਸ਼ਨ ਅਤੇ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਹਨ ਜਿਨ੍ਹਾਂ ਬਾਰੇ ਤੁਸੀਂ ਅਧਿਕਾਰਤ ਵੈੱਬਸਾਈਟ 'ਤੇ ਜਾ ਕੇ ਸਿੱਖ ਸਕਦੇ ਹੋ।
ਸਿੱਟਾ
Hive ਪਰਿਭਾਸ਼ਾ, Apache Hadoop ਦੇ ਸਿਖਰ 'ਤੇ ਬਣੇ ਵਿਸ਼ਾਲ ਡੇਟਾਸੇਟਾਂ ਲਈ ਪੁੱਛਗਿੱਛ ਅਤੇ ਵਿਸ਼ਲੇਸ਼ਣ ਲਈ ਇੱਕ ਡੇਟਾ ਪ੍ਰੋਗਰਾਮ ਇੰਟਰਫੇਸ ਹੈ। ਪੇਸ਼ੇਵਰ ਇਸ ਨੂੰ ਹੋਰ ਪ੍ਰੋਗਰਾਮਾਂ, ਟੂਲਸ ਅਤੇ ਸੌਫਟਵੇਅਰ ਨਾਲੋਂ ਚੁਣਦੇ ਹਨ ਕਿਉਂਕਿ ਇਹ ਮੁੱਖ ਤੌਰ 'ਤੇ Hive ਦੇ ਵਿਆਪਕ ਡੇਟਾ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਵਰਤਣ ਲਈ ਸਧਾਰਨ ਹੈ।
ਉਮੀਦ ਹੈ ਕਿ ਇਹ ਟਿਊਟੋਰਿਅਲ ਤੁਹਾਨੂੰ ਅਪਾਚੇ ਹਾਈਵ ਨਾਲ ਕਿੱਕਸਟਾਰਟ ਕਰਨ ਅਤੇ ਤੁਹਾਡੇ ਵਰਕਫਲੋ ਨੂੰ ਹੋਰ ਕੁਸ਼ਲ ਬਣਾਉਣ ਵਿੱਚ ਮਦਦ ਕਰੇਗਾ। ਸਾਨੂੰ ਟਿੱਪਣੀਆਂ ਵਿੱਚ ਦੱਸੋ.
ਕੋਈ ਜਵਾਬ ਛੱਡਣਾ