Documentos y BSON
Los tipos de BSON, Extended JSON, el orden de comparación y la collation, como en MongoDB.
TeselaDB guarda documentos BSON con todos sus tipos: double, string, documento, array, binario, ObjectId,
booleano, fecha, null, expresión regular, JavaScript, int, long, Decimal128, Timestamp, MinKey y MaxKey.
Lo que escribe tu driver es exactamente lo que vuelve a leer.
Extended JSON
Las herramientas que hablan JSON (mongoexport, mongoimport, la API REST) usan Extended JSON v2 en sus modos
canónico y relajado, con las mismas reglas que MongoDB.
Orden de comparación
Dos valores de tipos distintos se comparan por tipo y luego por valor, en el orden de MongoDB: MinKey, null,
números, cadenas, documentos, arrays, binarios, ObjectId, booleanos, fechas, Timestamp, expresiones regulares y
MaxKey. Los números se comparan por su valor aunque sean de tipos distintos.
Collation
Las comparaciones de texto con collation usan los mismos datos de Unicode que MongoDB 9.0 (ICU 57.1), así que el
orden y la igualdad de las cadenas con acentos, mayúsculas o en otros alfabetos coinciden con los de MongoDB.
db.clientes.find({ apellido: "lópez" }).collation({ locale: "es", strength: 1 });Lo que cambia respecto a MongoDB
- Una cadena o un nombre de campo que no es UTF-8 válido se rechaza con
InvalidBSON(22). MongoDB lo guarda. - Un
findsinsortdevuelve los documentos en el orden de su clave dentro del rango, no en el de inserción. MongoDB no garantiza ningún orden sinsort; si tu aplicación necesita uno, pídelo consort.