Tengo muchos a muchos modelos de datos relacionales. Por ejemplo, tengo una sala de chat y tiene muchos usuarios. {Chatroom: ChatRoomID:ID, Somedata... Usuario:{ ID:userid, Somedata... } } Tengo un objeto de usuario y necesito filtrarlos por usuario.
DataStore.query(ChatRoom,e=>e.User.Id("eq",myID))
Traté de consultar los datos que tienen mi ID de usuario y luego obtuve el ChatRoomID. Pero no funcionó como se esperaba. Puedo filtrarlo con sus teclas principales, pero no puedo pasar por dentro del objeto para filtrar. Actualmente estoy haciendo esto igual que el documento aws. cual es-->
DataStore.query(ChatRoom).filter(e=> e.user.id==myID)
Mi preocupación es, ¿esta consulta anterior obtiene todos los datos para filtrar? Para el primero, parece que obtiene los datos filtrados como consultas de selección como lo hacemos en SQL. Pero estoy preocupado por usar el segundo. ¿Qué pasa si tengo 100.000 habitaciones y 500.000 usuarios dentro? ¿Se obtienen todos los datos antes de filtrar con funciones de JavaScript como filtro, mapa, etc.? No entiendo la lógica detrás.