2012-12-18 3 views
1

우리는 Hadoop을 사용하는 로그 파일 분석과 함께 간단한 Java EE 웹 애플리케이션을 하나 개발하고 싶습니다. 다음은 애플리케이션 개발을위한 접근법입니다. 그러나 우리는이 접근법을 통해 도달 할 수 없습니다.Have with Hive

  1. 로그 파일은 sftp/ftp를 사용하여 클라이언트 컴퓨터에서 Hadoop 서버로 업로드됩니다.
  2. Hadoop Job을 호출하여 로그 파일을 가져 와서 로그 파일을 HDFS 파일 시스템으로 처리하십시오.
  3. 로그 파일을 처리하는 동안 콘텐츠가 HIVE 데이터베이스에 저장됩니다.
  4. 우리가 가득 채우기에 몇 가지 단계를 많은 샘플을 찾아

클라이언트 웹 응용 프로그램에서 HIVE JDBC 연결을 사용하여 로그 내용을 검색 할 수 있습니다. 그러나 우리는 구체 샘플을 구할 수 없다.

위의 방법이 맞는지 아닌지 제안하고 Java로 개발 된 샘플 응용 프로그램 링크를 얻으십시오.

답변

0

나는 몇 가지를 지적하겠다.
a) 로그 파일을 병합하거나 다른 방법으로 당신이 너무 많이 가지고 있지 않도록주의해야한다. Flume (http://flume.apache.org/)은 다양한 소스의 로그를 받아 들여 HDFS에 넣을 수 있도록 제작되었습니다.
b) ftp를 사용하는 경우 FTP에서 데이터를 가져 와서 HDFS에 넣으려면 스크립팅이 필요합니다.
c) 클라이언트의 웹 요청의 결과로 하이브 작업을 실행하는 것이 가장 큰 문제점입니다. 하이브 요청은 대화 형이 아닙니다. 적어도 수십 초가 걸리고, 아마도 훨씬 더 많은 시간이 걸릴 것입니다.
나는 또한 동시 요청의 차이가 될 것이다 - 당신이 proabbly 날에 따르면, 당신이 한 일을 할 수있는 병렬

0

에 몇 가지 더 후를 실행할 수 없습니다 :

1) 대신에 다양한에서 수용 로그 소스를 복사하여 HDFS에 넣을 수 있습니다. 하나의 데이터베이스에 SQL Server를 넣을 수 있으며, Sqoop을 사용하여 Hive (또는 HDFS)로 데이터를 가져올 수 있습니다.

2) 이렇게하면 데이터를 HDFS로 가져 오기위한 다양한 작업을 작성하는 노력이 줄어 듭니다.

3) 데이터가 하이브에 들어 오면 원하는대로 할 수 있습니다.

관련 문제