Öncelikle bilgisayarımızda hive kurulu olduğu dizine geçiyoruz :

[email protected]:~$ cd $HIVE_HOME

Hive home geldikten sonra hiveserver veya hiveserver2 yazarak hiveserver başlatıyoruz:

[email protected]:/usr/java/hadoop/apache-hive-1.2.1-bin$ hiveserver2 

Hiveserver yazdıktan sonra hiveserver başlayacaktır.Bu ksımda artık bir şeye karışmayacaz.
Daha sonra terminalde “beeline” yazıp jdbc ye bağlanacaz:

[email protected]:/usr/java/hadoop/apache-hive-1.2.1-bin/bin$ beeline 

“beeline” yazdıktan sonra aşağıdaki gibi jdbc connect işlemimizi gerçekleştiriyoruz :
beeline> !connect jdbc:hive2://localhost:10000/default
Bu şekilde yazdıktan sonra aşağıda görüldüğü gibi bağlanması gerekiyor. Bağlanırken bağlantımız için username ve password isteyecektir.Burayı boş da geçebilirsiniz.İstediğiniz username ve password yazabilirsiniz:
Connecting to jdbc:hive2://localhost:10000/default
Enter username for jdbc:hive2://localhost:10000/default: 
Enter password for jdbc:hive2://localhost:10000/default: 
Connected to: Apache Hive (version 1.2.1)
Driver: Hive JDBC (version 1.2.1)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://localhost:10000/default>
Bunları yaptıktan sonra artık hive değil buradaki jdbc bağlantısı kullanılarak sorgulamları ve tabloları yapabiliriz. Daha önce hive da oluşturulan tablolar burada görülmeyecektir.Bu yüzden bu kısımda tabloları yeniden bu kısımda oluşturmanız gerekecektir.
Bunu yaptıktan sonra şimdi java kod kısmımıza geçelim :
package hiveexample;
/**
 *
 * @author erman
 */
import java.sql.SQLException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.DriverManager;
 
public class Hiveexample {
 
    private static String driverName = “org.apache.hive.jdbc.HiveDriver”;
 
    public static void main(String[] args) throws SQLException {
        try {
            Class.forName(driverName);
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            System.exit(1);
        }
        Connection con = DriverManager.getConnection(“jdbc:hive2://localhost:10000/default”, “”, “”);
        Statement stmt = con.createStatement();
        // Statement stmt = con.createStatement();
        String sql = “select id,isim,soyisim from  isimler”;
        System.out.println(“Running: ” + sql);
        ResultSet res = stmt.executeQuery(sql);
        
         while (res.next())
      {
          String id = res.getString(“id”);
        String isim = res.getString(“isim“);
        String soyisim = res.getString(“soyisim“);
        
          System.out.println(“id : ” + id + “\n” + “isim : ” + isim + “\n”+ “soyisim : ” + soyisim);
 
      }
        
        System.out.println(“Query execution complete”);
  }
}
Hiveserver açık ise eğer yukarıdaki kodumuzu çalıştırdığımızda sonuçlar istediğimiz gibi olacaktır.

Leave a Reply

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir