Looking for apache-pig Answers? Try Ask4KnowledgeBase
Looking for apache-pig Keywords? Try Ask4Keywords

apache-pigअपाचे-सुअर के साथ शुरू हो रहा है


टिप्पणियों

यह खंड अपाचे-सुअर क्या है का एक सिंहावलोकन प्रदान करता है, और क्यों एक डेवलपर इसका उपयोग करना चाह सकता है।

यह अपाचे-सुअर के भीतर किसी भी बड़े विषयों का उल्लेख करना चाहिए, और संबंधित विषयों के लिए लिंक करना चाहिए। चूंकि अपाचे-सुअर के लिए दस्तावेज़ीकरण नया है, इसलिए आपको उन संबंधित विषयों के प्रारंभिक संस्करण बनाने की आवश्यकता हो सकती है।

स्थापना या सेटअप

लिनक्स

आवश्यकताएँ (r0.16.0)

अनिवार्य

वर्तमान Apache-Pig प्रलेखन के अनुसार यह केवल Unix और Windows ऑपरेटिंग सिस्टम का समर्थन करता है।

  • Hadoop 0.23.X, 1.X या 2.X
  • जावा 1.6 या बाद के संस्करण स्थापित किए गए और जावा इंस्टॉलेशन निर्देशिका में JAVA_HOME पर्यावरण चर सेट किया गया

ऐच्छिक

  • पायथन 2.7 या अधिक (पायथन यूडीएफ)
  • चींटी 1.8 (बिल्ड के लिए)

नवीनतम सुअर रिलीज़ डाउनलोड करें

Http://pig.apache.org/releases.html#Download से सुअर का नवीनतम संस्करण डाउनलोड करें

स्थापना

mkdir Pig
cd Downloads/ 
tar zxvf pig-(latest-version).tar.gz 
tar zxvf pig-(latest-version).tar.gz 
mv pig-(latest-version).tar.gz/* /home/Pig/
 

विन्यास

Apache Pig को स्थापित करने के बाद, हमें इसे कॉन्फ़िगर करना होगा।

.Bashrc फ़ाइल खोलें

vim ~/.bashrc
 

.Bashrc फ़ाइल में, निम्न चर सेट करें -

export PIG_HOME = /home/Pig
export PATH  = PATH:/home/Pig/bin
 

फ़ाइल को सहेजें और फिर से उपयोग करके पर्यावरण में bashrc पुनः लोड करें

. ~/.bashrc
 

सुअर संस्करण का सत्यापन

pig –version 
 

यदि इंस्टॉलेशन सफल होता है, तो उपरोक्त कमांड इंस्टॉल किए गए पिग वर्जन नंबर को प्रदर्शित करता है।

सुअर स्थापना का परीक्षण

pig -h
 

यह सुअर से जुड़े सभी संभावित आदेशों को प्रदर्शित करना चाहिए

आपका सुअर अब स्थानीय रूप से स्थापित है और आप इसे स्थानीय पैरामीटर का उपयोग करके चला सकते हैं

pig -x local
 

Hadoop से जुड़ना

यदि Hadoop1.x या 2.x को क्लस्टर पर स्थापित किया गया है और HADOOP_HOME पर्यावरण चर सेटअप है।

आप पहले की तरह .bashrc में लाइन जोड़कर सुअर को Hadoop से जोड़ सकते हैं

export PIG_CLASSPATH = $HADOOP_HOME/conf
 

सुअर चलाना

निष्पादन मोड

आप pig (बिन / सुअर) कमांड का उपयोग करके या jar फ़ाइल (जावा -cp pig.jar) चलाकर सुअर को चला सकते हैं

PIG लिपियों को 3 अलग-अलग तरीकों से निष्पादित किया जा सकता है:

  • स्थानीय प्रणाली

     pig -x local ...
     
  • Mapreduce मोड (डिफ़ॉल्ट मोड)

     pig -x mapreduce ...
          (or)
     pig ...
     
  • Tez स्थानीय मोड

     pig -x tez ...
     

इंटरएक्टिव मोड

सुअर को Grunt शेल का उपयोग करके इंटरैक्टिव मोड में चलाया जा सकता है। इस गोले में सुअर के लैटिन वक्तव्यों और आदेशों को अंतःक्रियात्मक रूप से दर्ज किया जा सकता है।

उदाहरण

$ pig -x <mode> <enter>
grunt>
 

Mode पिछले अनुभाग में बताए अनुसार निष्पादन मोड में से एक हो सकता है।

बैच मोड

सुअर को बैच मोड में भी निष्पादित किया जा सकता है। यहाँ एक .pig फ़ाइल जिसमें सुअर के बयान और आदेशों की सूची दी गई है।

उदाहरण

$ pig -x <mode> <script.pig>
grunt>
 

इसी प्रकार Mode पिछले अनुभाग में बताए अनुसार निष्पादन मोड में से एक हो सकता है।

सुअर क्या है?

सुअर Hadoop पर समानांतर में डेटा प्रवाह को निष्पादित करने के लिए एक इंजन प्रदान करता है। इन आंकड़ों के प्रवाह को व्यक्त करने के लिए इसमें एक भाषा, पिग लैटिन शामिल है। पिग लैटिन में कई पारंपरिक डेटा ऑपरेशंस (ज्वाइन, सॉर्ट, फिल्टर इत्यादि) के लिए ऑपरेटर शामिल हैं, साथ ही उपयोगकर्ताओं के लिए डेटा को पढ़ने, प्रसंस्करण और लेखन के लिए अपने स्वयं के कार्यों को विकसित करने की क्षमता भी शामिल है। सुअर एक अपाचे ओपन सोर्स प्रोजेक्ट है। इसका मतलब है कि उपयोगकर्ता इसे स्रोत या बाइनरी के रूप में डाउनलोड करने के लिए स्वतंत्र हैं, इसका उपयोग स्वयं के लिए करते हैं, इसमें योगदान करते हैं, और अपाचे लाइसेंस की शर्तों के तहत-अपने उत्पादों में इसका उपयोग करते हैं और इसे फिट होने पर इसे बदलते हैं।

सुअर में शब्द गणना उदाहरण

इनपुट फ़ाइल

Mary had a little lamb
its fleece was white as snow
and everywhere that Mary went
the lamb was sure to go.
 

सुअर शब्द गणना कोड

-- Load input from the file named Mary, and call the single
-- field in the record 'line'.
input = load 'mary' as (line);

-- TOKENIZE splits the line into a field for each word.
-- flatten will take the collection of records returned by
-- TOKENIZE and produce a separate record for each one, calling the single
-- field in the record word.
words = foreach input generate flatten(TOKENIZE(line)) as word;

-- Now group them together by each word.
grpd = group words by word;

-- Count them.
cntd = foreach grpd generate group, COUNT(words);

-- Print out the results.
dump cntd;
 

उत्पादन

Mary,2
had,1
a,1
little,1
lamb,2
its,1
fleece,1
was,2
white,1
as,1
snow,1
and,1
everywhere,1
that,1
went,1
the,1
sure,1
to,1
go,1