[HADOOP] AWS EMR 성능 HDFS 및 S3
HADOOPAWS EMR 성능 HDFS 및 S3
Big Data에서 코드는 실행을 위해 데이터쪽으로 푸시됩니다. 이는 데이터가 크고 실행 코드가 상대적으로 작기 때문에 의미가 있습니다. AWS EMR을 사용하면 데이터는 HDFS 또는 S3에있을 수 있습니다. S3의 경우, 일부 다른 노드에서 실행하려면 데이터를 코어 / 태스크 노드로 가져와야합니다. HDFS의 데이터와 비교할 때 약간의 오버 헤드가 발생할 수 있습니다.
최근에 MR 작업이 실행될 때 S3에 로그 파일을 가져 오는 데 상당한 대기 시간이 있음을 알았습니다. 때로는 작업이 완료된 후에도 로그 파일이 표시되는 데 몇 분이 걸렸습니다.
이것에 대한 생각? HDFS vs S3의 데이터를 사용하여 MR 작업 완료에 대한 메트릭이 있습니까?
해결법
-
==============================
1.그것은 다른 차원에서 문제가됩니다.
그것은 다른 차원에서 문제가됩니다.
S3는 최종 일관성 만 있습니다. 쓰기 프로세스가 지연되어 코드로 무언가를 작성한 후에는 즉시 읽거나 읽을 수 없습니다 (예 : close () 또는 flush ()). 나는 이것이 당신이 쓰는 데이터에 대한 무료 리소스 할당 때문일 수 있다고 생각합니다. 따라서 성능 문제가 아니라 실제로 원하는 / 일관성 문제입니다.
EMR에서 무엇을해야합니까? Hadoop 클러스터를 시작하고 작업에 필요한 모든 것을 HDFS에 넣었습니다. 읽기는 S3에서 시간이 훨씬 더 비싸며 최종 일관성은 기본적으로 작업 간 항목을 버퍼링하는 데 쓸모가 없습니다.
그러나 S3는 HDFS에서 파일을 백업하거나 다른 인스턴스 나 서비스 (예 : CloudFront)에서 파일을 사용할 수있게 할 때 좋습니다.
-
==============================
2.성능면에서 HDFS는 S3보다 낫습니다.
성능면에서 HDFS는 S3보다 낫습니다.
요구 사항이 장기적이고 고성능이 필요하며 반복적 인 기계 학습 알고리즘을 실행하려는 경우 HDFS가 더 좋습니다.
S3는 하중이 가변적 일 때 더 좋고, 적은 비용으로 높은 내구성과 지속성을 요구합니다.
자세한 내용은이 링크를 참조하십시오 http://www.nithinkanil.com/2015/05/hdfs-vs-s3.html
-
==============================
3.클러스터를 종료하면 HDFS 데이터가 삭제되므로 EMR 클러스터를 종료하려면 S3을 사용해야합니다.
클러스터를 종료하면 HDFS 데이터가 삭제되므로 EMR 클러스터를 종료하려면 S3을 사용해야합니다.
from https://stackoverflow.com/questions/20143216/aws-emr-performance-hdfs-vs-s3 by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] Spark의 Hive 쿼리에 대한 HIVE_STATS_JDBC_TIMEOUT (0) | 2019.08.14 |
---|---|
[HADOOP] 마루 파일을로드하고 같은 수의 hdfs 파티션을 유지 (0) | 2019.08.14 |
[HADOOP] hbase에서 테이블 만들기 (0) | 2019.08.14 |
[HADOOP] HBase-WAL과 MemStore의 차이점은 무엇입니까? (0) | 2019.08.14 |
[HADOOP] Hadoop IOException 로그인 실패 (0) | 2019.08.14 |