Mucha gente usa el término big data de una manera bastante comercial , como una forma de lo que indica que en el cálculo participan grandes conjuntos de datos y, por lo tanto, las posibles soluciones deben tener un buen rendimiento. Por supuesto, big data siempre conlleva términos asociados, como escalabilidad y eficiencia, pero ¿qué define exactamente un problema como un problema de big data ?

¿El el cálculo debe estar relacionado con un conjunto de propósitos específicos, como la extracción de datos / recuperación de información, o un algoritmo para problemas generales de gráficos podría etiquetarse como big data si el conjunto de datos fuera suficientemente grande ? Además, ¿qué tan grande es suficientemente grande (si es posible definirlo)?

Comentarios

  • Un buen artículo sobre cuándo sus datos comienzan a ser demasiado grandes para el uso normal chrisstucchio.com/blog/2013/hadoop_hatred.html
  • » Cualquier cosa también grande para cargar en Excel » es la broma corriente.
  • Eso depende de si solo se incluye como una palabra de moda.
  • Es ‘ exactamente 1 GB. Ese ‘ es el límite en el libro de reglas. No hay lugar para la ambigüedad.
  • Esta es una excelente pregunta. Como lo indica la variedad de respuestas, la definición es … indefinida

Respuesta

Para mí (próximamente desde una base de datos relacional), «Big Data» no se trata principalmente del tamaño de los datos (que es la mayor parte de lo que son las otras respuestas hasta ahora).

«Big Data» y «Bad Data» son estrechamente relacionada. Las bases de datos relacionales requieren «datos prístinos». Si los datos están en la base de datos, son precisos, limpios y 100% confiables. Las bases de datos relacionales requieren «datos excelentes» y se dedica una gran cantidad de tiempo, dinero y responsabilidad para asegurarse de que los datos estén bien preparados antes de cargarlos en la base de datos. Si los datos están en la base de datos, son «evangelio» y definen la comprensión del sistema de la realidad.

«Big Data» aborda este problema desde la otra dirección. Los datos están mal definidos, muchos de ellos pueden ser inexactos y, de hecho, muchos de ellos pueden faltar. La estructura y el diseño de los datos es lineal en lugar de relacional.

Big Data debe tener suficiente volumen para que la cantidad de datos incorrectos o faltantes se vuelva estadísticamente insignificante. Cuando los errores en sus datos son lo suficientemente comunes como para anularse entre sí, cuando los datos faltantes son proporcionalmente lo suficientemente pequeños como para ser insignificantes y cuando sus requisitos y algoritmos de acceso a los datos funcionan incluso con datos incompletos e inexactos, entonces tiene «Big Data» .

«Big Data» no se trata realmente del volumen, se trata de las características de los datos.

Comentarios

  • +1 Aprecio mucho que el estrés en el Big Data no se trate de cuál es el tamaño , sino de cuál es el contenido (características de) .
  • Esa es una perspectiva muy refrescante. Nunca había escuchado esto antes, pero es muy cierto. Esto sugiere que las tecnologías SQL y NoSQL no son competitivas, sino complementarias.
  • Usted ‘ está hablando de datos no estructurados, no de big data. Los datos no estructurados generalmente conducen a soluciones NoSQL y big data en la aplicación, pero aún son diferentes.
  • Creo que esta es una buena perspectiva comercial de lo que es big data, pero no responde a la pregunta específica que es bastante puntual » ¿Qué tamaño tiene el Big Data? »

Respuesta

Como ha señalado correctamente, en estos días «big data» es algo que todo el mundo quiere decir que «tiene, lo que implica cierta flexibilidad en la forma en que la gente define el término. Sin embargo, en general, «Diría que sin duda se trata de big data si la escala es tal que ya no es factible administrarla con tecnologías más tradicionales como RDBMS, al menos sin complementarlas con tecnologías de big data como Hadoop.

Es discutible el tamaño que deben tener sus datos para que así sea. Aquí hay una entrada de blog (algo provocativa) que afirma que no es realmente el caso para menos de 5 TB de datos. (Para ser claros, no dice «Menos de 5 TB no son grandes datos», sino simplemente «Menos de 5 TB no es lo suficientemente grande como para necesitar Hadoop»).

