Qué cambia respecto a MongoDB
Las diferencias que más notarás al pasar de MongoDB a TeselaDB, casi todas garantías más fuertes.
TeselaDB
Equipo de TeselaDB
2 min de lectura
- MongoDB
- compatibilidad
- migración
TeselaDB implementa el protocolo de MongoDB 9.0, y la batería de compatibilidad compara sus respuestas con las de un servidor MongoDB real. Aun así, hay comportamientos que cambian. Casi todos son garantías más fuertes; unos pocos te piden revisar tu código.
Garantías más fuertes
- Una búsqueda con
$searchve todas las escrituras confirmadas antes de que empiece. No tienes que esperar a que el índice se ponga al día. _ides único en todo el clúster. Un índice único también lo es, sin llevar la shard key como prefijo.- Las lecturas
localyavailabledevuelven siempre datos confirmados por la mayoría. - Las puntuaciones de búsqueda usan las estadísticas de toda la colección y son las mismas en todas las réplicas.
Lo que tienes que revisar
- Un
findsinsortdevuelve los documentos en el orden de su clave. Si tu aplicación depende de otro orden, añadesort. - Lo que MongoDB marca como obsoleto en la versión 9.0 no existe, como
$substrofilemd5. Cambia cada uso por su sustituto. Lo obsoleto que los drivers ymongoshsiguen enviando, comoisMaster, se mantiene. - Una clave que siempre crece, como un
ObjectIdo una fecha de creación, concentra las escrituras en el último rango. En colecciones con mucho tráfico, usa otra clave o un índice conteselaBuckets.
Lo que se añade
Cada nodo sirve además una API REST con OpenAPI y un servidor MCP para agentes. También hay parámetros de clúster
propios, como teselaHistoryRetention, que fija cuánto historial se conserva. Nada de esto cambia el protocolo de
MongoDB, así que solo lo usas si te conviene.
La lista completa, con qué hacer en cada caso, está en Diferencias con MongoDB, y el estado de cada orden y de cada operador o etapa, en Compatibilidad.