La Red de Conocimientos Pedagógicos - Conocimientos históricos - ¿Por qué Python es un lenguaje de desarrollo completo para big data? Así como puedes escribir una aplicación web completa siempre que conozcas JavaScript, puedes implementar una plataforma completa de procesamiento de big data siempre que conozcas Python. \x0d\\x0d\Infraestructura de nube\x0d\\x0d\Actualmente no admite plataformas en la nube, no admite datos masivos y no admite expansión dinámica. No nos atrevemos a decir que estamos haciendo big data en absoluto. A lo sumo, nos atrevemos a decirles a los demás que estamos haciendo inteligencia empresarial (BI). \x0d\\x0d\La plataforma en la nube se divide en nube privada y nube pública. OpenStack\x0d\ \x0d\ de la plataforma de nube privada está escrito en Python. El antiguo perseguidor CloudStack enfatizó que estaba escrito en Java y tenía ventajas sobre Python cuando se lanzó por primera vez. Resultado 2065 438 05 \x0d \uA principios de año, el fundador de CloudStack, Citrix, anunció que se uniría a la Fundación OpenStack y CloudStack estaba a punto de finalizar su vida. \x0d\\x0d\ Si no desea crear su propia nube privada, puede utilizar nubes públicas. Ya sea AWS, GCE, Azure, Alibaba Cloud o Qingyun, todas proporcionan el SDK de Python. y JavaScript SDK, y Qingyun solo proporciona Python. Se puede ver que varias plataformas en la nube conceden gran importancia a Python. \x0d\ x0d \Cuando se trata de construcción de infraestructura, se debe mencionar a Hadoop. Hoy en día, Hadoop ya no es la primera opción para el procesamiento de big data porque su velocidad de procesamiento de datos MapReduce no es lo suficientemente rápida, pero HDFS y YARN, dos componentes de Hadoop, se están volviendo cada vez más populares. El lenguaje de desarrollo de Hadoop es Java,\x0d\No hay soporte oficial para Python, pero existen muchas bibliotecas de terceros que encapsulan la interfaz API de Hadoop (pydoop, hadoopy, etc.).\x0d\\x0d\La alternativa a Hadoop MapReduce es Spark y se dice que es 100 veces más rápido. Su lenguaje de desarrollo es Scala, pero proporciona interfaces de desarrollo para Scala, Java y Python. Realmente no tiene sentido complacer a tantos científicos de datos que usan Python sin admitir Python. Las alternativas a HDFS, como GlusterFS y Ceph, brindan soporte directo para Python. Como alternativa a Yarn, Mesos se implementa en C. Además de C, c también proporciona paquetes de soporte para Java y Python. \ x0d \ \ x0d \ devo PS \ x0d \ \ x0d \ devo PS tiene un nombre chino llamado desarrollo y autooperación. En la era de Internet, sólo si somos capaces de probar rápidamente nuevas ideas y ofrecer valor empresarial de forma segura y confiable la primera vez podremos seguir siendo competitivos. Las prácticas técnicas como la construcción/prueba/implementación automatizada y la medición del sistema propugnadas por DevOps son esenciales en la era de Internet. \x0d\\x0d\Construcción automática para una fácil aplicación. Si se trata de una aplicación Python, es muy sencilla debido a la existencia de herramientas de configuración, PIP, VirtualEnv, TOX, \x0d\Flake8 y otras herramientas. Además, debido a que casi todos los sistemas Linux tienen un intérprete de Python incorporado, no hay ningún software preinstalado en Python para lograr la automatización. \x0d\\x0d\En términos de pruebas automatizadas, el marco Robot basado en Python es el marco de pruebas automatizado favorito para aplicaciones empresariales y es independiente del lenguaje. Cucumber también tiene muchos partidarios, y su contraparte de Python, Lettuce, puede hacer exactamente lo mismo. Locust también ha atraído cada vez más atención en las pruebas de rendimiento automatizadas. Las herramientas de gestión de configuración automatizadas como \x0d\\x0d\ y Puppet se desarrollaron en Ruby y todavía funcionan con fuerza.