Pero incluso en conjuntos de datos más pequeños, las tecnologías de big data como Hadoop pueden tener otras ventajas, como ser adecuadas para operaciones por lotes, jugar bien con datos no estructurados (así como con datos cuya estructura no se conoce de antemano o podría cambiar), escalabilidad horizontal (escalado por agregar más nodos en lugar de reforzar sus servidores existentes), y (como uno de los comentaristas en las notas de publicación vinculadas anteriormente) la capacidad de integrar su procesamiento de datos con conjuntos de datos externos (piense en un mapa-reducir donde el mapeador hace un llamar a otro servidor).Otras tecnologías asociadas con big data, como las bases de datos NoSql, enfatizan el rendimiento rápido y la disponibilidad constante al tratar con grandes conjuntos de datos, además de poder manejar datos semi-no estructurados y escalar horizontalmente.

Por supuesto , los RDBMS tradicionales tienen sus propias ventajas, incluidas las garantías ACID (Atomicidad, Consistencia, Aislamiento, Durabilidad) y un mejor rendimiento para ciertas operaciones, además de ser más estandarizados, más maduros y (para muchos usuarios) más familiares. Por lo tanto, incluso para datos indiscutiblemente «grandes», puede tener sentido cargar al menos una parte de sus datos en una base de datos SQL tradicional y usarla junto con tecnologías de big data.

Entonces, una definición más generosa sería que tiene big data siempre que sea lo suficientemente grande como para que las tecnologías de big data le brinden algún valor agregado. Pero, como puede ver, eso puede depender no solo del tamaño de sus datos sino de cómo desea trabajar con él y qué tipo de requisitos tiene en términos de flexibilidad, coherencia y rendimiento. Cómo utiliza sus datos es más relevante para la pregunta que para qué los utiliza (por ejemplo, minería de datos). Dicho esto, es más probable que usos como la minería de datos y el aprendizaje automático produzcan resultados útiles si tiene un conjunto de datos lo suficientemente grande para trabajar.

Comentarios

  • Este comentario tiene casi 5 años y, aunque algunas partes siguen siendo ciertas, el umbral de 5 TB del blog que cité ciertamente no es ya no es cierto. Por ejemplo, Microsoft ofrece » hiperescala » bases de datos SQL de hasta 100 TB: docs.microsoft.com/en-us/azure/sql-database/… Por supuesto, se puede suponer que muchas organizaciones con grandes bases de datos SQL también Tengo, digamos, un clúster Spark para soportar diferentes cargas de trabajo. No hay ‘ s no hay regla, tienes que elegir una u otra.

Respuesta

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

Como ejemplo de una sola organización grande, Facebook extrae 500 terabytes por día, en un almacén de 100 petabytes, y ejecuta 70.000 consultas por día en él a partir de 2012 ( fuente ) Su almacén actual es> 300 petabytes.

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

Además del tamaño, algunas de las características que lo hacen «grande» son:

  • se analiza activamente, no solo se almacena (cite «Si no está aprovechando big data, entonces no tiene big data, solo tiene una pila de datos» Jay Parikh @ Facebook)

  • La construcción y ejecución de un almacén de datos es un proyecto de infraestructura importante

  • Está creciendo a un ritmo significativo

  • no está estructurado o tiene una estructura irregular

Definición de Gartner: «Big data es un gran volumen, alta velocidad y / o activos de información de gran variedad que requieren nuevas formas de procesamiento «(Los 3V) Por lo tanto, también piensan que la» grandeza «no se trata exclusivamente del tamaño del conjunto de datos, sino también de la velocidad, la estructura y el tipo de herramientas necesarias.

Comentarios

Respuesta

Para mí, Big Data se trata principalmente de herramientas (después de todo, ahí es donde comenzó); un conjunto de datos «grande» es uno que es demasiado grande para manipularse con herramientas convencionales, en particular, lo suficientemente grande como para exigir almacenamiento y procesamiento en un clúster en lugar de en una sola máquina. Esto descarta un RDBMS convencional y exige nuevas técnicas de procesamiento; en particular, varios marcos similares a Hadoop facilitan la distribución de un cálculo en un clúster, a costa de restringir la forma de este cálculo. Secundaré la referencia a http://www.chrisstucchio.com/blog/2013/hadoop_hatred.html ; las técnicas de Big Data son un último recurso para conjuntos de datos que son simplemente demasiado grandes para manejar de otra manera. Yo diría que cualquier conjunto de datos para cualquier propósito podría calificar si fuera lo suficientemente grande, aunque si la forma del problema es tal que las herramientas de «macrodatos» existentes no son apropiadas, entonces probablemente sería mejor para inventar un nuevo nombre.

