Pregunta

Mucha gente utiliza el término grandes volúmenes de datos en un lugar comercial manera, como un medio de indicar que los grandes conjuntos de datos están involucrados en el cálculo, y soluciones, por tanto, potenciales deben tener un buen rendimiento. Por supuesto, grandes volúmenes de datos términos siempre llevan asociados, como la escalabilidad y la eficiencia, pero lo que define exactamente un problema como un grandes datos problema?

¿El cálculo tiene que estar relacionado a un conjunto de propósitos específicos, como la recuperación de la minería de datos / información, o podría un algoritmo para problemas generales de gráficos se etiquetará grandes volúmenes de datos si el conjunto de datos fue lo suficientemente grande ? Además, ¿cómo grande es lo suficientemente grande (si esto es posible definir)?

¿Fue útil?

Solución

Para mí (que viene de un fondo de base de datos relacional), "Big Data" no es principalmente sobre el tamaño de los datos (que es la mayor parte de lo que las otras respuestas son hasta ahora).

"Big Data" y "Bad datos" están estrechamente relacionados. Bases de datos relacionales requieren datos 'vírgenes'. Si los datos están en la base de datos, es preciso, limpio, y 100% fiable. Bases de datos relacionales requieren "Gran datos" y una enorme cantidad de tiempo, dinero y la rendición de cuentas se almacenan en asegurándose de que los datos son bien preparado antes de cargarlo en la base de datos. Si los datos están en la base de datos, es el 'evangelio', y define el sistema de comprensión de la realidad.

"Big Data" aborda este problema desde la otra dirección. Los datos no está bien definido, gran parte de ella puede ser inexacta, y gran parte de ella puede de hecho ser falta. La estructura y el diseño de los datos es lineal en lugar de relacional.

Big Data tiene que tener suficiente volumen para que la cantidad de datos erróneos o datos que faltan se vuelve estadísticamente insignificante. Cuando los errores en sus datos son bastante comunes a anularse entre sí, cuando los datos que faltan es proporcionalmente suficientemente pequeño como para ser insignificante y cuando sus necesidades y algoritmos de acceso a datos son funcionales incluso con datos incompletos e inexactos, entonces usted tiene "Big Data" .

"Big Data" no es realmente sobre el volumen, se trata de las características de los datos.

Otros consejos

Como muy bien nota, en estos días "Big Data" es algo que todo el mundo quiere decir que tienen, lo que implica una cierta flojedad en cómo las personas definen el término. En general, sin embargo, yo diría que sin duda está tratando con grandes volúmenes de datos si la escala es tal que ya no es viable para gestionar con las tecnologías más tradicionales, como RDBMS, al menos sin complementándolos con las tecnologías de datos grandes, tales como Hadoop.

¿Qué tan grande que sus datos tiene que ser hecho para que eso sea el caso es discutible. Aquí hay una (un tanto provocativa) entrada de blog que las afirmaciones de que en realidad no es el caso por menos de 5 TB de datos. (Para que quede claro, no tiene la pretensión "Menos de 5 TB de datos no es grande", pero sólo "Menos de 5 TB no es lo suficientemente grande que necesita Hadoop".)

Pero incluso en pequeños conjuntos de datos, tecnologías de datos grandes como Hadoop pueden tener otras ventajas, incluyendo el ser bien adaptado a las operaciones por lotes, jugando bien con datos no estructurados (así como los datos cuya estructura no se conoce de antemano, o podría cambiar), escalabilidad horizontal (escalar añadiendo más nodos en lugar de ejercitar sus servidores existentes), y (como uno de los comentaristas en las notas post anterior-enlazados) la capacidad de integrar los datos de procesamiento con conjuntos de datos externos (pensar en un mapa a reducir donde el asignador hace una llamada a otro servidor). Otras tecnologías asociadas a los grandes volúmenes de datos, como bases de datos NoSQL, hacen hincapié en el rendimiento rápido y disponibilidad constante, mientras que se trata de grandes conjuntos de datos, así también ser capaz de manejar los datos semi-estructurados y para escalar horizontalmente.

