2014-09-02 2 views
1

우리는 거대한 N 차원 데이터 스트리밍 (NetCDF 파일)을 텍스트 파일에 쓰지 않고 HDFS에로드 할 필요없이 Mapper 기능에 대한 입력으로 스트리밍한다는 아이디어를 조사하고 있습니다. 이미이 거대한 DataStructure를 보유하고있는 애플리케이션이 있습니다. 따라서 우리는 텍스트 파일에서 쓰고 읽을 때 발생하는 모든 오버 헤드를 건너 뛰고 싶습니다. 다음 질문에 대한 약간의 의견이 필요합니다 ..거대한 DataStructure를 MapReduce에 직접 제공하여 HDFS에로드하지 않고 처리 할 수 ​​있습니까?

1) 타사 응용 프로그램 스트림 데이터를 MapReduce로 직접 스트리밍 할 수 있습니까?

2) 위와 같은 경우 MapReduce가이 DataStructure를 Input Chunk로 분할하거나이 작업을 명시 적으로 수행해야합니까?

3) 스파크가 DRAM에서 작동 할 때 Apache SPARK에서 구현할 수 있습니까? 또한 데이터 구조가 DRAM에서도 작동하므로 다른 애플리케이션간에 데이터를 이동할 필요가 없습니다. (나는 아직 불꽃을 탐험하지는 않았다. 미안하다면이 말은 멍청한 생각이다 !!)

이 방향의 어떤 포인터도 크게 평가된다.

비슷한 아이디어 : 사전에 https://www.mapr.com/developercentral/code/immediate-mapreduce-continuously-ingested-data#.VAXez_ldVQF

http://d2i.indiana.edu/sites/default/files/escience13_jiaan.pdf

감사합니다.

답변

1

1) 예 : InputFormat을 만들면 Mapreduce 작업의 입력으로 사용할 수 있습니다.
2) 예. 독자적으로 처리해야하지만 좋은 소식이 있습니다. 많은 스트리밍 기술이 이미 입력 형식을 구현했습니다. 내가 잘 알고있는 좋은 기술은 카프카 (Kafka)입니다. KafkaInputFormat 만 개 구현되었습니다. 나는 linkedin의 camus이 과잉이라고 할지도 모르지만 작동하는 것을 가지고 있다고 생각한다. 다른 어떤 것보다 더 복잡해 보인다.
3) 더 좋은 소식 스파크는 카프카에 스트리밍 커넥터와 함께 제공됩니다 (그리고 아마도 prob는 것이다 스파크를 추가 코드와 뭔가 작업을 얻을 수있는 최소한의 노력을 필요로 하둡이 newApiHadoopFile를 사용하는 것)

+0

ID를 사용할 수 , 그리고 가장 융통성이 있습니다. – samthebest

+1

@samthebest는 기본적으로 사실이 아닙니다. 이론적으로 스파크가 하둡 Mapreduce보다 좋지 않습니다. – aaronman

+0

@aaronman : 답장을 보내 주셔서 감사합니다. 카프카는 재미있을 것 같습니다. 나는 똑같은 생각에 대해 연구 할 것이고 내가 흥미로운 것을 발견하면 게시 할 것입니다. 타사 응용 프로그램에서이 데이터 구조를 분할하기 위해 FileInputFormat과 같은 customInputFormat을 작성할 수 있다고 생각하십니까? – Naveen