MongoDB シェルは、バイナリ データを Base64 でエンコードされた文字列として出力し、関数呼び出しのように見えます。
"_id" : BinData(0,"e8MEnzZoFyMmD7WSHdNrFJyEk8M=")
「0」はどういう意味ですか?
http://docs.mongodb.org/manual/reference/mongodb-extended-json/#binary
BSON の BinData データ型は、シェルのクラス BinData を介して表されます。詳細については実行help misc
してください。
> new BinData(2, "1234")
BinData(2,"1234")
シェルから
help misc
b = new BinData(subtype,base64str) create a BSON BinData value
あなたの0
場合はBSONサブタイプです
binary ::= int32 subtype (byte*) Binary - The int32 is the number of bytes in the (byte*).
subtype ::= "\x00" Generic binary subtype
| "\x01" Function
| "\x02" Binary (Old)
| "\x03" UUID (Old)
| "\x04" UUID
| "\x05" MD5
| "\x80" User defined
このスレッドの同様の質問
http://groups.google.com/group/mongodb-dev/browse_thread/thread/1965aa234aa3ef1e
それらはBSONサブタイプに対応していると思います:
サブタイプ ::= "\x00" バイナリ/ジェネリック | "\x01" 関数 | "\x02" バイナリ (古い) | "\x03" UUID | "\x05" MD5 | "\x80" ユーザー定義
それを見ると、0
ほとんどの場合、それが有効な選択であるように見えます。