RDBMS から JSON としてエクスポートされた GB がいくつかあります。すべての日付は厳密な JSON 形式、つまり{$date:1354810746067}
.
Mongoimport は、目的の ISODate に変換していないようです。としてフォーマットされている場合にのみ機能しDate(1354810746067)
ます。
{$date:..} を ISODate として受け入れるように mongoimport を微調整するオプションはありますか?
sed
それとも、スクリプトを介してインポートを渡す必要がありますか?
サンプル入力は次のようになります
{cleared:true,category:"general auditing",transactionId:null,details:{new_terminal_mode:"test value-24",company_old_id:2534,new_terminal_state:"test value-28",reduction_type:"test value-3",transition_times:[{$date:1355408317000},{$date:1355407983000},{$date:1355413490000},{$date:1355411339000},{$date:1355414485000},{$date:1355414378000},{$date:1355408061000},{$date:1355408064000}]},_id:"69",dateTime:{$date:1354813457327},severity:20,eventType:"log_event_count_threshold_reached",systemId:693972591865925,carParkId:0}
で試しました
cat file | sed -e s/{$date:\([0-9]*\)}/Date\(\1\)/g | mongoimport -c test
しかし、私の正規表現スキルはそこで失敗しました:-(。