Apa manfaat menggunakan Hadoop atau HBase atau Hive ?
Dari pemahaman saya, HBase menghindari penggunaan pengurangan peta dan memiliki penyimpanan berorientasi kolom di atas HDFS. Hive adalah antarmuka mirip sql untuk Hadoop dan HBase .
Saya juga ingin tahu bagaimana Hive dibandingkan dengan Babi .
hadoop
hbase
hive
apache-pig
Khalefa
sumber
sumber
Jawaban:
MapReduce hanyalah kerangka kerja komputasi . HBase tidak ada hubungannya dengan itu. Yang mengatakan, Anda dapat secara efisien menempatkan atau mengambil data ke / dari HBase dengan menulis pekerjaan MapReduce. Atau Anda dapat menulis program berurutan menggunakan API HBase lainnya, seperti Java, untuk meletakkan atau mengambil data. Tapi kami menggunakan Hadoop, HBase dll untuk menangani jumlah data yang sangat besar, sehingga tidak masuk akal. Menggunakan program berurutan normal akan sangat tidak efisien ketika data Anda terlalu besar.
Kembali ke bagian pertama dari pertanyaan Anda, Hadoop pada dasarnya adalah 2 hal: Sistem File Terdistribusi (HDFS) + kerangka kerja Komputasi atau Pemrosesan (MapReduce) . Seperti semua FS lainnya, HDFS juga menyediakan penyimpanan kepada kami, tetapi dengan cara yang toleran terhadap kesalahan dengan throughput yang tinggi dan risiko kehilangan data yang lebih rendah (karena replikasi). Namun, sebagai FS, HDFS tidak memiliki akses baca dan tulis acak . Di sinilah HBase muncul. Ini adalah penyimpanan data yang terdistribusi, terukur, dan besar , meniru Google BigTable. Ini menyimpan data sebagai pasangan kunci / nilai.
Datang ke Hive. Ini memberikan kami fasilitas penyimpanan data di atas cluster Hadoop yang ada. Bersamaan dengan itu ia menyediakan antarmuka seperti SQL yang membuat pekerjaan Anda lebih mudah, jika Anda berasal dari latar belakang SQL. Anda dapat membuat tabel di Sarang dan menyimpan data di sana. Bersamaan dengan itu Anda bahkan dapat memetakan tabel HBase yang ada ke Hive dan mengoperasikannya.
Sedangkan Pig pada dasarnya adalah bahasa aliran data yang memungkinkan kita untuk memproses data dalam jumlah sangat besar dengan sangat mudah dan cepat. Babi pada dasarnya memiliki 2 bagian: Penerjemah Babi dan bahasa, PigLatin . Anda menulis skrip Babi di PigLatin dan menggunakan interpreter Babi memprosesnya. Babi membuat hidup kita jauh lebih mudah, jika tidak, menulis MapReduce selalu tidak mudah. Bahkan dalam beberapa kasus justru bisa jadi menyebalkan.
Saya telah menulis artikel tentang perbandingan singkat berbagai alat ekosistem Hadoop beberapa waktu lalu. Ini bukan perbandingan mendalam, tetapi intro singkat untuk masing-masing alat yang dapat membantu Anda memulai. (Hanya untuk menambah jawaban saya. Promosi diri tidak dimaksudkan)
Kueri Hive dan Babi dikonversi menjadi pekerjaan MapReduce di bawah tenda.
HTH
sumber
yarn
ekosistem Hadoop :(.Saya mengimplementasikan platform Hive Data baru-baru ini di perusahaan saya dan dapat berbicara dengannya secara langsung karena saya adalah tim satu orang.
Objektif
Opsi Arsitektur
Saya membandingkan opsi berikut:
Rancangan
Ringkasan
HBase seperti Peta. Jika Anda tahu kuncinya, Anda bisa langsung mendapatkan nilainya. Tetapi jika Anda ingin tahu berapa banyak kunci integer di Hbase adalah antara 10.00000 dan 2000000 yang tidak cocok untuk Hbase saja.
Jika Anda memiliki data yang perlu dikumpulkan, digulung, dianalisis di seluruh baris, pertimbangkan Hive .
Semoga ini bisa membantu.
Sarang sebenarnya batu ... Saya tahu, saya telah hidup selama 12 bulan sekarang ... Begitu juga HBase ...
sumber
Hadoop adalah kerangka kerja yang memungkinkan pemrosesan terdistribusi set data besar di seluruh cluster komputer menggunakan model pemrograman sederhana.
Ada empat modul utama di Hadoop.
Hadoop Common : Utilitas umum yang mendukung modul Hadoop lainnya.
Sistem File Terdistribusi Hadoop ( HDFS ™ ): Sistem file terdistribusi yang menyediakan akses throughput tinggi ke data aplikasi.
Hadoop YARN : Kerangka kerja untuk penjadwalan pekerjaan dan manajemen sumber daya klaster.
Hadoop MapReduce : Sistem berbasis YARN untuk pemrosesan paralel set data besar.
Sebelum melangkah lebih jauh, Mari kita perhatikan bahwa kita memiliki tiga tipe data yang berbeda.
Terstruktur : Data terstruktur memiliki skema yang kuat dan skema akan diperiksa selama operasi tulis & baca. mis. Data dalam sistem RDBMS seperti Oracle, MySQL Server dll.
Tidak terstruktur : Data tidak memiliki struktur apa pun dan bisa berupa apa saja - Log server web, E-Mail, Gambar, dll.
Semi-terstruktur : Data tidak terstruktur secara ketat tetapi memiliki beberapa struktur. mis. file XML.
Tergantung pada jenis data yang akan diproses, kami harus memilih teknologi yang tepat.
Beberapa proyek lagi, yang merupakan bagian dari Hadoop:
HBase ™ : Basis data terukur dan terdistribusi yang mendukung penyimpanan data terstruktur untuk tabel besar.
Hive ™: Infrastruktur gudang data yang menyediakan summarization data dan permintaan khusus.
Pig ™ : Bahasa aliran data tingkat tinggi dan kerangka kerja eksekusi untuk komputasi paralel.
Perbandingan Hive Vs PIG dapat ditemukan di artikel ini dan postingan saya yang lain di pertanyaan SE ini .
HBASE tidak akan mengganti Pengurangan Peta. HBase adalah basis data terdistribusi scalable & Map Reduce adalah model pemrograman untuk pemrosesan data terdistribusi. Pengurangan Peta dapat bertindak berdasarkan data dalam HBASE dalam pemrosesan.
Anda dapat menggunakan HIVE / HBASE untuk data terstruktur / semi-terstruktur dan memprosesnya dengan Hadoop Map Reduce
Anda dapat menggunakan SQOOP untuk mengimpor data terstruktur dari database RDBMS tradisional Oracle, SQL Server dll dan memprosesnya dengan Hadoop Map Reduce
Anda dapat menggunakan FLUME untuk memproses data dan proses yang tidak terstruktur dengan Hadoop Map Reduce
Lihatlah: Hadoop Use Cases .
Hive harus digunakan untuk query analitik data yang dikumpulkan selama periode waktu tertentu. mis. Hitung tren, rangkum log situs web tetapi tidak dapat digunakan untuk kueri waktu-nyata.
HBase cocok untuk query Big Data waktu nyata. Facebook menggunakannya untuk olahpesan dan analitik waktu-nyata.
PIG dapat digunakan untuk membangun aliran data, menjalankan pekerjaan yang dijadwalkan, menyusun data dalam volume besar, mengumpulkan / merangkumnya dan menyimpannya ke dalam sistem basis data relasi. Bagus untuk analisis ad-hoc.
Hive dapat digunakan untuk analisis data ad-hoc tetapi tidak dapat mendukung semua format data yang tidak terstruktur seperti PIG.
sumber
Pertimbangkan bahwa Anda bekerja dengan RDBMS dan harus memilih apa yang akan digunakan - pemindaian tabel penuh, atau akses indeks - tetapi hanya salah satunya.
Jika Anda memilih pemindaian tabel penuh - gunakan sarang. Jika akses indeks - HBase.
sumber
Untuk Perbandingan Antara Hadoop Vs Cassandra / HBase baca posting ini .
Pada dasarnya HBase memungkinkan membaca dan menulis dengan sangat cepat dengan skalabilitas. Seberapa cepat dan terukur? Facebook menggunakannya untuk mengelola status penggunanya, foto, pesan obrolan dll. HBase sangat cepat kadang-kadang tumpukan telah dikembangkan oleh Facebook untuk menggunakan HBase sebagai penyimpan data untuk Hive sendiri.
Where As Hive lebih mirip solusi Data Warehousing. Anda dapat menggunakan sintaksis yang mirip dengan SQL untuk meminta konten Hive yang menghasilkan pekerjaan Mengurangi Peta. Tidak ideal untuk sistem transaksional yang cepat.
sumber
Saya bekerja pada pemrosesan arsitektur Lambda Waktu nyata dan beban Batch. Pemrosesan waktu nyata diperlukan ketika keputusan cepat harus diambil jika Fire alarm dikirim oleh sensor atau deteksi penipuan jika terjadi transaksi perbankan. Pemrosesan batch diperlukan untuk merangkum data yang dapat dimasukkan ke dalam sistem BI.
kami menggunakan teknologi ekosistem Hadoop untuk aplikasi di atas.
Pemrosesan Real Time
Apache Storm: Pemrosesan data stream, aplikasi aturan
HBase: Datastore untuk melayani dasbor Realtime
Batch Processing Hadoop: Mengumpulkan data dalam jumlah sangat besar. Ikhtisar 360 derajat atau menambahkan konteks ke acara. Antarmuka atau kerangka kerja seperti Babi, MR, Spark, Hive, Shark membantu dalam komputasi. Lapisan ini membutuhkan penjadwal yang Oozie adalah pilihan yang baik.
Lapisan Penanganan Acara
Apache Kafka adalah lapisan pertama yang mengkonsumsi peristiwa kecepatan tinggi dari sensor. Kafka melayani aliran data analitik Waktu Nyata dan Batch melalui konektor Linkedin.
sumber
Memahami secara mendalam
Hadoop
Hadoop
adalah proyek open source dariApache
yayasan. Ini adalah kerangka kerja yang ditulisJava
, awalnya dikembangkan oleh Doug Cutting pada tahun 2005. Ini dibuat untuk mendukung distribusi untukNutch
, mesin pencari teks.Hadoop
menggunakan GoogleMap Reduce
dan Teknologi Sistem File Google sebagai fondasinya.Fitur Hadoop
Hadoop
untuk throughput tinggi daripada latensi rendah. Ini adalah operasi batch yang menangani sejumlah besar data; oleh karena itu waktu responsnya tidak langsung.RDBMS
.Versi Hadoop
Ada dua versi yang
Hadoop
tersedia:Hadoop 1.0
Ini memiliki dua bagian utama:
1. Kerangka Penyimpanan Data
Ini adalah sistem file tujuan umum yang disebut Sistem File Terdistribusi Hadoop (
HDFS
).HDFS
skema-kurangIni hanya menyimpan file data dan file data ini bisa dalam format apa saja.
Idenya adalah untuk menyimpan file sedekat mungkin dengan bentuk aslinya.
Hal ini pada gilirannya memberikan keleluasaan dan kelincahan yang sangat dibutuhkan unit bisnis dan organisasi tanpa terlalu khawatir dengan apa yang dapat diimplementasikan.
2. Kerangka Pemrosesan Data
Ini adalah model pemrograman fungsional sederhana yang awalnya dipopulerkan oleh Google sebagai
MapReduce
.Ini pada dasarnya menggunakan dua fungsi:
MAP
danREDUCE
untuk memproses data."Pemeta" mengambil satu set pasangan nilai kunci dan menghasilkan data perantara (yang merupakan daftar pasangan nilai kunci lainnya).
"Pengecil" kemudian bertindak atas input ini untuk menghasilkan data output.
Kedua fungsi ini tampaknya bekerja secara terpisah satu sama lain, sehingga memungkinkan pemrosesan menjadi sangat terdistribusi dalam cara yang sangat paralel, toleransi kesalahan dan terukur.
Keterbatasan Hadoop 1.0
Keterbatasan pertama adalah persyaratan
MapReduce
keahlian pemrograman.Ini hanya mendukung pemrosesan batch yang walaupun cocok untuk tugas-tugas seperti analisis log, proyek penambangan data skala besar tetapi cukup banyak tidak cocok untuk jenis proyek lainnya.
Satu batasan utama adalah yang
Hadoop 1.0
secara komputasional digabungkan denganMapReduce
, yang berarti bahwa vendor manajemen data yang mapan meninggalkan dua pendapat:Tulis ulang fungsionalitasnya
MapReduce
sehingga dapat dieksekusi diHadoop
atauMengekstrak data dari
HDFS
atau memprosesnya di luarHadoop
.Tak satu pun dari opsi yang layak karena menyebabkan proses inefisiensi yang disebabkan oleh data yang dipindahkan masuk dan keluar dari
Hadoop
cluster.Hadoop 2.0
Dalam
Hadoop 2.0
,HDFS
terus menjadi kerangka penyimpanan data.Namun, kerangka kerja manajemen sumber daya baru dan terpisah disebut Y et Sebuah nother R eSource N egotiater ( BENANG ) telah ditambahkan.
Setiap aplikasi yang mampu membagi dirinya menjadi tugas-tugas paralel didukung oleh YARN.
YARN mengoordinasikan alokasi subtugas aplikasi yang diajukan, dengan demikian semakin meningkatkan fleksibilitas, skalabilitas, dan efisiensi aplikasi.
Ini bekerja dengan memiliki Master Aplikasi menggantikan Job Tracker , menjalankan aplikasi pada sumber daya yang diatur oleh Node Manager baru .
ApplicationMaster dapat menjalankan aplikasi apa pun dan bukan hanya
MapReduce
.Ini berarti tidak hanya mendukung pemrosesan batch tetapi juga pemrosesan waktu nyata.
MapReduce
bukan lagi satu-satunya pilihan pemrosesan data.Keuntungan dari Hadoop
Ini menyimpan data dalam bahasa aslinya dari. Tidak ada struktur yang dipaksakan saat memasukkan data atau menyimpan data.
HDFS
skema kurang. Hanya kemudian ketika data perlu diproses bahwa struktur dikenakan pada data mentah.Itu scalable.
Hadoop
dapat menyimpan dan mendistribusikan dataset sangat besar di ratusan server murah yang beroperasi secara paralel.Itu tangguh terhadap kegagalan.
Hadoop
adalah toleransi kesalahan. Ini berlatih replikasi data dengan rajin yang berarti setiap kali data dikirim ke node apa pun, data yang sama juga akan direplikasi ke node lain di cluster, sehingga memastikan bahwa jika terjadi kegagalan node, akan selalu ada salinan data lain yang tersedia untuk digunakan.Itu fleksibel. Salah satu keuntungan utama
Hadoop
adalah dapat bekerja dengan semua jenis data: terstruktur, tidak terstruktur atau semi-terstruktur. Juga, pemrosesan sangat cepatHadoop
karena paradigma "pindahkan kode ke data".Ekosistem Hadoop
Berikut ini adalah komponen
Hadoop
ekosistem:HDFS :
Hadoop
Sistem File Terdistribusi. Ini hanya menyimpan file data sedekat mungkin dengan bentuk aslinya.HBase : Ini adalah basis data Hadoop dan membandingkannya dengan
RDBMS
. Ini mendukung penyimpanan data terstruktur untuk tabel besar.Hive : Ini memungkinkan analisis dataset besar menggunakan bahasa yang sangat mirip dengan standar
ANSI SQL
, yang menyiratkan bahwa siapa pun yang familierSQL
harus dapat mengakses data pada sebuahHadoop
cluster.Babi : Ini adalah bahasa aliran data yang mudah dimengerti. Ini membantu dengan analisis dataset besar yang cukup sesuai
Hadoop
.Pig
skrip secara otomatis dikonversi keMapReduce
pekerjaan olehPig
penerjemah.ZooKeeper : Ini adalah layanan koordinasi untuk aplikasi terdistribusi.
Oozie : Ini adalah
schedular
sistem alur kerja untuk mengelolaHadoop
pekerjaan Apache .Mahout : Ini adalah pembelajaran mesin dan data mining library yang dapat diukur.
Chukwa : Ini adalah sistem pengumpulan data untuk mengelola sistem terdistribusi besar.
Sqoop : Digunakan untuk mentransfer data massal antara
Hadoop
dan penyimpanan data terstruktur seperti database relasional.Ambari : Ini adalah alat berbasis web untuk penyediaan, pengelolaan, dan pemantauan
Hadoop
cluster.Sarang lebah
Hive
adalah alat infrastruktur data warehouse untuk memproses data terstruktur di IndonesiaHadoop
. Itu berada di atasHadoop
untuk merangkum Big Data dan membuat kueri dan analisis mudah.Sarang tidak
Database relasional
Desain untuk Pemrosesan Transaksi Online (
OLTP
).Bahasa untuk kueri waktu-nyata dan pembaruan tingkat baris.
Fitur Hive
Ini menyimpan skema dalam database dan memproses data menjadi
HDFS
.Ini dirancang untuk
OLAP
.Ini menyediakan
SQL
jenis bahasa untuk kueri yang disebutHiveQL
atauHQL
.Itu lebih familier, cepat, terukur, dan dapat diperluas.
Arsitektur Sarang
Komponen-komponen berikut terkandung dalam Hive Architecture:
User Interface :
Hive
adalahdata warehouse
infrastruktur yang dapat membuat interaksi antara pengguna danHDFS
. User Interfaces yangHive
mendukung adalah Hive Web UI, Hive Command line dan Hive HD Insight (In Windows Server).MetaStore :
Hive
memilih masingdatabase
servers
- masing untuk menyimpan skema atauMetadata
tabel, basis data, kolom dalam tabel, tipe data danHDFS
pemetaannya.Mesin Proses HiveQL :
HiveQL
mirip denganSQL
untuk menanyakan informasi skema di InternetMetastore
. Ini adalah salah satu pengganti pendekatan tradisional untukMapReduce
program. Alih-alih menulisMapReduce
diJava
, kita dapat menulis permintaan untukMapReduce
dan memprosesnya.Exceution Engine : Bagian yang berhubungan dengan
HiveQL
engine proses danMapReduce
merupakanHive
Execution Engine. Mesin eksekusi memproses kueri dan menghasilkan hasil yang sama denganMapReduce results
. Ini menggunakan rasaMapReduce
.HDFS atau HBase :
Hadoop
Sistem File Terdistribusi atauHBase
teknik penyimpanan data untuk menyimpan data ke dalam sistem file.sumber
Pertama-tama kita harus jelas bahwa Hadoop diciptakan sebagai alternatif yang lebih cepat daripada RDBMS . Untuk memproses sejumlah besar data dengan kecepatan sangat cepat yang sebelumnya membutuhkan banyak waktu di RDBMS.
Sekarang orang harus tahu dua istilah:
Data Terstruktur : Ini adalah data yang kami gunakan dalam RDBMS tradisional dan dibagi menjadi struktur yang didefinisikan dengan baik.
Data Tidak Terstruktur : Ini penting untuk dipahami, sekitar 80% dari data dunia tidak terstruktur atau semi terstruktur. Ini adalah data yang ada di formulir mentah dan tidak dapat diproses menggunakan RDMS. Contoh: facebook, data twitter. ( http://www.dummies.com/how-to/content/unstructured-data-in-a-big-data-environment.html ).
Jadi, sejumlah besar data sedang dihasilkan dalam beberapa tahun terakhir dan sebagian besar data tidak terstruktur, yang melahirkan HADOOP. Itu terutama digunakan untuk jumlah data yang sangat besar yang membutuhkan jumlah waktu yang tidak layak menggunakan RDBMS. Itu memiliki banyak kelemahan, bahwa itu tidak dapat digunakan untuk data yang relatif kecil secara real time tetapi mereka telah berhasil menghapus kekurangannya di versi yang lebih baru.
Sebelum melangkah lebih jauh, saya ingin memberi tahu bahwa alat Big Data baru dibuat ketika mereka melihat kesalahan pada alat sebelumnya. Jadi, alat apa pun yang akan Anda lihat yang dibuat telah dilakukan untuk mengatasi masalah alat sebelumnya.
Hadoop dapat dikatakan sebagai dua hal: Mapreduce dan HDFS . Mapreduce adalah tempat pemrosesan berlangsung dan HDFS adalah DataBase tempat data disimpan. Struktur ini mengikuti prinsip WORM yaitu menulis sekali membaca beberapa kali. Jadi, setelah kami menyimpan data dalam HDFS, kami tidak dapat membuat perubahan. Ini mengarah pada penciptaan HBASE , produk NOSQL di mana kita dapat membuat perubahan dalam data juga setelah menulisnya sekali.
Tetapi seiring waktu kami melihat bahwa Hadoop memiliki banyak kesalahan dan untuk itu kami menciptakan lingkungan yang berbeda dari struktur Hadoop. PIG dan HIVE adalah dua contoh populer.
HIVE dibuat untuk orang dengan latar belakang SQL . Pertanyaan yang ditulis mirip dengan SQL bernama HIVEQL . HIVE dikembangkan untuk memproses data yang sepenuhnya terstruktur . Itu tidak digunakan untuk data terstruktur.
PIG di sisi lain memiliki bahasa query sendiri yaitu PIG LATIN . Hal ini dapat digunakan untuk kedua terstruktur serta data tidak terstruktur .
Beralih ke perbedaan seperti kapan harus menggunakan HIVE dan kapan harus menggunakan BABI, saya tidak berpikir orang lain selain yang bisa dikatakan arsitek BABI. Ikuti tautan: https://developer.yahoo.com/blogs/hadoop/comparing-pig-latin-sql-constructing-data-processing-pipelines-444.html
sumber
HDFS adalah kependekan dari Hadoop Distributed File System yang menggunakan model pemrosesan Computational Map-Reduce.
HBase adalah penyimpanan Nilai-Kunci, baik untuk membaca dan menulis dalam waktu dekat.
Hive digunakan untuk ekstraksi data dari HDFS menggunakan sintaks seperti SQL. Sarang menggunakan bahasa HQL.
Babi adalah bahasa aliran data untuk membuat ETL. Ini bahasa scripting.
sumber
Biarkan saya mencoba menjawab dalam beberapa kata.
Hadoop adalah sistem ramah lingkungan yang terdiri dari semua alat lainnya. Jadi, Anda tidak dapat membandingkan Hadoop tetapi Anda dapat membandingkan MapReduce.
Ini beberapa sen saya:
sumber
Babi: lebih baik untuk menangani file dan membersihkan data contoh: menghapus nilai-nilai nol, penanganan string, nilai-nilai yang tidak perlu Hive: untuk query pada data yang dibersihkan
sumber
1. Kami menggunakan Hadoop untuk menyimpan data besar (iestructure, Unstructure, dan Semistructure data) dalam format file form seperti txt, csv.
2.Jika Kami ingin Pembaruan kolom di data kami maka kami menggunakan alat Hbase
3.Dalam kasus Hive, kami menyimpan Big data yang dalam format terstruktur dan selain itu kami menyediakan Analisis pada data tersebut.
4.Pig adalah alat yang menggunakan bahasa latin Pig untuk menganalisis data dalam format apa pun (struktur, semi struktur dan tidak terstruktur).
sumber
Membersihkan Data dalam Babi sangat mudah, pendekatan yang sesuai adalah membersihkan data melalui babi dan kemudian memproses data melalui sarang dan kemudian mengunggahnya ke hdfs.
sumber
Penggunaan Hive, Hbase dan Pig wrt pengalaman real time saya di berbagai proyek.
Hive digunakan sebagian besar untuk:
Tujuan analisis di mana Anda perlu melakukan analisis pada data riwayat
Membuat laporan bisnis berdasarkan kolom tertentu
Mengelola data secara efisien bersama dengan informasi metadata
Menggabungkan tabel pada kolom tertentu yang sering digunakan dengan menggunakan konsep bucketing
Efisien Menyimpan dan menanyakan menggunakan konsep partisi
Tidak berguna untuk operasi tingkat transaksi / baris seperti memperbarui, menghapus, dll.
Babi banyak digunakan untuk:
Analisis data yang sering dilakukan pada data yang sangat besar
Menghasilkan nilai / jumlah teragregasi pada data besar
Menghasilkan indikator kinerja utama tingkat perusahaan sangat sering
Hbase sebagian besar digunakan:
Untuk pemrosesan data waktu nyata
Untuk mengelola skema Kompleks dan bersarang secara efisien
Untuk permintaan waktu nyata dan hasil yang lebih cepat
Untuk Skalabilitas mudah dengan kolom
Berguna untuk operasi tingkat baris / transaksi seperti memperbarui, menghapus, dll.
sumber
Jawaban singkat untuk pertanyaan ini adalah -
Hadoop - Adalah Kerangka yang memfasilitasi sistem file terdistribusi dan model pemrograman yang memungkinkan kita untuk menyimpan data berukuran besar dan memproses data dalam mode terdistribusi dengan sangat efisien dan dengan waktu pemrosesan yang sangat sedikit dibandingkan dengan pendekatan tradisional.
(HDFS - Sistem File Terdistribusi Hadoop) (Pengurangan Peta - Model Pemrograman untuk pemrosesan terdistribusi)
Hive - Adalah bahasa query yang memungkinkan untuk membaca / menulis data dari sistem file terdistribusi Hadoop dalam mode seperti SQL yang sangat populer. Ini membuat hidup lebih mudah bagi banyak orang berlatar belakang non-pemrograman karena mereka tidak perlu lagi menulis program Map-Reduce kecuali untuk skenario yang sangat kompleks di mana Hive tidak didukung.
Hbase - Adalah Basis Data NoSQL Kolom. Lapisan penyimpanan yang mendasarinya untuk Hbase adalah HDFS lagi. Kasus penggunaan terpenting untuk database ini adalah untuk dapat menyimpan miliaran baris dengan jutaan kolom. Fitur latensi rendah dari Hbase membantu akses yang lebih cepat dan acak dari catatan atas data yang didistribusikan, adalah fitur yang sangat penting untuk membuatnya berguna untuk proyek-proyek kompleks seperti Mesin Rekomendasi. Juga kemampuan versi tingkat catatan memungkinkan pengguna untuk menyimpan data transaksional sangat efisien (ini memecahkan masalah memperbarui catatan yang kita miliki dengan HDFS dan Hive)
Semoga ini bisa membantu untuk cepat memahami 3 fitur di atas.
sumber
Saya percaya utas ini belum melakukan keadilan khusus untuk HBase dan Babi khususnya. Sementara saya percaya Hadoop adalah pilihan sistem file yang terdistribusi dan tangguh untuk implementasi big-data lake, pilihan antara HBase dan Hive secara khusus dipisahkan dengan baik.
Seperti dalam, banyak kasus penggunaan memiliki persyaratan tertentu seperti SQL atau atau antarmuka No-SQL. Dengan Phoenix di atas HBase, meskipun kemampuan seperti SQL jelas dapat dicapai, namun, kinerja, integrasi pihak ketiga, pembaruan dasbor adalah semacam pengalaman yang menyakitkan. Namun, ini adalah pilihan yang sangat baik untuk database yang membutuhkan penskalaan horizontal.
Babi khususnya sangat baik untuk batch non-rekursif seperti perhitungan atau ETL pipelining (di suatu tempat, di mana ia mengungguli Spark dengan jarak yang nyaman). Selain itu, implementasi aliran data tingkat tinggi merupakan pilihan yang sangat baik untuk kueri dan skrip batch. Pilihan antara Pig dan Hive juga diputar pada kebutuhan skrip klien atau sisi server, format file yang diperlukan, dll. Pig mendukung format file Avro yang tidak benar dalam kasus Hive. Pilihan untuk 'bahasa aliran data prosedural' vs 'bahasa aliran data deklaratif' juga merupakan argumen yang kuat untuk pilihan antara babi dan sarang.
sumber