Perintah Hive Teratas dengan Contoh dalam HQL



Blog ini membincangkan Hive Commands dengan contoh dalam HQL. BUAT, DROP, TRUNCATE, ALTER, SHOW, DESCRIBE, USE, LOAD, INSERT, JOIN dan banyak lagi Perintah Hive

Dalam catatan blog ini, mari kita bincangkan perintah Hive teratas dengan contoh. Perintah Hive ini sangat penting untuk menetapkan asas untuk .

Panduan Kerjaya Teknologi Edureka 2019 sudah habis! Peranan pekerjaan terpanas, jalan pembelajaran yang tepat, pandangan industri & banyak lagi dalam panduan ini. Muat turun sekarang.

Apa itu Hive?

Apache Hive adalah sistem gudang Data yang dibina untuk berfungsi pada Hadoop. Ini digunakan untuk membuat kueri dan mengelola set data besar yang berada di penyimpanan tersebar. Sebelum menjadi projek sumber terbuka Apache Hadoop, Hive berasal dari Facebook. Ini menyediakan mekanisme untuk memproyeksikan struktur ke data di Hadoop dan untuk menanyakan data tersebut menggunakan bahasa seperti SQL yang disebut HiveQL (HQL).





Hive digunakan kerana jadual di Hive serupa dengan jadual dalam pangkalan data hubungan. Sekiranya anda biasa dengan SQL, ini adalah cakewalk. Ramai pengguna boleh meminta data secara serentak menggunakan Hive-QL.

Apa itu HQL?

Hive mendefinisikan bahasa pertanyaan seperti SQL yang mudah untuk membuat pertanyaan dan menguruskan set data besar yang disebut Hive-QL (HQL). Mudah digunakan jika anda sudah biasa dengan Bahasa SQL. Hive membolehkan pengaturcara yang biasa dengan bahasa untuk menulis kerangka MapReduce khusus untuk melakukan analisis yang lebih canggih.



Kegunaan Sarang:

1. Storan diedarkan Apache Hive.

2. Hive menyediakan alat untuk membolehkan ekstrak / transform / muat data yang mudah (ETL)

3. Ia memberikan struktur pada pelbagai format data.



4. Dengan menggunakan Hive, kita dapat mengakses file yang disimpan di Hadoop Distused File System (HDFS digunakan untuk membuat pertanyaan dan menguruskan set data besar yang berada) atau dalam sistem penyimpanan data lain seperti Apache HBase.

Batasan Sarang:

& bull Hive tidak dirancang untuk pemprosesan transaksi dalam talian (OLTP), ia hanya digunakan untuk Pemprosesan Analisis Dalam Talian.

& bull Hive menyokong menimpa atau menangkap data, tetapi bukan kemas kini dan penghapusan.

& bull Di Hive, sub pertanyaan tidak disokong.

Mengapa Hive digunakan walaupun Babi?

Berikut adalah sebab mengapa Hive digunakan walaupun terdapat ketersediaan Babi:

  • Hive-QL adalah garis bahasa deklaratif SQL, PigLatin adalah bahasa aliran data.
  • Babi: bahasa dan persekitaran aliran data untuk meneroka set data yang sangat besar.
  • Hive: gudang data yang diedarkan.

Komponen Hive:

Metastore:

Hive menyimpan skema jadual Hive di Hive Metastore. Metastore digunakan untuk menyimpan semua maklumat mengenai jadual dan partisi yang ada di gudang. Secara lalai, metastore dijalankan dalam proses yang sama dengan perkhidmatan Hive dan Metastore lalai adalah Pangkalan Data DerBy.

SerDe:

Serializer, Deserializer memberikan arahan untuk mengetahui bagaimana memproses rakaman.

Perintah Hive:

Bahasa Definisi Data (DDL)

perbezaan antara jquery dan javascript

Pernyataan DDL digunakan untuk membina dan mengubah jadual dan objek lain dalam pangkalan data.

Perintah DDL Fungsi
BUAT Ia digunakan untuk membuat jadual atau Pangkalan Data
TAMPILKAN Ia digunakan untuk menunjukkan Pangkalan Data, Jadual, Properties, dll
UMUR Ia digunakan untuk membuat perubahan pada jadual yang ada
KETERANGAN Ia menerangkan lajur jadual
TRUNCATE Digunakan untuk memotong dan menghapus baris jadual secara kekal
HAPUS Memadamkan data jadual, tetapi, dapat dipulihkan

Pergi ke shell Hive dengan memberikan perintah sudo hive dan masukkan perintah ‘Buat pangkalan data nama> ’ untuk membuat pangkalan data baru di Hive.

Buat pangkalan data Hive menggunakan Hive Commands

Untuk menyenaraikan pangkalan data di gudang Hive, masukkan arahan ' tunjukkan pangkalan data ’.

Pangkalan data dibuat di lokasi lalai gudang Hive. Di Cloudera, pangkalan data Hive menyimpan di / pengguna / sarang / gudang.

Perintah untuk menggunakan pangkalan data adalah GUNAKAN

Salin data input ke HDFS dari tempatan dengan menggunakan salinan dari perintah Local.

Apabila kita membuat jadual di sarang, ia akan dibuat di lokasi lalai gudang sarang. - '/ pengguna / sarang / gudang', setelah pembuatan tabel kita dapat memindahkan data dari HDFS ke tabel sarang.

Perintah berikut membuat jadual dengan di lokasi '/user/hive/warehouse/retail.db'

Catatan : retail.db adalah pangkalan data yang dibuat di gudang Hive.

Huraikan memberikan maklumat mengenai skema jadual.

Bahasa Manipulasi Data (DML)

