2017-12-05 13 views
0

내 mongoDB에 갖고 싶은 외부 XML 내보내기 데이터가 있습니다. 수출에있는 데이터가 구조에 관해서 필자의 요구에 맞지 않기 때문에 "맵핑"하고 싶습니다. Exmaple 나는 XML에서지고있어 데이터 구조의 종류의외부 데이터를 자신의 mongodb (다른 구조체)로 가져 오는 방법은 무엇입니까?

:

<?xml version="1.0" encoding="utf-8" ?> 
<ogr:FeatureCollection 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="" 
    xmlns:ogr="http://ogr.maptools.org/" 
    xmlns:gml="http://www.opengis.net/gml"> 
    <gml:boundedBy> 
    <gml:Box> 
     <gml:coord><gml:X>X.XXX</gml:X><gml:Y>Y.YYY</gml:Y></gml:coord> 
     <gml:coord><gml:X>X.XXX</gml:X><gml:Y>Y.YYY</gml:Y></gml:coord> 
    </gml:Box> 
    </gml:boundedBy>                    
    <gml:featureMember> 
    <ogr:POI_TypeXYZ fid="POI_XYZ"> 
     <ogr:geometryProperty><gml:Point srsName="XYZ"><gml:coordinates>SAMPLE_DATA</gml:coordinates></gml:Point></ogr:geometryProperty> 
     <ogr:ID>SAMPLE_DATA</ogr:ID> 
     <ogr:TITLE>SAMPLE_DATA</ogr:TITLE> 
     <ogr:STREET>SAMPLE_DATA</ogr:STREET> 
     <ogr:NUM>SAMPLE_DATA</ogr:NUM> 
     <ogr:PHONE>SAMPLE_DATA</ogr:PHONE> 
    </ogr:POI_TypeXYZ> 
    </gml:featureMember> 
    <gml:featureMember> 
    <ogr:POI_TypeXYZ fid="POI_XYZ"> 
     <ogr:geometryProperty><gml:Point srsName="XYZ"><gml:coordinates>SAMPLE_DATA</gml:coordinates></gml:Point></ogr:geometryProperty> 
     <ogr:ID>SAMPLE_DATA</ogr:ID> 
     <ogr:TITLE>SAMPLE_DATA</ogr:TITLE> 
     <ogr:STREET>SAMPLE_DATA</ogr:STREET> 
     <ogr:NUM>SAMPLE_DATA</ogr:NUM> 
     <ogr:PHONE>SAMPLE_DATA</ogr:PHONE> 
    </ogr:POI_TypeXYZ> 
    </gml:featureMember> 
</ogr:FeatureCollection> 

그리고 예를 들어 차라리 필드 등 다른 이름을 가지고 데이터를 완벽하게 제어 할 것입니다.

도움이되는 도구가 있습니까? 또는 그런 일을 처리하는 일반적인 전략은 무엇입니까?

답변

0

그것은 3 단계 과정과 같습니다

  1. 변환 JSON-xml.

  2. 필드의 이름을 변경하십시오. 참조 here는 JSON 객체의 키를 변경하는 방법을 알고 있습니다.

  3. BSONJSON 객체 변환 및 MongoDB를로 저장 (현재 데이터를 완벽하게 제어 할 수 있습니다).

수입 JSON은

데이터 =이 json.loads은 (문서)

mongocollection.insert

+0

내가 BSON 내 JSON 변환 시도 (데이터) (그냥 테스트하기 온라인 보호자와 함께) 어떻게 BSON 파일을 가져올 수 있습니까? mongoimport가 작동하지 않는 것 같습니다. – SVARTBERG

+0

BSON 파일을 가져 오는 것은 무엇을 의미합니까? 너는 무엇을 수입하려고 하는가? –

+0

MongoDB에 익숙하지 않은 분들은 BSON을 어떻게 저장해야합니까? (그리고 JSON에서 어떻게 변환 할 수 있습니까?) MongoDB? – SVARTBERG