¿Por qué Python es un lenguaje de desarrollo completo para big data? Así como puedes escribir una aplicación web completa siempre que conozcas JavaScript, puedes implementar una plataforma completa de procesamiento de big data siempre que conozcas Python. \x0d\\x0d\Infraestructura de nube\x0d\\x0d\Actualmente no admite plataformas en la nube, no admite datos masivos y no admite expansión dinámica. No nos atrevemos a decir que estamos haciendo big data en absoluto. A lo sumo, nos atrevemos a decirles a los demás que estamos haciendo inteligencia empresarial (BI). \x0d\\x0d\La plataforma en la nube se divide en nube privada y nube pública. OpenStack\x0d\ \x0d\ de la plataforma de nube privada está escrito en Python. El antiguo perseguidor CloudStack enfatizó que estaba escrito en Java y tenía ventajas sobre Python cuando se lanzó por primera vez. Resultado 2065 438 05 \x0d \uA principios de año, el fundador de CloudStack, Citrix, anunció que se uniría a la Fundación OpenStack y CloudStack estaba a punto de finalizar su vida. \x0d\\x0d\ Si no desea crear su propia nube privada, puede utilizar nubes públicas. Ya sea AWS, GCE, Azure, Alibaba Cloud o Qingyun, todas proporcionan el SDK de Python. y JavaScript SDK, y Qingyun solo proporciona Python. Se puede ver que varias plataformas en la nube conceden gran importancia a Python. \x0d\ x0d \Cuando se trata de construcción de infraestructura, se debe mencionar a Hadoop. Hoy en día, Hadoop ya no es la primera opción para el procesamiento de big data porque su velocidad de procesamiento de datos MapReduce no es lo suficientemente rápida, pero HDFS y YARN, dos componentes de Hadoop, se están volviendo cada vez más populares. El lenguaje de desarrollo de Hadoop es Java,\x0d\No hay soporte oficial para Python, pero existen muchas bibliotecas de terceros que encapsulan la interfaz API de Hadoop (pydoop, hadoopy, etc.).\x0d\\x0d\La alternativa a Hadoop MapReduce es Spark y se dice que es 100 veces más rápido. Su lenguaje de desarrollo es Scala, pero proporciona interfaces de desarrollo para Scala, Java y Python. Realmente no tiene sentido complacer a tantos científicos de datos que usan Python sin admitir Python. Las alternativas a HDFS, como GlusterFS y Ceph, brindan soporte directo para Python. Como alternativa a Yarn, Mesos se implementa en C. Además de C, c también proporciona paquetes de soporte para Java y Python. \ x0d \ \ x0d \ devo PS \ x0d \ \ x0d \ devo PS tiene un nombre chino llamado desarrollo y autooperación. En la era de Internet, sólo si somos capaces de probar rápidamente nuevas ideas y ofrecer valor empresarial de forma segura y confiable la primera vez podremos seguir siendo competitivos. Las prácticas técnicas como la construcción/prueba/implementación automatizada y la medición del sistema propugnadas por DevOps son esenciales en la era de Internet. \x0d\\x0d\Construcción automática para una fácil aplicación. Si se trata de una aplicación Python, es muy sencilla debido a la existencia de herramientas de configuración, PIP, VirtualEnv, TOX, \x0d\Flake8 y otras herramientas. Además, debido a que casi todos los sistemas Linux tienen un intérprete de Python incorporado, no hay ningún software preinstalado en Python para lograr la automatización. \x0d\\x0d\En términos de pruebas automatizadas, el marco Robot basado en Python es el marco de pruebas automatizado favorito para aplicaciones empresariales y es independiente del lenguaje. Cucumber también tiene muchos partidarios, y su contraparte de Python, Lettuce, puede hacer exactamente lo mismo. Locust también ha atraído cada vez más atención en las pruebas de rendimiento automatizadas. Las herramientas de gestión de configuración automatizadas como \x0d\\x0d\ y Puppet se desarrollaron en Ruby y todavía funcionan con fuerza.