Por supuesto, RDBMS tradicionales tienen sus propias ventajas, incluyendo el ácido garantías (atomicidad, coherencia, aislamiento, durabilidad) y un mejor rendimiento para ciertas operaciones, además de ser más estandarizada, más maduro, y (para muchos usuarios) más familiar. Así que incluso para indiscutiblemente "grandes" de datos, que pueden dar sentido a la carga de al menos una parte de sus datos en una base de datos SQL tradicionales y la utilización que, en conjunción con las tecnologías de datos grandes.

Por lo tanto, una definición más generosa sería que usted tiene grandes volúmenes de datos, siempre y cuando sea lo suficientemente grande que las tecnologías de datos grandes proporcionan un valor añadido para usted. Pero como se puede ver, que puede depender no sólo del tamaño de los datos, sino en la forma en que desea trabajar con él y qué tipo de requisitos que tiene en términos de flexibilidad, consistencia y rendimiento. ¿Cómo que está utilizando sus datos es más relevante para la cuestión de lo que lo está utilizando de (por ejemplo, la minería de datos). Dicho esto, usos, como la minería de datos y aprendizaje automático son más propensos a producir resultados útiles si tiene un gran conjunto de datos suficientes para trabajar.

La cantidad total de datos en el mundo: 2,8 zetabytes en 2012, que se estima llegar a 8 zetabytes 2015 ( fuente ) y con un tiempo de duplicación de 40 meses. No se puede obtener más grande que eso:)

Como ejemplo de una única organización grande, Facebook tira en 500 terabytes por día, en un almacén de 100 petabytes, y corre 70k consultas por día en él a partir de 2012 ( fuente ) su almacén actual es> 300 petabytes.

Big Data es probablemente algo que es una fracción bien de los números de Facebook (1/100 probablemente sí, probablemente no 1/10000: no es un espectro de un solo número).

Además del tamaño, algunas de las características que lo hacen "grandes" son:

  • se analiza de forma activa, no sólo almacenado (cita "Si usted no está tomando ventaja de grandes volúmenes de datos, entonces no tienen grandes volúmenes de datos, usted tiene sólo un montón de datos" Jay Parikh @ Facebook)

  • la construcción y funcionamiento de un almacén de datos es un importante proyecto de infraestructura

  • está creciendo a un ritmo significativo

  • es no estructurada o tiene estructura irregular

Gartner definición: "Big data es de gran volumen, alta velocidad y / o activos de gran variedad de información que requieren nuevas formas de procesamiento" (El 3VS) Así también piensan "grandeza" no es del todo sobre el tamaño de la conjunto de datos, sino también acerca de la velocidad y la estructura y el tipo de herramientas necesarias.

Para mí Big Data es principalmente acerca de las herramientas (después de todo, que es donde empezó); un "gran" conjunto de datos es uno que es demasiado grande para ser manejado con herramientas convencionales - en particular, lo suficiente, grande para el almacenamiento y procesamiento de la demanda en un clúster en lugar de una sola máquina. Esto descarta un RDBMS convencional, y exige nuevas técnicas para la transformación; en particular, diversos marcos Hadoop-como que sea fácil de distribuir un cálculo sobre un grupo, a costa de la restricción de la forma de este cálculo. Voy a segunda referencia a la http://www.chrisstucchio.com/blog/2013/hadoop_hatred.html; técnicas de grandes volúmenes de datos son el último recurso para los conjuntos de datos que son simplemente demasiado grande como para manejar cualquier otra manera. Yo diría que cualquier conjunto de datos para cualquier propósito podría calificar si era lo suficientemente grande - aunque si la forma del problema es tal que las herramientas existentes "grande" de datos no son apropiadas, entonces probablemente sería mejor para llegar a un nuevo nombre.

Por supuesto, hay cierta superposición; cuando (brevemente) trabajé en last.fm, se ha trabajado en el mismo conjunto de datos 50 TB utilizando Hadoop y también en una base de datos SQL en un servidor bastante ridícula (recuerdo que tenía de 1 TB de RAM, y esto es hace unos años). Que en cierto sentido significaba que tanto era y no era grande de datos, dependiendo del trabajo que estaba trabajando. Pero creo que eso es una caracterización precisa; las personas que trabajaron en los trabajos de Hadoop encontrado que es útil ir a conferencias y sitios web de grandes volúmenes de datos, mientras que las personas que trabajaron en los trabajos de SQL no lo hicieron.

