Un billón es un gran número. Necesitaría una implementación para manejar grandes números. También necesitaría una función de hash que asigne su clave de fragmentación a un gran número entre 0 y (10 ^ 12-1).
Como seguramente tendrá servidores que fallan todo el tiempo, deberá considerar lo siguiente:
- Patrones de acceso: ¿escribirás en lotes? Leer ordenado?
- Redundancia de datos. ¿O puede permitirse perder datos? Lea sobre el teorema de CAP para algunos problemas que esto atrae. ¿Utiliza CRDT de soporte de casos?
- Manejo de failover.
- Manejo de la putrefacción de bits en el servidor mediante la reparación continua del clúster.
- Dado que tendrá tantos servidores, seguramente tendrá que automatizar tareas como copias de seguridad, restauración y reequilibrio de datos y consolidación de datos faltantes.
- Localidad de datos. Con tantos servidores habrá mucha chatiness entre ellos. Debes descubrir cómo minimizar esto. Usar un protocolo de chismes sería una alternativa. También podría dividir los servidores en jerarquías celulares.
- Dónde almacenar sus servidores y cómo pagarlos 🙂
Eche un vistazo a Cassandra, HBase y Riak y cómo se implementan.
- ¿Cómo se usa la programación reactiva funcional para aplicaciones web?
- Soy un recién graduado y no tengo 2 años de historial laboral, pero puedo crear aplicaciones web o aplicaciones de escritorio. ¿Cómo puedo pasar el RRHH y obtener una entrevista técnica para demostrar mis habilidades?
- ¿Puedo usar mi habilidad de ds y algoritmos en el desarrollo de software en tiempo real, como aplicaciones web que usan Java?
- ¿Cuánto dinero gana un consultor / freelance decente de django?
- ¿Cuál es la mejor manera de hacer que las aplicaciones web se muestren de la misma manera en todos los navegadores?
Por último, pero no menos importante, esta no es una pregunta realista. Pregunta de la entrevista?