Sin embargo, la nueva generación de Ansible y salt stack, ambos desarrollados en Python, son más livianos que los dos anteriores y son bienvenidos por cada vez más desarrolladores, lo que ha comenzado a ejercer mucha presión sobre sus predecesores. \x0d\\x0d\En términos de monitoreo y medición del sistema, los Nagios tradicionales están disminuyendo gradualmente, los advenedizos como Sensu son bien recibidos y New Relic en forma de servicios en la nube se ha convertido en el estándar para las nuevas empresas. Nada de esto se implementa directamente a través de Python, pero no es difícil acceder a estas herramientas desde Python. \x0d\\x0d\Además de estas herramientas, las plataformas PaaS basadas en Python que proporcionan funciones completas de DevOps, como Cloudify, Deis, etc., aunque aún no se han vuelto populares, también han atraído mucha atención. \x0d\\x0d\Web crawler\x0d\\x0d\¿De dónde provienen los datos de big data? Excepto que algunas empresas tienen la capacidad de generar grandes cantidades de datos por sí mismas, la mayoría de las veces todavía dependen de rastreadores para rastrear datos de Internet para su análisis. \x0d\\x0d\Los rastreadores web son las áreas fuertes tradicionales de Python, con el marco de rastreo más popular Scrapy, el kit de herramientas HTTP urlib2, la herramienta de análisis HTML beautifulsoup, el analizador XML lxml, etc. Todas son bibliotecas de clases independientes. \x0d\\x0d\ Sin embargo, un rastreador web hace más que simplemente abrir páginas web y analizar HTML. Un rastreador eficiente debería poder admitir una gran cantidad de operaciones simultáneas flexibles y, a menudo, debería poder rastrear miles o incluso decenas de miles de páginas web al mismo tiempo. El método tradicional de grupo de subprocesos desperdicia muchos recursos. Después de miles de subprocesos, los recursos del sistema básicamente se desperdician en la programación de subprocesos. Python puede admitir muy bien operaciones de rutina, por lo que ha desarrollado muchas bibliotecas concurrentes, como Gevent, Eventlet y marcos de tareas distribuidas como Celery. ZeroMQ, que se considera más eficiente que AMQP, también es el primero en proporcionar una versión de Python. Con el soporte de alta concurrencia, los rastreadores web realmente pueden alcanzar la escala de big data. \x0d\\x0d\Los datos capturados deben segmentarse y Python no es inferior en este sentido. Los famosos paquetes de procesamiento de lenguaje natural NLTK y Jieba, que se especializan en la segmentación de palabras chinas, son herramientas poderosas para la segmentación de palabras. \x0d\x0d\Procesamiento de datos\x0d\x0d\Todo está listo, todo lo que necesitamos es el viento del este. Este viento del este es el algoritmo de procesamiento de datos. Desde la teoría estadística hasta la minería de datos, el aprendizaje automático y la teoría del aprendizaje profundo propuesta en los últimos años, la ciencia de datos se encuentra en una era en la que florecen cien flores. ¿Qué utilizan los científicos de datos para programar? \x0d\\x0d\Si está en el campo de la investigación teórica, el lenguaje R puede ser el más popular entre los científicos de datos, pero los problemas con el lenguaje R también son obvios. Debido a que los estadísticos crearon el lenguaje R, su sintaxis es un poco extraña. Además, el lenguaje X0d\r tardará mucho tiempo en implementar sistemas distribuidos a gran escala. Por lo tanto, muchas empresas utilizan el lenguaje R para probar prototipos y luego traducen el algoritmo al lenguaje de ingeniería una vez determinado. \x0d\\x0d\Python es también uno de los lenguajes favoritos de los científicos de datos. A diferencia del lenguaje R, Python en sí es un lenguaje de ingeniería. Los algoritmos implementados por los científicos de datos en Python se pueden usar directamente en productos, lo que es muy útil para que las empresas emergentes de big data ahorren costos. Oficialmente, debido al amor de los científicos de datos por Python y R, para complacer a los científicos de datos, Spark proporciona muy buen soporte para estos dos lenguajes\x0d\. \x0d\\x0d\Python tiene muchas bibliotecas de clases relacionadas con el procesamiento de datos. Las bibliotecas de informática científica de alto rendimiento NumPy y SciPy sientan una muy buena base para otros algoritmos avanzados. matploglib hace que dibujar imágenes con \x0d\Python sea tan fácil como Matlab. Scikit-learn y Milk implementan muchos algoritmos de aprendizaje automático, y Pylearn2 basado en estas dos bibliotecas es un miembro importante del campo del aprendizaje profundo. Theano utiliza la aceleración de GPU para lograr cálculos simbólicos matemáticos de alto rendimiento y cálculos matriciales multidimensionales.