2012-09-26 14 views
14

Usiamo mongo db per memorizzare determinati record nel database di produzione.

Vediamo i nostri record con "_id" : { "$oid" : "50585fbcb046b2709a534502"} nel database di produzione, mentre vediamo lo stesso record di "_id" : ObjectId(" 50585fbcb046b2709a534502 ") nel database qa. Per le date vediamo "ld" : { "$date" : "2011-12-03T17:00:00Z"} nel database di prod, mentre "ld" :ISODate("2011-12-03T17:00:00Z") nel database qa. Abbiamo testato con successo le nostre query nell'ambiente qa, ma preoccupato potrebbe non riuscire nella produzione

1) Le mie query java funzioneranno perfettamente sul prod & qa entrambi? (Sto usando morfide apis per interrogare) 2) Sono internamente memorizzati nello stesso identico modo?

+0

FYI per chiunque stia cercando di ottenere un semplice JSON (ad es. '{" $ Oid ": x}' invece di 'ObjectId (x)' dal client della riga di comando 'mongo': prova ad usare' mongoexport' invece – rakslice

risposta

17

di rispondere alle due domande:

  1. Sì lo faranno
  2. sì sono lo stesso, è semplicemente la rappresentazione all'interno della voce che si sta cercando in (console o app) di come essi mostrano . Console (versioni successive comunque, circa 1.4+) visualizzerà ObjectId e ISODate (normalmente) mentre la raccolta direttamente dalla lingua del server (Java nel tuo caso) tenderà a mostrare le proprietà complete degli oggetti ($oid e $date in questo caso).
+0

Quindi non è correlato a nessuna versione del driver ecc. In realtà è un dato, perché in 'prod' usiamo uno strumento per guardare i dati, dove come in "qa" usiamo la riga di comando per guardare i dati inseriti. –

+0

@KumarManish nah tutte le versioni dei driver dovrebbero essere coerenti su questo fronte, sì lo strumento sta semplicemente acquisendo i dati in formato normale (o persino traducendoli alla fine per farli sembrare così) mentre la console traduce tutti gli oggetti in il tuo documento – Sammaye

+0

Ho appena verificato con qualcuno l'accesso manuale al database di produzione e ho visto che le versioni qa e prod sono state mostrate esattamente come me. –

Problemi correlati