全部产品
Search
文档中心

E-MapReduce:FAQ

更新时间:Jun 24, 2025

Topik ini menjawab beberapa pertanyaan umum tentang Hive.

null

Apa yang harus saya lakukan jika pekerjaan berada dalam keadaan menunggu untuk waktu yang lama?

Ikuti langkah-langkah berikut untuk mengidentifikasi masalah:
  1. Buka tab Access Links and Ports di konsol E-MapReduce (EMR) dan klik tautan di kolom Access URL yang sesuai dengan YARN UI.
  2. Klik ID aplikasi.
  3. Klik tautan di sebelah Tracking URL.
    Banyak pekerjaan berada dalam keadaan menunggu.Tracking URL
  4. Di panel navigasi di sebelah kiri, klik Scheduler.
    Anda dapat memeriksa apakah sumber daya di antrian sepenuhnya digunakan atau apakah pekerjaan saat ini menghabiskan banyak waktu. Jika antrian tidak memiliki sumber daya yang cukup, Anda dapat memindahkan pekerjaan yang sedang menunggu dari antrian saat ini ke antrian yang idle. Jika pekerjaan saat ini menghabiskan banyak waktu, optimalkan kode.Scheduler

Apa yang harus saya lakukan jika file kecil dibaca di tahap map?

Ikuti langkah-langkah berikut untuk mengidentifikasi masalah:
  1. Buka tab Access Links and Ports di konsol EMR dan klik tautan di kolom Access URL yang sesuai dengan YARN UI.
  2. Klik ID aplikasi.
    Anda dapat melihat ukuran data yang dibaca di setiap tugas map pada halaman Map tasks. Ukuran data yang dibaca adalah dua byte, seperti yang ditunjukkan pada gambar berikut. Jika ukuran data dalam file yang dibaca di sebagian besar tugas map kecil, gabungkan file kecil tersebut.Map

    Anda juga dapat melihat lebih banyak informasi di log setiap tugas map.

Apa yang harus saya lakukan jika tugas reduce menghabiskan banyak waktu?

Ikuti langkah-langkah berikut untuk mengidentifikasi masalah:
  1. Buka tab Access Links and Ports di konsol EMR dan klik tautan di kolom Access URL yang sesuai dengan YARN UI.
  2. Klik ID aplikasi.
  3. Di halaman Reduce tasks, urutkan tugas reduce berdasarkan waktu penyelesaian secara menurun dan kemudian temukan tugas reduce teratas yang paling lama dieksekusi.Reduce Task
  4. Klik nama tugas reduce teratas.
  5. Di panel navigasi di sebelah kiri halaman detail tugas, klik Counters.Counters
    Lihat nilai metrik Reduce input records dan Reduce shuffle bytes dalam tugas reduce saat ini. Jika nilai kedua metrik tersebut lebih besar daripada nilai kedua metrik tersebut di tugas lain, terjadi bias data.Reduce Input bytes

Bagaimana cara memperkirakan jumlah maksimum pekerjaan Hive yang dapat dijalankan secara bersamaan?

Jumlah maksimum pekerjaan Hive yang dapat dijalankan secara bersamaan bergantung pada ukuran memori HiveServer2 dan jumlah node master. Anda dapat menggunakan rumus berikut untuk memperkirakan konkurensi maksimum:
max_num = master_num × max(5, hive_server2_heapsize/512)
Parameter dalam rumus:
  • master_num: jumlah node master dalam kluster.
  • hive_server2_heapsize: ukuran memori HiveServer2, yang ditentukan dalam file konfigurasi hive-env.sh. Ukuran defaultnya adalah 512 MB.

Contoh: Jika sebuah kluster memiliki tiga node master dan ukuran memori HiveServer2 adalah 4 GB, konkurensi maksimum adalah 24. Dalam hal ini, hingga 24 pekerjaan Hive dapat dijalankan secara bersamaan.

Mengapa tabel eksternal yang dibuat di Hive tidak berisi data?

  • Deskripsi masalah: Setelah tabel eksternal dibuat, tabel tersebut di-query tetapi tidak ada data yang dikembalikan.
    Pernyataan contoh yang digunakan untuk membuat tabel eksternal:
    CREATE EXTERNAL TABLE storage_log(content STRING) PARTITIONED BY (ds STRING)
        ROW FORMAT DELIMITED
        FIELDS TERMINATED BY '\t'
        STORED AS TEXTFILE
        LOCATION 'oss://log-12453****/your-logs/airtake/pro/storage';
    Perintah yang digunakan untuk query data:
    select * from storage_log;
  • Penyebab: Hive tidak secara otomatis mengasosiasikan direktori Partitions.
  • Solusi:
    1. Tentukan secara manual direktori Partitions:
      alter table storage_log add partition(ds=123);
    2. Query data.
      select * from storage_log;
      Data berikut dikembalikan:
           OK
          abcd    123
          efgh    123