Apache Pig - ตัวดำเนินการวินิจฉัย

loadคำสั่งจะโหลดข้อมูลลงในความสัมพันธ์ที่ระบุใน Apache Pig เพื่อตรวจสอบการดำเนินการของไฟล์Load คุณต้องใช้ไฟล์ Diagnostic Operators. Pig Latin มีตัวดำเนินการวินิจฉัยสี่ประเภทที่แตกต่างกัน -

  • ผู้ดำเนินการถ่ายโอนข้อมูล
  • อธิบายตัวดำเนินการ
  • ตัวดำเนินการคำอธิบาย
  • ตัวดำเนินการภาพประกอบ

ในบทนี้เราจะพูดถึงตัวดำเนินการถ่ายโอนข้อมูลของ Pig Latin

Dump Operator

Dumpตัวดำเนินการใช้เพื่อเรียกใช้คำสั่ง Pig Latin และแสดงผลลัพธ์บนหน้าจอ โดยทั่วไปจะใช้สำหรับการดีบัก Purpose

ไวยากรณ์

ด้านล่างนี้เป็นไวยากรณ์ของไฟล์ Dump ตัวดำเนินการ

grunt> Dump Relation_Name

ตัวอย่าง

สมมติว่าเรามีไฟล์ student_data.txt ใน HDFS ที่มีเนื้อหาต่อไปนี้

001,Rajiv,Reddy,9848022337,Hyderabad
002,siddarth,Battacharya,9848022338,Kolkata
003,Rajesh,Khanna,9848022339,Delhi
004,Preethi,Agarwal,9848022330,Pune
005,Trupthi,Mohanthy,9848022336,Bhuwaneshwar
006,Archana,Mishra,9848022335,Chennai.

และเราได้อ่านมันเป็นความสัมพันธ์ student โดยใช้ตัวดำเนินการ LOAD ดังที่แสดงด้านล่าง

grunt> student = LOAD 'hdfs://localhost:9000/pig_data/student_data.txt' 
   USING PigStorage(',')
   as ( id:int, firstname:chararray, lastname:chararray, phone:chararray, 
   city:chararray );

ตอนนี้ให้เราพิมพ์เนื้อหาของความสัมพันธ์โดยใช้ Dump operator ดังแสดงด้านล่าง

grunt> Dump student

เมื่อคุณดำเนินการข้างต้น Pig Latinมันจะเริ่มงาน MapReduce เพื่ออ่านข้อมูลจาก HDFS มันจะสร้างผลลัพธ์ต่อไปนี้

2015-10-01 15:05:27,642 [main]
INFO  org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - 
100% complete
2015-10-01 15:05:27,652 [main]
INFO  org.apache.pig.tools.pigstats.mapreduce.SimplePigStats - Script Statistics:   
HadoopVersion  PigVersion  UserId    StartedAt             FinishedAt       Features             
2.6.0          0.15.0      Hadoop  2015-10-01 15:03:11  2015-10-01 05:27     UNKNOWN
                                                
Success!  
Job Stats (time in seconds):
  
JobId           job_14459_0004
Maps                 1  
Reduces              0  
MaxMapTime          n/a    
MinMapTime          n/a
AvgMapTime          n/a 
MedianMapTime       n/a
MaxReduceTime        0
MinReduceTime        0  
AvgReduceTime        0
MedianReducetime     0
Alias             student 
Feature           MAP_ONLY        
Outputs           hdfs://localhost:9000/tmp/temp580182027/tmp757878456,

Input(s): Successfully read 0 records from: "hdfs://localhost:9000/pig_data/
student_data.txt"
  
Output(s): Successfully stored 0 records in: "hdfs://localhost:9000/tmp/temp580182027/
tmp757878456"  

Counters: Total records written : 0 Total bytes written : 0 Spillable Memory Manager 
spill count : 0Total bags proactively spilled: 0 Total records proactively spilled: 0  

Job DAG: job_1443519499159_0004
  
2015-10-01 15:06:28,403 [main]
INFO  org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLau ncher - Success!
2015-10-01 15:06:28,441 [main] INFO  org.apache.pig.data.SchemaTupleBackend - 
Key [pig.schematuple] was not set... will not generate code.
2015-10-01 15:06:28,485 [main]
INFO  org.apache.hadoop.mapreduce.lib.input.FileInputFormat - Total input paths 
to process : 1
2015-10-01 15:06:28,485 [main]
INFO  org.apache.pig.backend.hadoop.executionengine.util.MapRedUtil - Total input paths
to process : 1

(1,Rajiv,Reddy,9848022337,Hyderabad) (2,siddarth,Battacharya,9848022338,Kolkata) (3,Rajesh,Khanna,9848022339,Delhi) (4,Preethi,Agarwal,9848022330,Pune) (5,Trupthi,Mohanthy,9848022336,Bhuwaneshwar) (6,Archana,Mishra,9848022335,Chennai)