Rendimiento de Firebase: ¿Cuántos hijos por nodo?

Si un nodo tiene 100 millones de niños, habrá un impacto en el rendimiento si yo:

a) Consulta, pero limite a 10 resultados

b) Observe solo a uno de los niños

Podría dividir los datos en múltiples padres, pero en mi caso tendré una referencia al niño para que pueda buscarlo directamente (lo que reduce la complejidad). Si hay un impacto, ¿cuál es el número máximo para cada escenario antes de degradar el rendimiento?

Si un nodo tiene tantos hijos, acceder al nodo de cualquier manera es una receta para problemas. El acceso a un niño individual nunca es un problema.

La consulta al nodo de un subconjunto de sus hijos aún requiere que la base de datos considere cada uno de esos hijos. Si solicita los últimos 10 de cada 100 millones de artículos, le está pidiendo a la base de datos que considere 999.999.990 artículos que aparentemente no le interesan.

Es imposible decir cuál es el máximo sin una descripción más concreta del tamaño de los datos, los criterios de ordenamiento, etc. Pero, para ser sincero, incluso entonces, lo mejor que es probable que obtenga es un valor con una gran varianza que es probable para cambiar con el tiempo

Lo mejor que puede hacer en Firebase (y la mayoría de las soluciones NoSQL) es modelar los datos de una manera que se adapte a la forma en que su aplicación utiliza esos datos. Por ejemplo, si necesita mostrar los últimos 10 elementos a sus usuarios, almacene las (claves de) los últimos 10 elementos en una lista separada.

items -K........0 title: "Firebase Performance: How many children per node?" body: "If a node has 100 million children, will there be a performance impact if I:..." -K........1 title: "Firebase 3x method won't working in real device but worked in simulator swift 3.0" body: "Hi we are working with google firebase 3x version and we faced..." . . . -K999999998 -K999999999 recent -K999999990: true -K999999991: true -K999999992: true -K999999993: true -K999999994: true -K999999995: true -K999999996: true -K999999997: true -K999999998: true -K999999999: true 

No estoy seguro si obtuve el número correcto de nueves allí, pero espero que entiendas la idea.