2016-07-13 4 views
1

내 프로젝트 중 하나에 MeteorJS 프레임 워크를 사용하고 있습니다. MeteorJS를 사용하기 전에 기본 웹 애플리케이션을 한 번 빌드 했으므로 클라이언트, 서버 및 MongoDB 만 완벽하게 작동합니다.MeteorJS (MongoDB) with Spark

이 프로젝트에서 나는 MonogDB (MeteorJS로 빌드 됨)가 Apache Spark의 데이터를 채우기를 원합니다.

기본적으로 Apache Spark은 일부 데이터를 처리하여 mongoDB에 삽입합니다. 이 작업이 가능합니까? 제발이 점에 대해 올바른 튜토리얼을 가르쳐 주시겠습니까 구현이 얼마나 복잡한가요? 미리 도움 주셔서 감사합니다.

답변

2

예 매우 쉽고 간단합니다. 그것은 MeteorJS를 거치지 않을 것이고, 그것은 Apache Spark 작업의 일부가 될 것이며 거기에서 구성 될 것입니다.

MongoDB Spark Connector을 사용하면 DataFrame 또는 RDD에서 데이터를 가져 와서 MongoDB에 저장하는 것이 쉽습니다. 방법과 장소 데이터가 기록되어

먼저 구성합니다 :

RDD의 당신이지도 기능 등을 통해 문서로 변환해야와
// Configure where to save the data 
val writeConfig = WriteConfig(Map("uri" -> "mongodb://localhost/databaseName.collectionName")) 

:

val documentRDD = rdd.map(data => Document) // map the RDD into documents 
MongoSpark.save(documentRDD, writeConfig) 

당신은 그것의 DataFrames를 사용하는 경우 DataFrameWriter 및 writeConfig를 제공하면 훨씬 쉽습니다.

MongoSpark.save(dataFrame.write, writeConfig) 

documentation에 더 많은 정보가 있거나 github repo에 예제가 있습니다.

+0

감사합니다. MeteorJS를 경유하지 않는 이유는 무엇입니까? MeteorJS는 mongo도 패키지의 일부로 설치합니다. 따라서 MongoDB 스파크 커넥터를 사용하여 Spark에서 데이터를 주입하십시오. -> Mongo 그리고 mongo가 새로운 데이터로 업데이트 될 때, 유성 서버는 업데이트 된 데이터를 가져 와서이를 통해 각각의 클라이언트로 푸시합니다. 웹 소켓 맞지? 내가 틀렸다면 나를 바로 잡으십시오. – Gol

+0

예, 맞습니다. 유성 앱이 핵심 이슈와 직결되어 MeteorJS를 사용하지 않을 것이라고 언급했습니다. Spark에서 MongoDB로 데이터를 가져 오는 방법은 무엇입니까? – Ross

+0

여기에 요점은 MongoDB의 인스턴스를 설정해야한다는 것입니다. Spark이 저장하고 MongO_URL을 사용하여 Meteor를 가리켜 야합니다. 즉, 내장 된 Mongo 인스턴스를 사용하지 마십시오 ... 여러분이 Spark를 사용하고 있다면, 여러분은 처리 할 상당한 양의 데이터가 있다고 가정하고, 단일 MongoDB 인스턴스는 아마도 적합하지 않을 것입니다. 그렇게 많은 양의 데이터가 없다면 아마 망치로 파리를 죽이려하고 스파크가 필요하지 않을 수도 있습니다. – MrE