복붙노트

[MONGODB] _id 필드가없는 mongoexport

MONGODB

_id 필드가없는 mongoexport

IDVALUE 튜플 : 나는 그러나 문서는 오버 헤드 _id에 의해 도입 된 큰 크기를 가지고, .json 형식의 파일로 일부 데이터를 내보낼 mongoexport을 사용하고 있습니다.

i를 _id 필드없이 MongoDB의 데이터를 검색 할 수있는 방법이 유사한 게시물을 거기에 발견? 몽고에서 데이터를 검색하지만 수출하지 않을 경우 _id 필드를 생략하는 방법. 사용하는 것이 좋습니다 : .Exclude를 ( "_ ID"). 나는 .Exclude을 포함 든에 mongoexport의 --query 매개 변수를 reqrite하려고 ( "_ ID") 매개 변수,하지만 시도는 모두 지금까지 실패했습니다.

어떻게이 일을 올바른 방법입니다, 또는 좀 후 수출 기술을 사용하여에 복귀한다 제안하십시오?

감사

해결법

  1. ==============================

    1.mongoexport를 사용하여 (예 : _id 등) 분야를 제외 할 수있는 방법은없는가 나타납니다.

    mongoexport를 사용하여 (예 : _id 등) 분야를 제외 할 수있는 방법은없는가 나타납니다.

    여기에 적당한 크기의 데이터베이스에 나를 위해 일했다 대안이다 :

    mongo myserver/mydb --quiet --eval "db.mycoll.find({}, {_id:0}).forEach(printjson);" > out.txt
    

    대용량 데이터베이스 (기록의 수백만)에 시간이 걸릴 수 있으며,이를 실행하는 사람들이 시스템에서 수행하려고 다른 작업에 영향을 미칠 것입니다 :

  2. ==============================

    2.이 작품 :

    이 작품 :

    mongoexport --db db_name --collection collection_name | sed '/"_id":/s/"_id":[^,]*,//' > file_name.json
    
  3. ==============================

    3.난 당신이 네이티브 몽고 수출이 작동 CSV 데이터를 대체 할 수 있다면 당신은 JSON에 수출하고 싶었지만 지정된 알고, 빨리 위의 솔루션보다 많은 것

    난 당신이 네이티브 몽고 수출이 작동 CSV 데이터를 대체 할 수 있다면 당신은 JSON에 수출하고 싶었지만 지정된 알고, 빨리 위의 솔루션보다 많은 것

    mongoexport --db <dbName> --collection <collectionName> --csv --fields "<fieldOne>,<fieldTwo>,<fieldThree>" > mongoex.csv
    
  4. ==============================

    4.mongoexport는 옵션이 보이지 않는다.

    mongoexport는 옵션이 보이지 않는다.

    ramda-인 CLI _id를 제거하는 것은 같을 것이다 :

    mongoexport --db mydb --collection mycoll -f name,age | ramda 'omit ["_id"]'
    
  5. ==============================

    5.나는 quux00의 솔루션을 적용하지만, 대해 forEach (printjson)는 "last_update"예를 들어 (출력에 MongoDB를 확장 JSON 표기법을 인쇄 : NumberLong으로 ( "1384715001000")를.

    나는 quux00의 솔루션을 적용하지만, 대해 forEach (printjson)는 "last_update"예를 들어 (출력에 MongoDB를 확장 JSON 표기법을 인쇄 : NumberLong으로 ( "1384715001000")를.

    대신 다음과 같은 라인을 사용하는 것이 더 좋을 것입니다 :

    db.mycoll.find({}, {_id:0}).forEach(function (doc) {
    
        print( JSON.stringify(doc) );
    });
    
  6. ==============================

    6.

    mongo <server>/<database> --quiet --eval "db.<collection>.find({}, {_id:0,<field>:1}).forEach(printjson);" > out.txt
    

    당신은 " ''과 함께 찾기에 조건을 쓰기" "변화를 실행"찾기와 같은 (: 13 "세") 몇 가지 질문이있는 경우.

  7. ==============================

    7.예를 들면 "_id"로 하위 문서 정보를 제외하는 가장 간단한 방법은 다음을 CSV로 내보낼 JSON으로 CSV를 변환하는 도구를 사용하는 것입니다.

    예를 들면 "_id"로 하위 문서 정보를 제외하는 가장 간단한 방법은 다음을 CSV로 내보낼 JSON으로 CSV를 변환하는 도구를 사용하는 것입니다.

  8. ==============================

    8.mongoexport 수 없습니다 생략 "_id"

    mongoexport 수 없습니다 생략 "_id"

    SED는 그것을 할 수있는 강력한 명령입니다 :

    mongoexport --db mydb --collection mycoll -f name,age | sed '/"_id":/s/"_id":[^,]*,//'
    

    원래의 대답은 MongoExport 명령을 사용하여 _id 필드를 제외 출신

  9. ==============================

    9.그냥 --type가 mongoexport 명령에서 CSV 옵션을 = 사용합니다.

    그냥 --type가 mongoexport 명령에서 CSV 옵션을 = 사용합니다.

    mongoexport --db=<db_name> --collection=<collection_name> --type=csv --field=<fields> --out=<Outfilename>.csv
    

    MongoDB를 버전 3.4의 경우, 너무 CSV 내보내기의 필드 헤더를 제외 mongoexport 명령에 --noHeaderLine 옵션을 사용할 수 있습니다.

    상세 내용은 : https://docs.mongodb.com/manual/reference/program/mongoexport/

  10. ==============================

    10.당신은 --fields 플래그와 필드를 지정 시도? 언급되지 않은 모든 필드는 수출에서 제외됩니다.

    당신은 --fields 플래그와 필드를 지정 시도? 언급되지 않은 모든 필드는 수출에서 제외됩니다.

    유지 보수를 위해 당신은 또한 별도의 파일로 필드를 작성하고 --fieldFile를 사용할 수 있습니다.

  11. from https://stackoverflow.com/questions/12976145/mongoexport-without-id-field by cc-by-sa and MIT license