tiempo studio real practices datos data borrar best firebase

studio - Rendimiento de Firebase con grandes conjuntos de datos



firebase javascript (1)

Estoy probando firebase para un proyecto que puede tener un número razonablemente grande de claves, potencialmente millones.

He probado cargar unos 10k de registros usando un nodo, y el rendimiento de carga parece bueno. Sin embargo, la interfaz de usuario web "FORGE" se vuelve inútilmente lenta y representa cada registro individual si amplío mi nodo raíz.

¿Firebase no está diseñado para este volumen de datos o estoy haciendo algo mal?


Es simplemente las limitaciones de la interfaz de usuario de Forge. Todavía es bastante rudimentario.

Las funciones en tiempo real de Firebase no solo son adecuadas, sino que están diseñadas para grandes conjuntos de datos. El hecho de que los registros se transmitan en tiempo real es perfecto para esto.

El rendimiento es, al igual que con cualquier aplicación de datos de gran tamaño, tan bueno como su implementación. Así que aquí hay algunos inconvenientes para tener en cuenta con grandes conjuntos de datos.

DENORMALIZAR, DENORMALIZAR, DENORMALIZAR

Si un conjunto de datos se iterará y sus registros se contarán en miles, guárdelo en su propia ruta.

Esto es malo para iterar grandes conjuntos de datos:

/users/uid /users/uid/profile /users/uid/chat_messages /users/uid/groups /users/uid/audit_record

Esto es bueno para iterar conjuntos de datos grandes:

/user_profiles/uid /user_chat_messages/uid /user_groups/uid /user_audit_records/uid

Evite el "valor" en grandes conjuntos de datos

Use child_added ya que el value debe cargar todo el conjunto de registros al cliente.

Esté atento a las operaciones de value oculto en los niños

Cuando llama a child_added , básicamente está llamando value en cada registro de niño. Entonces, si esos niños contienen grandes listas, tendrán que cargar todos esos datos para regresar. Por lo tanto, la sección DENORMALIZAR arriba.