Genelde büyük veriyi analiz ettiğimizde aklımıza Spark ve Storm geliyor olabilir ama JAVA gibi programlama dillerini bilmeliyiz, aksi takdirde verileri analiz edemeyiz. Hive bu sorunu çözer ve sadece mapreduce'un büyük veri analizi görevini yapmak için Sql dilini bilmesi gerekir. Bugün test verilerini oluşturuyoruz ve mapreduce'un gerçek analizi için Hive'ı kullanıyoruz.
1. Önce Hive ve Mysql ortamını kurun
1. Dünün hdf'leri temelinde, Hive ve Mysql'i kurun.
2. Hive, meta verileri depolamak için Mysql'e ve hücre verilerini depolamak için Hdfs'ye güvendiğinden, Mysql hesabını ve parolayı Hive'da yapılandırın.
3. Mysql'de bir Hive veritabanı oluşturun ve Mysql için bir veritabanı hesabı ve parola oluşturun.
İki, test verileri oluşturun
1. Dosya test verileri oluşturun
cd / usr / local / hadoop
mkdir girişi
echo "merhaba dünya" > file1.txt
echo "merhaba hadoop" > file2.txt
2. Kovanı girin ve dosyayı kovan veri tablosuna aktarın
kovan > tablo belgeleri oluştur (satır dizesi); // Yalnızca bir sütun öğesi içeren bir tablo oluşturun
kovan > veriyi yükle yerel girdisi '/ usr / local / hadoop / input' tablo belgelerinin üzerine yaz; // girdi dizinindeki dosya1 ve dosya2'yi kovan belgeleri tablosuna dökün.
Verilerin başarıyla içe aktarıldığını onaylamak için belgelerden * seçimini kullanın.
Üç, bir test analizi görevi oluşturun
1. Kelime sayısını analiz etmek ve işlemek için sql deyimini kullanın.
tablo word_count oluşturun, kelime seçin, sayı olarak sayın (1) (dokümanlardaki kelime olarak patlat (böl (satır, '')) seçin) w kelime sırasına göre gruplayın;
2. Mapreduce görevini kontrol edin
Mapreduce sürecini kontrol edin, yukarıdaki ifade mapreduce görevini başlatır.
3. İnceleme sonuçları
Kelime sayımı görevinin başarıyla tamamlandığını bulmak için word_count'tan * seçin.
Dört, özet
1. Hive, meta verileri depolamak için mysql'e ve veritabanı dosyalarını depolamak için hdfs'ye güvenir.
2. Hive, gerçek zamanlı olmayan veri analizi ve işleme için uygun olan mapreduce görevleri oluşturmak için SQL deyimlerini kullanır.