2012-06-30 2 views
1

하이브, MapReduce 및 Hadoop을 처음 사용합니다. 퍼티를 사용하여 하이브 테이블에 연결하고 테이블의 레코드에 액세스합니다. 그래서 제가 한 것은 퍼티를 열었고 호스트 이름에 vip.name.com을 입력 한 다음 Open을 클릭했습니다. 그리고 나서 내 사용자 이름과 암호를 입력 한 다음 Hive sql을 사용하기위한 몇 가지 명령을 입력했습니다. 아래는 내가 무슨 짓을했는지 목록입니다SQLClient의 하이브 테이블에 액세스 할 수 있지만 퍼티는 액세스하지 않습니다.

$ bash 
bash-3.00$ hive 
Hive history file=/tmp/rkost/hive_job_log_rkost_201207010451_1212680168.txt 
hive> set mapred.job.queue.name=mdhi-technology; 
hive> select * from table LIMIT 1; 

그래서

은 - 내 질문에 내가 그 일을 대신 SQL 개발자 또는 Squirel SQL 클라이언트 등의 모든 SQL 클라이언트에서 같은 일을 할 수있는 다른 방법이 있나요 명령 프롬프트에서. 그리고 그곳에 있다면 퍼티의 vip.name.com에 접속하면서 나의 예제를 고려해 볼 때 단계별 프로세스가 무엇입니까?

그리고 같은 일을하면 내 Windows 컴퓨터에서 JDBC 프로그램을 통해해야 할 일은 어떻게 할 수 있습니까? JDBC 프로그램의 의미, 하이브 테이블에 액세스하여 결과를 다시 얻을 수있는 방법. 내가 오라클 테이블을 가지고 이것을 어떻게 할 수 있는지 아는 것처럼. 하지만이 호스트 이름 vip.name.com을 퍼티에 로그인 할 때 사용하는 유일한 혼란이 있습니다. 나는 그 질문이 분명하기를 희망한다. 모든 제안을 주시면 감사하겠습니다.

짧은 내 질문은 - 퍼티에서 로깅 대신 모든 SQLClient에서 동일한 작업을 수행 할 수 있습니까?

나는 마크 저를 제안했다 방법을 일을 시도

Update-. 하지만 난 항상지고있어 - Hive: Could not establish connection to vip.host.com:10000/default: java.net.ConnectionException: Connection timed out: connect

답변

1

하이티가 설치된 시스템에 퍼티가 SSH하고있다. 그런 다음 하이브 명령 줄에서 하이브 쿼리를 실행합니다. 그것이 하이브 쿼리를 발행하는 한 방법입니다. SSH를 필요로하지 않는 다른 방법이 있습니다. 아마도 JDBC를 통한 연결 일 것입니다.

은 JDBC를 통해 SQuirereL을 사용하여 Amazon의 EMR 클러스터에서 하이브 설치에 연결하는 방법을 설명하는 문서입니다. 이 기사는 아마존에만 한정된 것으로 보일지 모르지만 그렇지 않습니다. 클러스터의 노드 중 하나에서 하이브 서버를 실행하고 클라이언트 시스템과 하이브를 실행하는 방화벽 간의 연결을 방해하지 않는 한 연결할 수 있어야합니다. 당신은 위의 링크에 관련된 염두에 두어야 할 수 있습니다

몇 가지 : 당신이 EMR을 사용하지 않는 한 SSH 터널을 만들 수 묻는 경우 3 단계를 무시할 수

  • .
  • 연결 URI에 입력하는 포트가 다른 경우가 있습니다. localhost를 하이브가 실행되는 컴퓨터의 정규화 된 도메인 이름으로 바꿉니다. 어떤 포트 하이브 서버가 수신 대기 중인지 확인하려면 로그 디렉토리에있는 하이브 서버 nanny 로그 파일 (위치는 설치에 따라 다름)을 보거나 간단한 netstat -a 명령을 실행하십시오. 10000이 기본 포트 번호이므로 10000을 직접 시험해 보는 것이 좋습니다.
+0

예, localhost 대신 정규화 된 도메인 이름 (ares-ingest.vip.host.com)을 사용하십시오. 당신 포트에 10000 번 시도해 주시겠습니까? –

관련 문제