ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้
  1. วิธีการที่ลูกค้าสามารถตรวจสอบ MR ของงานใน ' http: //xxxxxxx:50030/ ?'   คุณสามารถตรวจสอบงาน mapreduce สองวิธี:

  • ผ่านทาง Hadoop jobtracker URL - ' http:// < jobTrackerhost >: 50030 /' และการดูรายละเอียดแนวลึกลงในรายละเอียดของงาน

  • วิธีจะดูแฟ้มผลลัพธ์งานสร้างขึ้น โดย Revolution R ในการรันงาน mapreduce ของคุณ โดยค่าเริ่มต้น เหล่านี้แสดงผลแฟ้มกำลังถูกลบหลังจากรันงาน แต่คุณสามารถตั้งค่าตัวเลือก 'autoCleanup = FALSE' เมื่อคุณสร้างบริบทคำนวณ Hadoop ใช้ RxHadoopMR() คุณยังสามารถใช้คำสั่ง RevoScaleR 'rxGetJobOutput'เพื่อแสดงรายการผลลัพธ์ hadoop จากการเรียกใช้งานได้



2. ฉันสามารถควบคุมจำนวนของแมปเปอร์ และลดงานในการเรียกใช้รหัสของฉันโดยใช้ RxHadoopMR()

เมื่อเร็ว ๆ นี้ เราเพิ่มพารามิเตอร์เลือกได้กับ RxHadoopMR() ที่เรียกว่าhadoopSwitches อาร์กิวเมนต์นี้ช่วยให้คุณสามารถระบุสวิตช์บรรทัดคำสั่งของ Hadoop ที่ใด ๆ ทั่วไป ตัวอย่างเช่น เพื่อระบุคิวเพื่อรันงานบน คุณสามารถทำเช่นนี้:

hadoopSwitches = "-Dmapred.job.queue.name=default "

สามารถตั้งหลายสวิตช์ ด้วยการแยกเหล่านั้นด้วยอักขระช่องว่าง เช่นเดียวกับหนึ่งทำในบรรทัดคำสั่ง

การควบคุมหมายเลขของ mappers ใน MapReduce จะยากปานกลาง กฎพื้นฐานไม่ว่า จำนวนของแผนผังงานเท่ากับจำนวนของอินพุตการแยก เมื่อแฟ้มนำเข้าของคุณ "ที่ไม่ใช่-splittable" ตัวอย่างเช่นบางชนิดของแฟ้มที่บีบอัด แยกสำหรับการป้อนค่าจำนวนเท่ากับจำนวนของแฟ้มนำเข้า แต่ละแฟ้มภายในชุดคอมโพสิต XDF splittable ที่ไม่ได้ คง ถ้าแฟ้มของคุณเป็น splittable ตัวอย่างเช่น เป็นแฟ้ม CSV จาก นั้น FileInputFormat จะแยกแฟ้มนั้นออกเป็นกลุ่มใกล้เคียงกับ HDFS บล็อกขนาด โดยปกติ 128 เมกะไบต์ ถ้าคุณมีแฟ้ม CSV มีขนาดใหญ่มากหรือแฟ้ม (ตัวอย่างเช่น 10 TB) และต้องไม่เกินไปหลายแผนผังงาน คุณสามารถตั้งค่า mapred.min.split.size เป็นตัวเลขขนาดใหญ่ การแยกการป้อนข้อมูลมีขนาดใหญ่และแผนผังงานที่น้อยลง ซึ่งสามารถตั้งค่าอาร์กิวเมนต์ hadoopSwitches ใช้ Downside ของเทคนิคนี้คือ คุณจะ sacrifice ภายในข้อมูล แบ่งส่วนภายในข้อมูลและต้องมีขนาดใหญ่ คุณจำเป็นต้องเพิ่มขนาดบล็อก HDFS ไม่มีรายละเอียดเพิ่มเติมเล็กน้อยเพจนี้: http://wiki.apache.org/hadoop/HowManyMapsAndReduces

สำหรับงาน HPC (เช่น rxExec()), คุณสามารถตั้งค่าจำนวนงานแผนผังที่ใช้ timesToRun () rxExec และ taskChunkSize อาร์กิวเมนต์โดยตรง จำนวนของแผนผังงานจะจะเท่ากับ:

timesToRun / taskChunkSize

 

        3. จึงสามารถโทร/สร้างตัวแมปแบบกำหนดเอง / Reducer ฟังก์ชันใน RevoScaleR หรือไม่

ตนเป็นตัวอย่างวิธีการทำเช่นนี้:

  • ใช้ 'rxExec()': อนุญาตให้คุณแจกจ่าย และการเรียกใช้โค้ดใด ๆ R กำหนดพร้อมกัน - นี้จะสมมติว่า คุณสร้างบริบทคำนวณ Hadoop ที่ใช้ 'RxHadoopMR()'

  • ถ้าคุณมี RxHadoopMR() คำนวณบริบทที่กำหนดไว้แล้ว คุณสามารถใช้ฟังก์ชัน rxDataStep() เพื่อเรียกใช้ฟังก์ชัน 'Reducer'
    ข้อมูลของคุณใน HDFS - rxDataStep() ช่วยให้คุณสามารถยัง เรียกฟังก์ชัน R การกำหนด โดยใช้อาร์กิวเมนต์ 'transformFunc'

  • ใช้แพคเกจ 'rmr' ซึ่งเป็นส่วนหนึ่งของ RHadoop



4. สำหรับการเข้าถึง 'การโหลด ไฮฟ์/HBase' คุณมีแพคเกจเฉพาะใด ๆ หรือไม่ต้องการใช้แพคเกจ 'RHBase' ได้อย่างไร

RevoScaleR ไม่ประกอบด้วยฟังก์ชันการทำงานเฉพาะใด ๆ สำหรับการโหลด ไฮฟ์/HBase - คุณสามารถใช้แพคเกจ RHBase เพื่อสนับสนุนฟังก์ชัน R อื่น ๆ ที่มีอยู่ใน RevoScaleR  ถ้าคุณมีโปรแกรมควบคุม ODBC ที่ติดตั้งสำหรับ HBase คุณสามารถใช้ฟังก์ชัน RxOdbcData() เพื่อนำเข้าข้อมูล และเรียกใช้แบบสอบถาม SQL กับข้อมูลที่จัดเก็บอยู่ใน HBase พิจารณาสถานการณ์ RevoScaleR ODBC ข้อมูลนำเข้า/ส่งออกจากรายการแนะนำสำหรับข้อมูลเฉพาะเกี่ยวกับวิธีการนำเข้าข้อมูลผ่านทาง ODBC:

http://packages.revolutionanalytics.com/doc/7.1.0/linux/RevoScaleR_ODBC.pdf

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Microsoft Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

คุณพึงพอใจกับคุณภาพภาษาเพียงใด
สิ่งที่ส่งผลต่อประสบการณ์ใช้งานของคุณ

ขอบคุณสำหรับคำติชมของคุณ!

×