Penyataan DML digunakan untuk mengambil, menyimpan, mengubah, menghapus, memasukkan dan mengemas kini data dalam pangkalan data.

Contoh:

PINJAMAN, MASUKKAN.

Sintaks:

LOAD data masuk ke dalam jadual [nama tabl]

Operasi Load digunakan untuk memindahkan data ke dalam tabel Hive yang sesuai. Sekiranya kata kunci tempatan ditentukan, maka dalam perintah beban akan memberikan jalan sistem fail tempatan. Sekiranya kata kunci tempatan tidak ditentukan, kita harus menggunakan jalur HDFS fail.

Berikut adalah beberapa contoh untuk arahan LOAD data LOCAL

Setelah memuatkan data ke dalam tabel Hive kita dapat menerapkan Pernyataan Manipulasi Data atau fungsi agregat mengambil data.

Contoh untuk mengira bilangan rekod:

Fungsi kiraan agregat digunakan menghitung jumlah keseluruhan catatan dalam jadual.

Jadual 'buat luaran':

The buat luaran kata kunci digunakan untuk membuat jadual dan menyediakan lokasi di mana jadual akan dibuat, sehingga Hive tidak menggunakan lokasi lalai untuk jadual ini. Seorang LUARAN jadual menunjukkan ke mana-mana lokasi HDFS untuk simpanannya, dan bukannya penyimpanan lalai.

Masukkan Perintah:

The masukkan arahan digunakan untuk memuatkan jadual data Hive. Sisipan boleh dilakukan ke meja atau partition.

& bull INSERT OVERWRITE digunakan untuk menimpa data yang ada dalam jadual atau partisi.

& bull INSERT INTO digunakan untuk menambahkan data ke dalam data yang ada dalam jadual. (Nota: Sintaks INSERT INTO berfungsi dari versi 0.8)

Contoh untuk Perintah ‘Partitioned By’ dan ‘Clustered By’:

‘Dipartisi oleh ‘Digunakan untuk membahagi jadual menjadi Partition dan boleh dibahagikan kepada baldi dengan menggunakan‘ Dikumpulkan Oleh Perintah.

Apabila kami memasukkan data kesalahan hive Hive, mod partition dinamik adalah ketat dan partition dinamik tidak diaktifkan (oleh Jeff di laman web dresshead ). Oleh itu, kita perlu menetapkan parameter berikut dalam shell Hive.

tetapkan hive.exec.dynamic.partition = true

Untuk mengaktifkan partisi dinamik, secara lalai, itu salah

tetapkan hive.exec.dynamic.partition.mode = tidak ketat

Partisi dilakukan mengikut kategori dan boleh dibahagikan kepada baldi dengan menggunakan perintah ‘Clustered By’.

Pernyataan ‘Drop Table’ akan menghapus data dan metadata untuk jadual. Sekiranya jadual luaran, hanya metadata yang dihapuskan.

Pernyataan ‘Drop Table’ akan menghapus data dan metadata untuk jadual. Sekiranya jadual luaran, hanya metadata yang dihapuskan.

Muatkan data inpath tempatan 'aru.txt' ke dalam nama tab tabel dan kemudian kita periksa jadual karyawan1 dengan menggunakan Pilih * dari perintah nama jadual

Untuk mengira jumlah rekod dalam jadual dengan menggunakan Pilih hitung (*) dari txnrecords

Pengumpulan:

Pilih kiraan (kategori DISTINCT) dari nama tab

Perintah ini akan mengira kategori jadual 'cate' yang berbeza. Di sini terdapat 3 kategori berbeza.

Katakan ada cate table lain di mana f1 adalah nama bidang kategori.

Pengumpulan:

Perintah kumpulan digunakan untuk mengelompokkan hasil yang ditetapkan oleh satu atau lebih lajur.

Pilih kategori, jumlah (jumlah) dari kumpulan rekod txt mengikut kategori

Ia mengira jumlah kategori yang sama.

Hasilnya satu jadual disimpan ke dalam jadual yang lain.

Buat jadual nama baru seperti pilih * dari nama lama

Sertailah Perintah:

Di sini satu lagi jadual dibuat dengan nama ‘Mel’

Sertailah Operasi :

Operasi gabung dilakukan untuk menggabungkan medan dari dua jadual dengan menggunakan nilai yang sama bagi masing-masing.

Kiri Sambungan Luar :

Hasil gabungan sebelah kiri (atau gabungan kiri) untuk jadual A dan B selalu mengandungi semua rekod jadual 'kiri' (A), walaupun keadaan gabungan tidak menemui catatan yang sepadan dalam jadual 'kanan' (B).

Kanan Luar Bergabung :

Gabungan luar kanan (atau gabung kanan) menyerupai gabungan luar kiri, kecuali perlakuan jadual terbalik. Setiap baris dari meja 'kanan' (B) akan muncul di meja bergabung sekurang-kurangnya sekali.

Penyertaan Penuh :

Jadual bergabung akan mengandungi semua rekod dari kedua-dua jadual, dan mengisi NULL untuk perlawanan yang hilang di kedua-dua belah pihak.

Setelah selesai dengan sarang kita dapat menggunakan perintah berhenti untuk keluar dari kulit sarang.

Keluar dari Hive

menguraikan rentetan hingga ke java

Hive hanyalah sebahagian dari teka-teki besar yang disebut Big Data dan Hadoop. Hadoop lebih daripada sekadar Hive. Klik di bawah untuk melihat kemahiran lain yang harus anda kuasai dalam Hadoop.

Ada soalan untuk kami? Sila sebutkan di bahagian komen dan kami akan menghubungi anda.

Catatan berkaitan:

7 Cara Latihan Data Besar Boleh Mengubah Organisasi Anda

Model Data Hive