메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


* shellscript파일
-----------------
#!/bin/bash
export CLASSPATH=${CLASSPATH}:/opt/cloudera/parcels/CDH-7.1.7-1.cdh7.1.7.p1000.24102687/lib/hive/auxlib/ImpalaJDBC42.jar
export CLASSPATH=${CLASSPATH}:~/gooper/libs/*.jar

kinit -kt /var/lib/keytab/hadoop.keytab hadoop
if [ $? != 0 ]; then
   echo "kinit fail"
   exit -1
else
   echo "kinit sucess"
fi

java ImpalaTest
------------------------

*참고1 : 아래 프로그램을 수행하는데 필요한 jar파일 목록(os폴더 위치 : ~/gooper/libs)
(/opt/cloudera/parcels/CDH/jars에 있으니 복사해서 사용한다, 이곳에은 동일한 jar가 바젼별로 존재하므로 이 경로를 classpath에 통째 포함시켜서 사용하면 실행시 NoSuchMehod같은 오류가 발생한다)
commons-collections-3.2.2.jar         hadoop-common-3.1.1.7.1.7.1000-141.jar            hive-service-3.1.3000.7.1.7.1000-141.jar      log4j-1.2-api-2.17.1.jar
commons-configuration2-2.1.1.jar      hive-exec-3.1.3000.7.1.7.1000-141.jar             hive-service-rpc-3.1.3000.7.1.7.1000-141.jar  log4j-api-2.17.1.jar
commons-lang-2.6.jar                  hive-jdbc-3.1.3000.7.1.7.1000-141.jar             httpclient-4.5.13.jar                         log4j-core-2.17.1.jar
guava-27.0.1-jre.jar                  hive-jdbc-3.1.3000.7.1.7.1000-141-standalone.jar  jaxb-impl-2.2.3-1.jar                         slf4j-log4j12-1.7.30.jar
hadoop-auth-3.1.1.7.1.7.1000-141.jar  hive-metastore-3.1.3000.7.1.7.1000-141.jar        libthrift-0.9.3.jar


* 참고2 : java source(파일명 ImpalaTest.java)
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class ImpalaTest {
        private static String connectionUrl;
        private static String jdbcDriverName;

        private static void loadConfiguration() throws IOException {
                try {
          // connectionUrl = "jdbc:impala://impalajdbcnode.gooper.com1050;AuthMech=3;UID=hadoop;PWD=;UseSasl=0";             // 해당 user로 동작함
          connectionUrl = "jdbc:impala://impalajdbc_l4.gooper.com:21051/default;AuthMech=1;KrbRealm=GOOPER.COM;KrbHostFQDN=impala_jdbc_node.gooper.com;KrbServiceName=impala;" ;
             //impalaJDBC4.1의 경우
             //jdbcDriverName = "com.cloudera.impala.jdbc41.Driver";
             //ImpalaJDBC4.2의 경우
             jdbcDriverName = "com.cloudera.impala.jdbc.Driver";
                } finally {
                      System.out.println("test");
                }
        }

        public static void main(String[] args) throws IOException, ClassNotFoundException, SQLException {
                selectTest();
        }
        public static void selectTest() throws IOException {
                String sqlStatement = "select count(*) as 'abcd' from test.test_table;";
                loadConfiguration();

                System.out.println("\n=============================================");
                System.out.println("Using Connection URL: " + connectionUrl);

                Connection con = null;
                Statement stmt = null;

                try {

                        Class.forName(jdbcDriverName);
                        con = DriverManager.getConnection(connectionUrl);
                        stmt = con.createStatement();
                        ResultSet rs = stmt.executeQuery(sqlStatement);

                        System.out.println("\n== Begin Query Results ======================");
                        System.out.println("rs:"+rs);
                        // print the results to the console
                        while (rs.next()) {
                                // the example query returns one String column
                                System.out.println(rs.getString(1));
                        }

                        System.out.println("== End Query Results =======================\n\n");

                } catch (SQLException e) {
                        e.printStackTrace();
                } catch (Exception e) {
                        e.printStackTrace();
                } finally {
                        try {
                                stmt.close();
                                con.close();
                        } catch (Exception e) {
                                // swallow
                        }
                }
        }
}
번호 제목 글쓴이 날짜 조회 수
741 [CDP7.1.7, Replication]Encryption Zone내 HDFS파일을 비Encryption Zone으로 HDFS Replication시 User hdfs가 아닌 hadoop으로 수행하는 방법 gooper 2024.01.15 2
740 [CDP7.1.7] oozie sqoop action으로 import혹은 export수행시 발생한 오류에 대한 자세한 로그 확인 하는 방법 gooper 2024.04.19 2
739 [Impala] alter table구문수행시 "WARNINGS: Impala does not have READ_WRITE access to path 'hdfs://nameservice1/DATA/Temp/DB/source/table01_ccd'" 발생시 조치 gooper 2024.04.26 2
738 [CDP7.1.7]Hive Replication수행중 Specified catalog.database.table does not exist : hive.db명.table명 오류 발생시 조치방법 gooper 2024.04.05 5
737 [CDP7.1.7]Hive Replication수행시 Target Cluster에서 Specified catalog.database.table does not exist 오류 gooper 2024.05.08 5
736 ./gradlew :composeDown 및 ./gradlew :composeUp 를 성공했을때의 메세지 gooper 2023.02.20 6
735 호출 url현황 gooper 2023.02.21 7
734 [CDP7.1.7, Hive Replication]Hive Replication진행중 "The following columns have types incompatible with the existing columns in their respective positions " 오류 gooper 2023.12.27 8
733 [Cloudera Agent] Metadata-Plugin throttling_logger INFO (713 skipped) Unable to send data to nav server. Will try again. gooper 2022.05.16 11
732 [EncryptionZone]User:testuser not allowed to do "DECRYPT_EEK" on 'testkey' gooper 2023.06.29 11
731 [CDP7.1.7]Oozie job에서 ERROR: Kudu error(s) reported, first error: Timed out: Failed to write batch of 774 ops to tablet 8003f9a064bf4be5890a178439b2ba91가 발생하면서 쿼리가 실패하는 경우 gooper 2024.01.05 11
730 eclipse editor 설정방법 총관리자 2022.02.01 12
729 [vue storefrontui]외부 API통합하기 참고 문서 총관리자 2022.02.09 12
728 [Encryption Zone]Encryption Zone에 생성된 table을 select할때 HDFS /tmp/zone1에 대한 권한이 없는 경우 gooper 2023.06.29 12
727 [CDP7.1.7]Encryption Zone내부/외부 간 데이터 이동(mv,cp)및 CTAS, INSERT SQL시 오류(can't be moved into an encryption zone, can't be moved from an encryption zone) gooper 2023.11.14 12
726 주문 생성 데이터 예시 총관리자 2022.04.30 13
725 주문히스토리 조회 총관리자 2022.04.30 13
724 [bitbucket] 2022년 3월 2일 부터 git 작업시 기존에 사용하던 비빌번호를 사용할 수 없도록 변경되었다. 총관리자 2022.04.30 13
723 [Oracle 11g]Kudu table의 meta정보를 담고 있는 table_params의 백업본을 이용하여 특정 컬럼값을 update하는 Oracle SQL문 gooper 2023.09.04 14
722 Hadoop Clsuter에 이미 포함된 host의 hostname변경시 처리 절차 gooper 2023.03.24 15

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로