¿Qué base de datos debo usar si necesito almacenar una gran cantidad de datos?¿Base de datos para cantidades ENORMES de datos?
Respuesta
Algunas de las mayores bases de datos en el mundo se ejecutan en el servidor SQL de Microsoft: http://www.microsoft.com/sql/prodinfo/compare/wintercorp.mspx
Y aquí está una lista de las 10 bases de datos más grandes del mundo (aunque no tengo ni idea de cómo es exacta):
http://www.scribd.com/doc/83088207/The-Top-Ten-Largest-Databases-in-the-World
la parte superior es el centro mundial de datos sobre el clima con 220 terabytes de datos de la web y 6 petabytes de datos adicionales
correctamente configurado Oracle o Microsoft de SQL Server debe ser capaz de manejar cualquier cosa que lanzar en él.
Ver también which db should i select if performance of postgres is low
Yahoo utiliza PostgeSQL - http://postgresqldbnews.blogspot.com/2008/05/world-largest-database-runs-on-postgres.html
Google utiliza MySQL - http://www.mysql.com/customers/customer.php?id=75
que he visto en bases de datos Oracle en los cientos de conciertos a terabyte gama
Lo mismo sucede con DB2
No he visto nada personalmente en SQL Server i nto al rango de terabyte, pero bien puede serlo
Google no usa MySQL como es, hay algunos blogs que dicen exactamente lo que hizo Google. Recogieron MySQL y programaron todas las características nuevas que no se encuentran en una versión de descarga de MySQL. Es por eso que MySQL está trabajando junto con Google para ofrecer nuevas versiones. – balexandre
Gran cantidad de bases de datos de Terrabyte SQl Server. – HLGEM
Similar a lo que dijo balexandre, ese artículo se relacionó con el hecho de que Yahoo personalizó fuertemente el backend para optimizarlo para lo que lo usan. Estas adiciones no están en el PostgreSQL normal. – Powerlord
Depende de lo que usted quiera decir con enorme. Los índices estarán en orden y las consultas realizadas deberán ser optimized as best as possible. He trabajado con lo que considero grandes bases de datos en Microsoft SQL Server (11 millones de registros diarios de eventos en una gran empresa automotriz mundial) y en PostGRES (varios millones de registros también para datos GIS).
para obtener una respuesta significativa que podría ayudar t o sabe lo que considera una cantidad muy grande de datos. También ayudaría saber para qué se usaría y cómo se organizaría.
Si se trata de gigabytes de datos, la mayoría de las bases de datos estarían bien.
Si se trata de terabytes de datos, estoy bastante seguro de que Oracle o SQL Server no tendrán ningún problema. Si están configurados y diseñados correctamente.
Si es más grande ... algo así como bigtable.
También vale la pena señalar que MySQL es capaz de entregar tamaños de datos en un rango similar a Oracle o SQL Server. Se puede encontrar más información en wikipedia: http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems – cdeszaq
Probablemente más importante que saber qué tan grande es grande es saber qué es lo que quiere hacer con la base de datos. Si se trata de un OLTP, entonces estarás bien con cualquiera de los jugadores principales como se contestó anteriormente, pero si se trata de una herramienta de informes, es posible que quieras investigar Alterian y Sybase IQ en su lugar.
Realmente depende de lo que sea su idea de enorme, y lo que quiere hacer con ella. Para acceso similar a SQL:
- Gigabytes de datos puede ser manejado fácilmente por cualquier producto comercial o FOSS.
- cientos de gigabytes + por lo general significa algo así como Teradata
Para un procesamiento más especializado, Hadoop y HBase son apropiados. (Existen varios productos similares, incluidos Sector/Sphere y GridGain, por nombrar un par). Hadoop es una arquitectura de computación en nube modelada en el sistema de archivos de Google, y puede albergar cientos de petabytes. HBase es una "base de datos" que se ejecuta en Hadoop, con capacidades similares. Digo "base de datos" porque está orientado a columnas, un modelo muy diferente de las bases de datos orientadas a filas como MySQL, PostreSQL, Oracle, etc.
Hadoop/HBase son más adecuados para el almacenamiento de datos, o situaciones donde se puede Precompute las consultas que deberá ejecutar y haga que se ejecuten fuera de banda a través del MapReduce.
Recuerde que una base de datos grande es mucho más difícil que simplemente elegir la base de datos. Todas las consultas deberán optimizarse, la indexación es crítica y usted debe tener el hardware capaz de entregar los datos. Es posible que deba diseñar un esquema de partición para separar los datos de manera adecuada para garantizar un mejor acceso. Las técnicas y los diseños deficientes que puede utilizar en bases de datos más pequeñas causan problemas enormes en bases de datos grandes. ¡No hagas esto sin invertir en un buen libro de ajuste de rendimiento! Comprenda la optimización del rendimiento antes de diseñar la base de datos.
Cualquiera que sea la base de datos que elija, asegúrese de obtener la versión completa de Enterprise. Probablemente necesites características que tienen estas versiones que las versiones menos destacadas y más baratas no tienen.
Oracle, SQL Server, db2, etc. manejarán grandes bases de datos de enterpise. Si los maneja bien dependerá de su hardware, su diseño y sus consultas. Esta no es una tarea de diseño para los inexpertos.
This posting I made a few weeks ago discute los méritos relativos de Oracle y SQL Server para aplicaciones VLDB con un segue en los sistemas de compartición nula (de los cuales el ejemplo más conocido es Teradata) que le dan el mejor grado de escalabilidad a través de tener ningún cuello de botella central de E/S .
Podría ser un buen comienzo.
Revisamos Sybase IQ (http://en.wikipedia.org/wiki/Sybase_IQ), pero decidimos que nuestro almacén de datos no es lo suficientemente grande como para garantizarlo.
Como DBA, aquí está la verdadera respuesta.
La mejor plataforma de base de datos en el mundo puede ser incapaz de manejar las cargas más pequeñas si no tiene personal que sepa cómo usarla.
Una plataforma de base de datos bastante baja puede escalar hasta grandes cargas si tiene personal que la conoce por dentro y por fuera y soluciona sus deficiencias.
Es por eso que algunas personas dicen que Oracle no puede escalar, y por qué otras personas dicen que MySQL puede gobernar el mundo. Un buen músico todavía puede hacer algunos sonidos hermosos con un instrumento horrible, y los músicos malvados no pueden hacer que los mejores instrumentos suenen bien.
Cuando esté decidiendo qué plataforma utilizar para su próximo proyecto, no vaya tirando los dados y utilizando una solución con la que no tiene experiencia. Si realmente necesita ampliar, use la solución que conoce por dentro y por fuera, o contrate a alguien que conozca la nueva solución por dentro y por fuera.
La conclusión (último párrafo) es genial, pero ¿La vaga afirmación "* es por eso que algunas personas dicen que Oracle no puede escalar, y por qué otras personas dicen que MySQL puede gobernar el mundo * "parece un ataque indirecto a MySQL por parte de un fan de * otra * religión de base de datos? – Pacerier
@Pacerier Lo siento, debería haber sido más específico: algunas personas dicen que MySQL puede gobernar el mundo, lo que significa que esas personas creen que siempre es la plataforma de base de datos adecuada, independientemente de los requisitos del cliente. –
Por eso, cuando realmente tiene que tratar con grandes cantidades de datos, la primera persona que debe contratar es un desarrollador de bases de datos con gran experiencia en datos, no un desarrollador de aplicaciones. Hacer una pregunta como esta es un indicador de que actualmente no cuenta con las personas adecuadas para hacer esto con éxito. – HLGEM
Sybase IQ es una excelente opción siempre que esté leyendo más que escribiendo. IQ no es particularmente rápido para escribir, pero es increíblemente rápido para leer. IQ alberga el world's biggest data warehouse (1 petabyte)
En comparación con Oracle, DB2 y SQL Server, las tarifas de licencia también son bastante bajas y los requisitos de hardware también son más bajos. La desventaja es que el soporte, la documentación y las herramientas son un poco delgados (como lo son los desarrolladores de IQ experimentados y DBA)
incluso en 09 1 petabyte no era tanta información ... – Leonardo
- 1. Trazando cantidades masivas de datos
- 2. Procesando grandes cantidades de datos usando multiprocesamiento
- 3. Cargando y analizando cantidades masivas de datos
- 4. Mejor almacén de datos para grandes cantidades de datos con gran cantidad de lecturas y escrituras
- 5. ¿Cuál es la alternativa a los cursores para recuperar grandes cantidades de datos de una base de datos?
- 6. Diseño de base de datos para gran cantidad de datos
- 7. Práctica recomendada para almacenar grandes cantidades de datos con J2ME
- 8. Almacenar grandes cantidades de datos: ¿DB o sistema de archivos?
- 9. Archivar grandes cantidades de datos antiguos en SQL Server
- 10. aplicación de base de multiproceso Delphi no con grandes cantidades de datos
- 11. patrón de 3 niveles y grandes cantidades de datos
- 12. Base de datos ideal para datos de geo (mapa)
- 13. Cifrado de datos para almacenamiento en la base de datos
- 14. Esquema de la base de datos para almacenar datos SNMP
- 15. ASP.NET MVC: devolver grandes cantidades de datos de FileResult
- 16. Restful API - manejo de grandes cantidades de datos
- 17. Base de datos de Google Analytics
- 18. OutOfMemory al leer grandes cantidades de datos usando Hibernate
- 19. Base de datos horizontal y base de datos vertical
- 20. ¿Crear una base de datos desde otra base de datos?
- 21. Exportar grandes cantidades de datos al cliente en asp.net
- 22. LINQ Consulta para insertar datos en la base de datos
- 23. ¿Proporcionar datos base para la aplicación de datos básicos?
- 24. Base de datos de muestra para PostgreSQL
- 25. Enlace de base de datos para OCaml?
- 26. Base de datos de objetos para .NET
- 27. Base de datos de gráficos para .NET
- 28. base de datos de CTAG para Go
- 29. base de datos independiente
- 30. base de datos node.js
Hadoop no es una base de datos – skaffman
Probablemente quiso decir HBase (http://hbase.apache.org/) :) – Richie