Los datos se convierte en "grande" cuando un equipo mercancía ya no puede manejar la cantidad de datos que tiene. Denota el punto en el que usted necesita para empezar a pensar en la construcción de los superordenadores o el uso de grupos para procesar sus datos.

Big Data se define por el volumen de datos, es cierto, pero no sólo. La particularidad de grandes volúmenes de datos es que se necesita para almacenar una lotes varios y, a veces no estructurada telas todos los tiempos y desde una toneladas de sensores , por lo general durante años o diez años .

Además se necesita algo escalable, de modo que no te lleva la mitad de un año para encontrar una copia de los datos.

Así que aquí está llegado grandes volúmenes de datos, donde el método tradicional no funcionará más. SQL no es escalable. Y SQL trabaja con datos muy estructurados y vinculados (con todos aquellos primaria y el desorden clave externa, innerjoin, solicitud imbricada ...).

Básicamente, porque el almacenamiento se hace más y más barato y los datos se hace más y más valiosa, director de Big Ask ingeniero para los registros de todo. Añádase a esto un montón de nuevos sensores con todos los móviles, redes sociales, etc ... cosas Embebido. Así como los métodos clásicos no va a funcionar, tienen que encontrar nuevas tecnologías (almacenar todo en los archivos, en formato JSON, con gran índice, lo que llamamos NoSQL).

Así que grandes volúmenes de datos puede ser muy grande, pero puede no ser tan grande, pero complexe datos no estructurados o diferentes que tiene que ser rápida y tienda on-the-run en un formato en bruto. Nos centramos y almacenar en un primer momento, y luego nos fijamos en la forma de enlace de todo juntos.

voy a compartir lo que Big Data es como en la genómica, en particular, de-novo montaje.

Cuando secuenciamos su genoma (por ejemplo: detectar nuevos genes), tomamos mil millones de próxima generación corto lee. Vistazo a la imagen de abajo, donde tratamos de montar algunas lecturas.

 introducir descripción de la imagen aquí

Esto parece simple? Pero lo que si usted tiene mil millones de los que lee? ¿Qué pasa si los lee contener errores de secuencia? ¿Qué pasa si la memoria RAM no tiene suficiente memoria para mantener las lecturas? ¿Qué hay de las regiones repetitivas de ADN, como la elemento Alu ?

De-novo montaje se realiza mediante la construcción de un De-Bruijn gráfico :

 introducir descripción de la imagen aquí

La gráfica es una estructura de datos-inteligente extraído para representar la superposición lee. No es perfecto, pero es mejor que la generación de todos los posibles solapamientos y almacenarlos en una matriz.

El proceso de montaje podría tardar días en completarse, ya que hay un buen número de caminos que un ensamblador tendría que recorrer y el colapso.

En la genómica, que tiene un conjunto de datos grande cuando:

  • No se puede forzar bruta todas las combinaciones
  • El equipo no tiene suficiente memoria física para almacenar los datos
  • Es necesario para reducir las dimensiones (por ejemplo: el colapso de caminos gráfico redundantes)
  • Usted obtener cabreado porque habría que esperar días para hacer cualquier cosa
  • Se necesita una estructura de datos especial para representar los datos
  • Es necesario filtrar el conjunto de datos de errores (por ejemplo: la secuencia de errores)

https://en.wikipedia.org/wiki/De_Bruijn_graph

Hay algo especial para los algoritmos de gráficos, preguntas originales que hace a continuación, especial, que se trata de que la capacidad para dividir los datos en esencia.

Para algunas cosas, como la clasificación números en una matriz que no es demasiado difícil de dividir el problema en la estructura de datos en trozos más pequeños disyuntivos, por ejemplo aquí: Paralelo en el lugar de combinación de tipo

Para algoritmos de grafos sin embargo no es el desafío que la búsqueda de una partición opcional en una métrica determinada gráfico es conocido por ser $ $ NP-duro.

Así, mientras que 10 GB de números para ordenar puede ser un problema muy bien accesible en un PC normal (Usted puede simplemente en el medio de la programación dinámica y tienen muy buena previsibilidad sobre el flujo del programa), trabajando con una estructura de datos gráfico de 10 GB puede ya desafiando.

Hay una serie de marcos especializados, tales como GraphX ?? utilizando métodos y paradigmas de computación especiales a algo circumvent los desafíos inherentes de gráficos.

