Nueve lenguajes de programación necesarios para el procesamiento de big data
Se necesitan nueve lenguajes de programación para el procesamiento de big data
A medida que la locura por el big data continúa calentándose, hay una avalancha de información que llega desde casi todos los campos a los usuarios. Con miles de registros de navegación y datos de comportamiento registrados, está lejos de ser satisfactorio utilizar Excel simplemente para el procesamiento de datos. Pero si solo utiliza algún software operativo para el análisis sin mucho uso de datos lógicos, será solo un procesamiento de datos simple.
Trabajo altamente reemplazable sin llegar al corazón de la estrategia de planificación.
Por supuesto, las habilidades básicas son el aspecto más importante que no se puede ignorar. Si quieres convertirte en científico de datos, debes tener cierto conocimiento de estos programas: R
To. enumera todos los programas Idioma, no importa si puedes olvidar otras cosas, pero lo más importante que no puedes olvidar es R. Surgiendo silenciosamente desde 1997, su mayor ventaja es que es gratuito, una alternativa al costoso software estadístico como Matlab o SAS.
Pero en los últimos años, su valor ha cambiado y se ha convertido en un tesoro a los ojos de la comunidad científica de datos. No son sólo los estadísticos nerds los que están familiarizados con él; los comerciantes de WallStreet, los biólogos y los desarrolladores de Silicon Valley están familiarizados con R. Empresas tan diversas como Google, Facebook, Bank of America y el New York Times utilizan R, y su utilidad empresarial sigue mejorando.
La ventaja de R es que es simple y fácil de usar. A través de R, puede filtrar los datos que desee de conjuntos de datos complejos, operar datos desde funciones de modelo complejas y crear gráficos ordenados para su presentación. Números, estos sólo requieren unas pocas líneas de código de programa. Por ejemplo, es como una versión activa de Excel.
El mayor activo de R es su sistema activo y dinámico. La comunidad R continúa agregando nuevos paquetes y presenta un rico conjunto de funciones integradas. Se estima que más de 2 millones de personas usan R. Una encuesta reciente muestra que R es, con diferencia, el lenguaje más popular en la comunidad de ciencia de datos y representa el 61 % de los encuestados (seguido de cerca por Python con un 39 %).
También llamó la atención de WallStreet. Tradicionalmente, los analistas de valores analizaban archivos de Excel de día a noche, pero ahora el uso de R en modelos financieros está aumentando gradualmente, especialmente en herramientas de visualización. Niall O'Conno, vicepresidente de Bank of America, dijo: "R nos vuelve vulgares. . La forma destaca".
En cuanto al modelado de datos, se está avanzando hacia un lenguaje profesional poco a poco maduro, aunque R todavía es limitado cuando las empresas necesitan fabricar productos a gran escala, y algunos dicen que ha sido usurpado por otros lenguajes. .
“R es más útil para dibujar, no para modelar”. Michael Driscoll, director ejecutivo de la importante empresa de análisis de datos Metamarkets, dijo:
“No ocuparás el puesto principal en la página de Google ni cuando "Los amigos en Facebook recomiendan algoritmos y ven rastros de R, los ingenieros construirán un prototipo en R y luego escribirán la gramática del modelo en Java o Python".
Para dar un ejemplo bien conocido del uso de R, en 2010, Paul Butler usó R para construir el mapa mundial de Facebook, lo que demostró cuán rico y poderoso es este lenguaje para visualizar datos, aunque ahora es mejor que Antes usa R menos.
"R se ha vuelto obsoleto. Es lento y torpe con enormes conjuntos de datos", dijo Butler.
Entonces, ¿qué usará a continuación? Python
Si R es un Geek neurótico y adorable, entonces Python es una chica tranquila y fácil de relacionarse.
Python combina la velocidad de R, la capacidad para manejar minería de datos compleja y un lenguaje más pragmático, y rápidamente se convirtió en algo común. En comparación con R, Python es más fácil e intuitivo de aprender, y su ecosistema ha crecido increíblemente. rápidamente en los últimos años y es más poderoso que R en el análisis estadístico.
Butler dijo: "En los últimos dos años, el cambio significativo de R a Python ha sido como un gigante que avanza constantemente".
En el campo del procesamiento de datos, suele haber un equilibrio entre escala y complejidad, y Python aparece como un compromiso. IPython Notebook (software de bloc de notas) y NumPy se utilizan para el acceso temporal a cargas de trabajo de menor carga. Sin embargo, Python es una muy buena herramienta para el procesamiento de datos a mediana escala. Python tiene una rica familia de datos y proporciona una gran cantidad de paquetes de herramientas y estadísticas; características. .
Bank of America utiliza Python para crear nuevos productos e interfaces con la infraestructura del banco, así como para procesar datos financieros. "Python es más amplio y bastante flexible, por lo que la gente está recurriendo a él". Así lo dijo.
Sin embargo, aunque sus ventajas pueden compensar las deficiencias de R, todavía no es el lenguaje de mayor rendimiento y sólo ocasionalmente puede manejar infraestructura central a gran escala. Driscoll así lo cree. Julia
La mayor parte de la ciencia de datos actual se realiza principalmente a través de R, Python, Java, Matlab y SAS, pero todavía queda una brecha por salvar. En este momento, la recién llegada Julia vio este punto débil.
Julia todavía es demasiado misteriosa para ser adoptada ampliamente por la industria, pero cuando se trata de su potencial para usurpar el trono de R y Python, los hackers de datos también son difíciles de explicar. La razón es que Julia es un lenguaje de alto nivel, increíblemente rápido y expresivo. Es mucho más rápido que R, tiene el potencial de manejar datos a mayor escala que Python y también es fácil de comenzar.
"Julia será cada vez más importante y, eventualmente, todo lo que se pueda hacer en R y Python se podrá hacer en Julia". Mayordomo así lo cree.
Por ahora, la razón por la que el desarrollo de Julia retrocederá probablemente sea porque es demasiado joven. La comunidad de datos de Julia todavía está en su infancia y necesita más kits de herramientas y paquetes de software antes de poder competir con R o Python.
Driscoll dijo que debido a que es joven tiene el potencial de convertirse en una empresa popular y prometedora. Java
Driscoll dijo que Java y las arquitecturas basadas en Java son construidas por el núcleo de algunas de las empresas de tecnología más grandes de Silicon Valley. Si miras Twitter, Linkedin o Facebook, encontrarás que Java es. un lenguaje muy básico para toda la infraestructura de ingeniería de datos.
Java no tiene las mismas buenas capacidades de visualización que R y Python, ni es la mejor herramienta para el modelado estadístico, pero si necesita construir un sistema grande y utilizar prototipos anteriores, Java generalmente será su elección más básica.
Hadoop y Hive
Para satisfacer las necesidades de grandes cantidades de procesamiento de datos, han surgido grupos de herramientas basadas en Java. Hadoop es la clave para desarrollar una arquitectura basada en Java para procesar lotes de datos. En comparación con otras herramientas de procesamiento, Hadoop es mucho más lento, pero es extremadamente preciso y puede usarse ampliamente para el análisis de bases de datos de back-end. Combina bien con Hive, es una arquitectura basada en consultas y funciona muy bien. Scala
Es otro lenguaje basado en Java, que es muy similar a Java. Para cualquiera que quiera realizar aprendizaje automático a gran escala o crear algoritmos de alto nivel, Scala será una herramienta que emerge gradualmente. Es la presentación y la capacidad de construir sistemas confiables.
"Java es como estar construido con acero; Scala es arcilla que puedes llevar a un horno, hornearla y convertirla en acero", dijo Driscoll. Kafka y Storm
Hablando de cuándo necesitas un análisis rápido y en tiempo real, ¿cuál crees que será Kafka tu mejor socio?
De hecho, existe desde hace cinco años y se ha vuelto cada vez más popular debido al reciente aumento del procesamiento de transmisión.
Kafka nació de Linkedin y es un sistema de consulta de información especialmente rápido. ¿La desventaja de Kafka es que es demasiado rápido, por lo que cuando se opera en tiempo real cometerá errores y, a veces, se perderá cosas?
No puedes quedarte con el pastel y comértelo también: “Tienes que elegir entre precisión y velocidad”, dijo Driscoll. Entonces, todas las grandes empresas de tecnología en Silicon Valley usan dos canales: usan Kafka o Storm para procesar datos en tiempo real y luego abren Hadoop para procesar un lote de sistemas de datos por lotes. Esto suena un poco engorroso y un poco lento, pero tiene la ventaja. es que es muy muy preciso.
Storm es otra arquitectura escrita desde Scala. Ha aumentado gradualmente su popularidad en el procesamiento de flujos en Silicon Valley y fue adquirida por Twitter. Esto no es sorprendente porque Twitter tiene una gran experiencia en el procesamiento rápido de eventos. Matlab
Se puede decir que Matlab es duradero, incluso si tiene un precio alto; se usa ampliamente en nichos de mercado muy específicos, incluida la investigación intensiva en aprendizaje automático, procesamiento de señales, reconocimiento de imágenes, etc. Octave
Octave es muy similar a Matlab, excepto que es gratuito. Sin embargo, casi siempre se menciona en los círculos académicos de procesamiento de señales. GO
GO es otro nuevo participante que está surgiendo gradualmente. Fue desarrollado a partir de Google, en términos más generales, proviene del lenguaje C y, sobre la base del establecimiento de una infraestructura sólida, se convirtió gradualmente. Competidores de Java y Python.
Hay tantos softwares que puedes usar, pero no creo que tengas que poder usarlos todos. Si sabes cuáles son tus objetivos y tu dirección, simplemente elige la herramienta más adecuada. ¡Utilízalo! Puede ayudarte a mejorar la eficiencia y lograr resultados precisos.
Lo anterior es el contenido relevante compartido por el editor sobre los nueve lenguajes de programación necesarios para el procesamiento de big data. Para obtener más información, puede seguir a Global Ivy para compartir más información detallada.