Por supuesto, hay cierta superposición; Cuando trabajé (brevemente) en last.fm, trabajamos en el mismo conjunto de datos de 50TB usando Hadoop y también en una base de datos SQL en un servidor bastante ridículo (recuerdo que tenía 1TB de RAM, y esto fue hace unos años). Lo que en cierto sentido significaba que era y no era big data, dependiendo del trabajo en el que estuvieras trabajando. Pero creo que esa es una caracterización precisa; las personas que trabajaron en los trabajos de Hadoop encontraron útil ir a conferencias y sitios web de Big Data, mientras que las personas que trabajaron en los trabajos de SQL no lo hicieron.

Respuesta

Los datos se vuelven «grandes» cuando una sola computadora básica ya no puede manejar la cantidad de datos que tiene. punto en el que debe comenzar a pensar en la creación de supercomputadoras o en el uso de clústeres para procesar sus datos.

Respuesta

Big Data está definido por el volumen de datos, eso es correcto, pero no solo. La particularidad de los macrodatos es que necesita almacenar lotes de varios y, a veces, no estructurados productos todas las veces y de toneladas de sensores , normalmente durante años o décadas .

Además, necesitas algo escalable, para que no te lleve medio año para recuperar datos.

Aquí viene Big Data, donde el método tradicional ya no funcionará. SQL no es escalable. Y SQL funciona con datos muy estructurados y vinculados (con todos esos lío de clave primaria y externa, unión interna, solicitud imbricada …).

Básicamente, debido a que el almacenamiento se vuelve más y más barato y los datos se vuelven cada vez más valiosos, el gran gerente pide al ingeniero que registre todo. toneladas de sensores nuevos con todos esos dispositivos móviles, redes sociales, elementos integrados … etc. Entonces, como los métodos clásicos no funcionan, tienen que encontrar nuevas tecnologías (almacenar todo en archivos, en formato json, con un índice grande, lo que llamamos noSQL).

Entonces, Big Data puede ser muy grande pero no pueden ser tan grandes sino complejos, no estructurados o varios datos que deben almacenarse rápidamente y sobre la marcha en un formato sin procesar. Primero nos enfocamos y almacenamos, y luego vemos cómo vincular todo.

Respuesta

Compartiré cómo es el Big Data en genómica, en particular el ensamblaje de novo.

Cuando secuenciamos su genoma (por ejemplo: detectamos genes nuevos), tomamos miles de millones de lecturas cortas de la próxima generación. Mire la imagen a continuación, donde intentamos ensamblar algunas lecturas.

ingrese la descripción de la imagen aquí

¿Esto parece simple? Pero, ¿y si tienes mil millones de esas lecturas? ¿Qué pasa si esas lecturas contienen errores de secuencia? ¿Qué pasa si su RAM no tiene suficiente memoria para mantener las lecturas? ¿Qué pasa con las regiones de ADN repetitivas, como el muy común Alu Element ?

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

ingrese la descripción de la imagen aquí

El gráfico es una estructura de datos ingeniosa para representar lecturas superpuestas. No es perfecto, pero «Es mejor que generar todas las superposiciones posibles y almacenarlas en una matriz.

El proceso de ensamblaje puede tardar días en completarse, porque hay bastantes rutas que un ensamblador necesitaría atravesar y colapsar.

En genómica, tienes un big data cuando:

  • No puedes usar la fuerza bruta en todas las combinaciones
  • Tu computadora no tiene suficiente memoria física para almacenar los datos
  • Necesita reducir las dimensiones (por ejemplo: colapso de rutas de gráficos redundantes)
  • Se cabrea porque «tendría que esperar días para hacer cualquier cosa
  • Necesita una estructura de datos especial para representar los datos
  • Necesita filtrar su conjunto de datos en busca de errores (por ejemplo: errores de secuenciación)

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

Respuesta

Hay algo especial en los algoritmos de gráficos, preguntas originales que lo hacen especial, que se trata de la capacidad de dividir los datos esencialmente.

Para algunas cosas, como ordenar números en una matriz, no es demasiado difícil dividir el problema en la estructura de datos en partes disyuntivas más pequeñas, p. ej. Aquí: Ordenación por fusión en paralelo en el lugar

Sin embargo, para los algoritmos de gráficos existe el desafío de encontrar una partición opcional en una métrica gráfica determinada. ser $ NP-duro $.

Entonces, mientras que 10 GB de números para ordenar puede ser un problema muy accesible en una PC normal (puede ingresar a través de la programación dinámica y tener una muy buena previsibilidad sobre el flujo del programa), trabajar con un gráfico de 10 GB La estructura de datos ya puede desafiar.