Así que para responder a su pregunta brevemente: Como se ha mencionado antes por otros, cuando los datos no caben en la memoria principal en un PC normal, pero que necesita todo ello para responder a su problema, es un buen indicio de que sus datos ya es algo grande. El etiquetado exacto depende aunque pienso un poco en la estructura de datos y la pregunta preguntó.

Creo que grandes volúmenes de datos comienza en el punto donde el tamaño le impide hacer lo que quieren. En la mayoría de los escenarios, hay un límite en el tiempo de ejecución que se considera factible. En algunos casos se trata de una hora, en algunos casos podría ser pocas semanas. Mientras los datos no es lo suficientemente grande que sólo O (n) algoritmos puede ejecutar en el plazo de tiempo posible, que no llegó a grandes volúmenes de datos.

Me gusta esta definición ya que es independiente del volumen, el nivel de tecnología y algoritmos específicos. No es agnóstico a los recursos por lo que un estudiante graduado alcanzará el punto de modo considerable los datos antes de Google.

Con el fin de poder cuantificar qué tan grande es el dato, me gusta tener en cuenta el tiempo necesario para copia de seguridad de la misma. Dado que la tecnología avanza, los volúmenes que fueron consideradas grande hace unos años ahora son moderados. Tiempo de respaldo mejora, ya que la tecnología mejora, al igual que el tiempo de ejecución de los algoritmos de aprendizaje. Siento que es más sensato hablar de un conjunto de datos que se necesita X horas de copia de seguridad y no de un conjunto de datos de Y bytes.

PS.

Es importante tener en cuenta que incluso si usted alcanzó el gran punto de datos y no se puede ejecutar algoritmos de complejidad más de O (n) en el camino a seguir recto, hay mucho que puede hacer con el fin de seguir beneficiándose de tales algoritmos.

Por ejemplo, la selección de funciones puede reducir el número de características que muchos algoritmos de tiempo de funcionamiento depende. En muchas distribución de cola larga centrarse en los pocos elementos de la cabeza podría ser de beneficio. Se puede utilizar una muestra y se ejecutan en él los algoritmos más lentas.

Los datos son "Big Data" si es de tal volumen que es menos costoso para analizarlo en dos o más equipos de las materias primas, que en un ordenador de gama alta.

Esto es esencialmente cómo se originó el sistema de archivos de Google "BigFiles". Page y Brin no podían permitirse un servidor Sun fantasía para almacenar y buscar en su índice de páginas web, por lo conectó varios ordenadores de las materias primas

Estoy de acuerdo con lo que @ Dan Levin ya se ha dicho. En última instancia, ya que queremos llamar la información útil a partir de los datos en lugar de almacenarla, es el capacidad de los algoritmos / sistemas de aprendizaje que debe determinar lo que se llama "Big data". A medida que evolucionan los sistemas de lavado de lo que era grande de datos hoy en día ya no será Big Data mañana.

Una manera de definir Big data podría ser:

  • Big data : Los datos sobre los que no se puede construir modelos ML en tiempo razonable (1-2 horas) en una estación de trabajo típica (por ejemplo con 4 GB de RAM)
  • Los datos no-Grande : complemento de lo anterior

Si se asume esta definición, siempre y cuando la memoria ocupada por una fila individual (todas las variables de un solo punto de datos) no excede la memoria RAM de la máquina debemos ser estar en el Los datos no grandes régimen.

Nota: Vowpal Wabbit ( con mucho, el sistema de ML más rápido a partir de hoy) pueden aprender en cualquier conjunto de datos, siempre y cuando un (punto de datos fila individual) es no una limitación porque utiliza SGD en múltiples núcleos. Hablando desde la experiencia que puede entrenar un modelo con 10k características y 10mn de filas en un ordenador portátil en un día.

"Big Data" es, literalmente, sólo una gran cantidad de datos. Mientras que es más bien un término de marketing que otra cosa, la implicación es por lo general que tiene tal cantidad de datos que no se puede analizar todos los datos a la vez debido a la cantidad de memoria (RAM) que se necesitaría para mantener los datos en la memoria de procesar y analizar es mayor que la cantidad de memoria disponible.

Esto significa que los análisis por lo general tienen que ser hechas en segmentos al azar de los datos, que permite que los modelos que se construirán para comparar contra otras partes de los datos.

Licenciado bajo: CC-BY-SA con atribución
scroll top