Tengo un problema donde necesito cargar una gran cantidad de datos (5+ mil millones de filas) en una base de datos muy rápidamente (idealmente menos de 30 minutos pero más rápido es mejor), y recientemente me sugirieron investigar postgresql (Fallé con mysql y estaba mirando hbase/cassandra). Mi configuración es Tengo un clúster (actualmente 8 servidores) que genera una gran cantidad de datos, y estaba pensando en ejecutar las bases de datos localmente en cada máquina del clúster, escribe rápidamente localmente y luego al final (oa través de la generación de datos) los datos fusionados. Los datos no están en ningún orden, así que no me importa en qué servidor específico esté (siempre y cuando esté allí).Auto sharding postgresql?
Mis preguntas son, ¿hay buenos tutoriales o lugares para aprender sobre PostgreSQL auto sharding (encontré resultados de firmas como Sykpe haciendo auto sharding pero no tutoriales, quiero jugar con esto yo mismo)? ¿Es lo que estoy tratando de hacer posible? Debido a que los datos no están en ningún orden, iba a utilizar el número de ID de incremento automático, ¿causará un conflicto si los datos se combinan (esto ya no es un gran problema)?
Actualización: La idea de Frank a continuación eliminó el problema del autoincremento de conflicto sobre el que estaba preguntando. La pregunta es básicamente ahora, ¿cómo puedo aprender sobre auto sharding y soportaría cargas distribuidas de datos a múltiples servidores?
He cargado ~ 10 millones de filas en una base de datos de postgres en <5 min, por lo que puedo decirle con confianza que este es un recurso muy importante al que apoyarse cuando carga datos en un solo fragmento: http: // www .postgresql.org/docs/8.1/static/populate.html Esto también se ve prometedor: http://pgbulkload.projects.postgresql.org/ –
'Iba a utilizar el número de ID de incremento automático, ¿eso causará un conflicto si los datos se combinan? 'Simplemente incremente en 10, y comience en diferentes desplazamientos. El servidor 1 usa los identificadores 1,11,21,31; el servidor 2 usa identificadores 2,12,22,32 –
@FrankFarmer Gracias por el enlace y la gran idea de: incrementar. Creo que eso quita parte de la complejidad, entonces supongo que la pregunta solo está relacionada con el autodesmenuzamiento y las cargas distribuidas. – Lostsoul