Hay una serie de marcos especializados como GraphX que utilizan métodos y paradigmas informáticos especiales para sortear los desafíos inherentes a los gráficos.

Entonces, para responder brevemente a su pregunta: como lo mencionaron otros, cuando sus datos no caben en la memoria principal de una PC normal, pero los necesita todos para resolver su problema, es una buena pista que su los datos ya son algo grandes. Sin embargo, el etiquetado exacto depende, creo que un poco de la estructura de datos y la pregunta.

Respuesta

Creo que el big data comienza en el punto en el que el tamaño le impide hacer lo que quiere. En la mayoría de los escenarios, existe un límite en el tiempo de ejecución que se considera factible. En algunos casos es una hora, en algunos casos pueden ser algunas semanas. Siempre que los datos no sean lo suficientemente grandes como para que solo O (n) algoritmos puedan ejecutarse en el período de tiempo factible, no llegó a Big Data.

Me gusta esta definición ya que es independiente del volumen, nivel de tecnología y algoritmos específicos. No es agnóstico a los recursos, por lo que un estudiante de posgrado llegará al punto de big data mucho antes que Google.

Para poder cuantificar qué tan grandes son los datos, me gusta considere el tiempo necesario para hacer una copia de seguridad. Dado que la tecnología avanza, los volúmenes que se consideraban grandes hace algunos años ahora son moderados. El tiempo de copia de seguridad mejora, a medida que la tecnología mejora, al igual que el tiempo de ejecución de los algoritmos de aprendizaje. Creo que es más sensato para hablar sobre un conjunto de datos, la copia de seguridad lleva X horas y no un conjunto de datos de Y bytes.

PD.

Es importante tener en cuenta que incluso si alcanzó el punto de big data y no puede ejecutar algoritmos de complejidad más que O (n) de forma sencilla, hay mucho que puede hacer para beneficiarse de dicho algoritmo s.

Por ejemplo, la selección de funciones puede reducir la cantidad de funciones de las que depende el tiempo de ejecución de muchos algoritmos. En muchas distribuciones de cola larga, puede resultar beneficioso centrarse en los pocos elementos de la cabeza. Puede usar una muestra y ejecutar en ella los algoritmos más lentos.

Comentarios

Responder

Los datos son «Big Data» si su volumen es tal que es menos costoso analizarlos en dos o más computadoras básicas que en una computadora de gama alta.

Así es básicamente como Google «s» Se originó el sistema de archivos BigFiles «. Page y Brin no podían permitirse un elegante servidor Sun para almacenar y buscar en su índice web, por lo que conectaron varias computadoras básicas

Respuesta

Tiendo a estar de acuerdo con lo que @Dan Levin ya ha dicho. En última instancia, dado que queremos extraer información útil de los datos en lugar de simplemente almacenarlos, es el capacidad de aprendizaje de algoritmos / sistemas que deberían determinar lo que se llama «Big data». A medida que los sistemas de AA evolucionen, lo que era Big Data hoy ya no será Big Data mañana.

Una forma de definir Big Data podría ser:

  • Big data : datos sobre los que no puede crear modelos de AA en tiempo razonable (1-2 horas) en una estación de trabajo típica (con 4GB de RAM)
  • Non-Big data : complemento de lo anterior

Asumiendo esta definición, siempre que la memoria ocupada por una fila individual (todas las variables para un solo punto de datos) no exceda la RAM de la máquina, deberíamos estar en el Non-Big Data régimen.

Nota: Vowpal Wabbit (con diferencia, el sistema de aprendizaje automático más rápido hasta el momento) puede aprender sobre cualquier conjunto de datos siempre que una fila individual (punto de datos) tenga < RAM (digamos 4 GB) . El número de filas es no es una limitación porque usa SGD en múltiples núcleos. Hablando por experiencia, puedes entrenar un modelo con 10,000 funciones y 10MN filas en una computadora portátil en un día.

Respuesta

«Big data «es literalmente una gran cantidad de datos. Si bien es más un término de marketing que cualquier otra cosa, la implicación suele ser que tiene tantos datos que no puede analizar todos los datos a la vez porque la cantidad de memoria (RAM) que se necesitaría para almacenar los datos en memoria para procesarlo y analizarlo es mayor que la cantidad de memoria disponible.

Esto significa que los análisis generalmente tienen que realizarse en segmentos aleatorios de datos, lo que permite construir modelos para compararlos con otras partes de los datos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *