¿Obtener los nombres de los nodos secundarios de Firebase sin obtener también a sus hijos en la respuesta de Firebase?

Tengo la siguiente jerarquía en Firebase, algunos datos están ocultos por confidencialidad:

Estoy intentando obtener una lista de ID de videos (subrayados en rojo)

¡Solo puedo obtener todos los nodos, luego detectar sus nombres y almacenarlos en una matriz!
Pero esto provoca un bajo rendimiento; porque eldataSnapshot desde mi base de firebase es muy grande en mi caso, por lo que quiero evitar recuperar todo el contenido de los nodos y luego hacer un bucle sobre ellos para obtener ID, solo necesito recuperar los ID, es decir, sin sus elementos anidados.

Aquí está mi código:

new Firebase("https://PRIVATE_NAME.firebaseio.com/videos/").once(
    'value', 
    function(dataSnapshot){ 

        // dataSnapshot now contains all the videos ids, lines & links
        // this causes many performance issues

        // Then I need to loop over all elements to extract ids !
        var videoIdIndex = 0;
        var videoIds = new Array();

        dataSnapshot.forEach(
            function(childSnapshot) {
                videoIds[videoIdIndex++] = childSnapshot.name();
            }
        );

    }
);

¿Cómo puedo recuperar solo las ID para evitar la gran cantidad de transferencia de datos y para evitar el bucle sobre los datos recuperados para obtener las ID? ¿hay una manera de simplemente recuperar estos identificadores directamente?

Respuestas a la pregunta(2)

Su respuesta a la pregunta