¿Qué es ML Services en Azure HDInsight?What is ML Services in Azure HDInsight

Microsoft Machine Learning Server está disponible como opción de implementación al crear clústeres de HDInsight en Azure.Microsoft Machine Learning Server is available as a deployment option when you create HDInsight clusters in Azure. El tipo de clúster que proporciona esta opción se denomina ML Services.The cluster type that provides this option is called ML Services. Esta funcionalidad proporciona acceso a petición a métodos de análisis adaptables y distribuidos en HDInsight.This capability provides on-demand access to adaptable, distributed methods of analytics on HDInsight.

ML Services en HDInsight proporciona las funcionalidades más recientes para el análisis basado en R en conjuntos de datos de prácticamente cualquier tamaño.ML Services on HDInsight provides the latest capabilities for R-based analytics on datasets of virtually any size. Los conjuntos de datos se pueden cargar en un blob de Azure o en el almacenamiento de Data Lake.The datasets can be loaded to either Azure Blob or Data Lake storage. Las aplicaciones basadas en R pueden usar los más de 8000 paquetes de R de código abierto.Your R-based applications can use the 8000+ open-source R packages. También están disponibles rutinas de ScaleR, un paquete de análisis de macrodatos de Microsoft.The routines in ScaleR, Microsoft's big data analytics package are also available.

El nodo perimetral proporciona un lugar conveniente para conectarse al clúster y ejecutar los scripts de R.The edge node provides a convenient place to connect to the cluster and run your R scripts. El nodo perimetral permite ejecutar funciones distribuidas en paralelo de ScaleR en los núcleos del servidor.The edge node allows running the ScaleR parallelized distributed functions across the cores of the server. También puede ejecutarlas en los nodos del clúster mediante Hadoop MapReduce de ScaleR.You can also run them across the nodes of the cluster by using ScaleR's Hadoop Map Reduce. Asimismo, puede usar contextos de proceso de Apache Spark.You can also use Apache Spark compute contexts.

Los modelos o las predicciones que se generen a partir de los análisis pueden descargarse y utilizarse en el entorno local.The models or predictions that result from analysis can be downloaded for on-premises use. También se puede aplicar la operación operationalized en otra área de Azure.They can also be operationalized elsewhere in Azure. En concreto, mediante Azure Machine Learning Studio (clásico) y servicios web.In particular, through Azure Machine Learning Studio (classic), and web service.

Introducción a ML Services en HDInsightGet started with ML Services on HDInsight

Para crear un clúster de ML Services en HDInsight, seleccione el tipo de clúster ML Services.To create an ML Services cluster in HDInsight, select the ML Services cluster type. El tipo de clúster de ML Services incluye ML Server en los nodos de datos y en el nodo perimetral.The ML Services cluster type includes ML Server on the data nodes, and edge node. El nodo perimetral actúa como zona de aterrizaje para los análisis basados en ML Services.The edge node serves as a landing zone for ML Services-based analytics. Consulte Creación de clústeres basados en Linux en HDInsight mediante Azure Portal para ver un tutorial sobre cómo crear el clúster.See Create Apache Hadoop clusters using the Azure portal for a walkthrough on how to create the cluster.

Razones para elegir ML Services en HDInsightWhy choose ML Services in HDInsight?

ML Services en HDInsight proporciona las siguientes ventajas:ML Services in HDInsight provides the following benefits:

Las innovaciones en inteligencia artificial que ofrecen tanto Microsoft como el código abiertoAI innovation from Microsoft and open-source

ML Services incluye un conjunto de algoritmos muy adaptable y distribuido, como RevoscaleR, revoscalepy y microsoftML.ML Services includes highly adaptable, distributed set of algorithms such as RevoscaleR, revoscalepy, and microsoftML. Estos algoritmos pueden funcionar con tamaños de datos mayores que el tamaño de la memoria física.These algorithms can work on data sizes larger than the size of physical memory. También se ejecutan en una amplia variedad de plataformas de una manera distribuida.They also run on a wide variety of platforms in a distributed manner. Obtenga más información acerca de la colección de paquetes de R y paquetes de Python personalizados de Microsoft que se incluyen con el producto.Learn more about the collection of Microsoft's custom R packages and Python packages included with the product.

ML Services aúna las innovaciones de Microsoft y las contribuciones de la comunidad de código abierto (kits de herramientas de R, Python e inteligencia artificial).ML Services bridges these Microsoft innovations and contributions coming from the open-source community (R, Python, and AI toolkits). Y todo sobre una única plataforma de clase empresarial.All on top of a single enterprise-grade platform. Cualquier paquete de aprendizaje automático de código abierto de R o Python puede utilizarse simultáneamente con las innovaciones de Microsoft.Any R or Python open-source machine learning package can work side by side with any proprietary innovation from Microsoft.

Operacionalización y administración simples, seguras y a gran escalaSimple, secure, and high-scale operationalization and administration

Las empresas que utilizan entornos y paradigmas tradicionales invierten mucho tiempo y esfuerzo en la operacionalización,Enterprises relying on traditional paradigms and environments invest much time and effort towards operationalization. lo que aumenta los costos y retrasos en la conversión de modelos, iteraciones necesarias para mantener su validez y vigencia, aprobaciones normativas y administración de permisos.This action results in inflated costs and delays including the translation time for: models, iterations to keep them valid and current, regulatory approval, and managing permissions.

ML Services ofrece operacionalización de clase empresarial de ML Services.ML Services offers enterprise grade operationalization. Una vez que se completa un modelo de aprendizaje automático, solo se necesitan unos pocos clics para generar las API de servicios web.After a machine learning model completes, it takes just a few clicks to generate web services APIs. Estos servicios web se hospedan en una malla de servidores de la nube y pueden integrarse con aplicaciones de línea de negocio.These web services are hosted on a server grid in the cloud and can be integrated with line-of-business applications. Disponer de una malla flexible en la que realizar las implementaciones le brinda la capacidad de escalar el sistema fácilmente en función de las necesidades del negocio, tanto en las puntuaciones por lotes como en las puntuaciones en tiempo real.The ability to deploy to an elastic grid lets you scale seamlessly with the needs of your business, both for batch and real-time scoring. Para obtener instrucciones, consulte Operationalize ML Services on HDInsight (Operacionalización de ML Services en HDInsight).For instructions, see Operationalize ML Services on HDInsight.

Nota

El tipo de clúster de ML Services en HDInsight solo se admite en HDInsight 3.6.The ML Services cluster type on HDInsight is supported only on HDInsight 3.6. La retirada de HDInsight 3.6 está programada para el 31 de diciembre de 2020.HDInsight 3.6 is scheduled to retire on December 31, 2020.

Características principales de ML Services en HDInsightKey features of ML Services on HDInsight

Las siguientes características se incluyen con ML Services en HDInsight.The following features are included in ML Services on HDInsight.

Categoría de la característicaFeature category DescripciónDescription
Habilitado para RR-enabled Paquetes de R para soluciones escritas en R, con una distribución de código abierto de R y una infraestructura en tiempo de ejecución para la ejecución de scripts.R packages for solutions written in R, with an open-source distribution of R, and run-time infrastructure for script execution.
Habilitado para PythonPython-enabled Módulos de Python para soluciones escritas en Python, con una distribución de código abierto de Python y una infraestructura en tiempo de ejecución para la ejecución de scripts.Python modules for solutions written in Python, with an open-source distribution of Python, and run-time infrastructure for script execution.
Modelos previamente entrenadosPre-trained models Para análisis visuales y análisis textuales de sentimientos, preparados para puntuar los datos proporcionados.For visual analysis and text sentiment analysis, ready to score data you provide.
Implementación y consumoDeploy and consume Aplique la operación Operationalize al servidor e implemente las soluciones como un servicio web.Operationalize your server and deploy solutions as a web service.
Ejecución remotaRemote execution Inicie sesiones remotas en el clúster ML Services de la red desde la estación de trabajo del cliente.Start remote sessions on ML Services cluster on your network from your client workstation.

Opciones de almacenamiento de datos para ML Services en HDInsightData storage options for ML Services on HDInsight

El almacenamiento predeterminado del sistema de archivos HDFS puede ser una cuenta de Azure Storage o Azure Data Lake Storage.Default storage for the HDFS file system can be an Azure Storage account or Azure Data Lake Storage. Los datos cargados en el almacenamiento del clúster durante el análisis se hacen persistentes.Uploaded data to cluster storage during analysis is made persistent. Los datos están disponibles incluso después de que se elimina el clúster.The data is available even after the cluster is deleted. Varias herramientas pueden controlar la transferencia de datos al almacenamiento.Various tools can handle the data transfer to storage. Las herramientas incluyen el servicio de carga basado en el portal de la cuenta de almacenamiento y la utilidad AzCopy.The tools include the portal-based upload facility of the storage account and the AzCopy utility.

Puede habilitar el acceso a almacenes de blobs y Data Lake adicionales durante la creación del clúster.You can enable access to additional Blob and Data lake stores during cluster creation. No está limitado por la opción de almacenamiento principal en uso.You aren't limited by the primary storage option in use. Para más información acerca del uso de varias cuentas de almacenamiento, consulte el artículo Opciones de Azure Storage para ML Services en HDInsight.See Azure Storage options for ML Services on HDInsight article to learn more about using multiple storage accounts.

También se puede usar Azure Files como opción de almacenamiento para el nodo perimetral.You can also use Azure Files as a storage option for use on the edge node. Azure Files habilita los recursos compartidos de archivos creados en Azure Storage en el sistema de archivos de Linux.Azure Files enables file shares created in Azure Storage to the Linux file system. Para más información, consulte Opciones de Azure Storage para ML Services en HDInsight.For more information, see Azure Storage options for ML Services on HDInsight.

Acceder a un nodo perimetral de ML ServicesAccess ML Services edge node

Puede conectarse a Microsoft ML Server en el nodo perimetral mediante un explorador o SSH/PuTTY.You can connect to Microsoft ML Server on the edge node using a browser, or SSH/PuTTY. La consola R se instala de forma predeterminada durante la creación del clúster.The R console is installed by default during cluster creation.

Desarrollo y ejecución de scripts de RDevelop and run R scripts

Los scripts de R pueden usar cualquiera de los más de 8000 paquetes de R de código abierto.Your R scripts can use any of the 8000+ open-source R packages. También puede usar las rutinas en paralelo y distribuidas de la biblioteca de ScaleR.You can also use the parallelized and distributed routines from the ScaleR library. Los scripts se ejecutan en el nodo perimetral que se ejecuta dentro del intérprete de R en ese nodo,Scripts run on the edge node run within the R interpreter on that node. excepto en el caso de los pasos que llaman a funciones de ScaleR con un contexto de proceso de Map Reduce (RxHadoopMR) o Spark (RxSpark).Except for steps that call ScaleR functions with a Map Reduce (RxHadoopMR) or Spark (RxSpark) compute context. Las funciones se ejecutan de manera distribuida en los nodos de datos que están asociados a los datos.The functions run in a distributed fashion across the data nodes that are associated with the data. Para más información sobre las opciones de contexto, consulte Opciones de contexto de proceso para ML Services en HDInsight.For more information about context options, see Compute context options for ML Services on HDInsight.

Aplicación de la operación Operationalize a un modeloOperationalize a model

Cuando se complete el modelado de datos, podrá aplicar la operación operationalize al modelo para realizar predicciones con nuevos datos en Azure o en el entorno local.When your data modeling is complete, operationalize the model to make predictions for new data either from Azure or on-premises. Este proceso se conoce como "puntuación".This process is known as scoring. La puntuación puede realizarse en HDInsight, Azure Machine Learning o de forma local.Scoring can be done in HDInsight, Azure Machine Learning, or on-premises.

Puntuación en HDInsightScore in HDInsight

Para puntuar en HDInsight, escriba una función de R.To score in HDInsight, write an R function. La función llama al modelo para hacer predicciones con respecto a un nuevo archivo de datos que ha cargado en la cuenta de almacenamiento.The function calls your model to make predictions for a new data file that you've loaded to your storage account. Después, vuelva a guardar las predicciones en la cuenta de almacenamiento.Then, save the predictions back to the storage account. Puede ejecutar esta rutina a petición en el nodo perimetral del clúster o mediante un trabajo programado.You can run this routine on-demand on the edge node of your cluster or by using a scheduled job.

Puntuación en Azure Machine Learning (AML)Score in Azure Machine Learning (AML)

Si desea realizar la puntuación mediante Azure Machine Learning, utilice el paquete de R de Azure Machine Learning de código abierto, conocido como AzureML, para publicar el modelo como un servicio web de Azure.To score using Azure Machine Learning, use the open-source Azure Machine Learning R package known as AzureML to publish your model as an Azure web service. Para mayor comodidad, este paquete está preinstalado en el nodo perimetral.For convenience, this package is pre-installed on the edge node. Después, utilizando los recursos de Azure Machine Learning, cree una interfaz de usuario para el servicio web y, si es necesario, llame a dicho servicio web para efectuar las puntuaciones.Next, use the facilities in Azure Machine Learning to create a user interface for the web service, and then call the web service as needed for scoring. Luego, convierta los objetos del modelo de ScaleR en objetos del modelo de código abierto equivalentes para usarlos con el servicio web.Then convert ScaleR model objects to equivalent open-source model objects for use with the web service. Para esta conversión, utilice las funciones de coerción de ScaleR, como as.randomForest(), para los modelos basados en conjuntos.Use ScaleR coercion functions, such as as.randomForest() for ensemble-based models, for this conversion.

Puntuación en un entorno localScore on-premises

Para puntuar en el entorno local después de crear el modelo, serialice el modelo en R, descárguelo, deserialícelo y, luego, úselo para puntuar nuevos datos.To score on-premises after creating your model: serialize the model in R, download it, de-serialize it, then use it for scoring new data. Puede puntuar nuevos datos por medio del enfoque descrito antes en Puntuación en HDInsight o mediante servicios web.You can score new data by using the approach described earlier in Score in HDInsight or by using web services.

Mantenimiento del clústerMaintain the cluster

Instalación y mantenimiento de paquetes de RInstall and maintain R packages

La mayoría de los paquetes de R que utiliza se necesitan en el nodo perimetral, puesto que es donde se ejecutan la mayoría de los scripts de R.Most of the R packages that you use are required on the edge node since most steps of your R scripts run there. Para instalar más paquetes de R en el nodo perimetral, puede usar el método install.packages() de R.To install additional R packages on the edge node, you can use the install.packages() method in R.

Si solo usa rutinas de la biblioteca de ScaleR, normalmente no necesita paquetes de R adicionales.If you're just using ScaleR library routines, you don't usually need additional R packages. Puede que necesite paquetes adicionales para la ejecución de rxExec o RxDataStep en los nodos de datos.You might need additional packages for rxExec or RxDataStep execution on the data nodes.

Los paquetes adicionales pueden instalarse con una acción de script después de crear el clúster.The additional packages can be installed with a script action after you create the cluster. Para más información, consulte Administración de ML Services en un clúster de HDInsight.For more information, see Manage ML Services in HDInsight cluster.

Cambio de la configuración de memoria de Apache Hadoop MapReduceChange Apache Hadoop MapReduce memory settings

La memoria disponible para ML Services se puede modificar cuando se ejecuta un trabajo de MapReduce.Available memory to ML Services can be modified when it's running a MapReduce job. Para modificar un clúster, use la interfaz de usuario de Apache Ambari para el clúster.To modify a cluster, use the Apache Ambari UI for your cluster. Para instrucciones sobre la interfaz de usuario de Ambari, consulte Administración de clústeres de HDInsight con la interfaz de usuario web de Apache Ambari.For Ambari UI instructions, see Manage HDInsight clusters using the Ambari Web UI.

La memoria disponible para ML Services se puede cambiar mediante conmutadores de Hadoop en la llamada a RxHadoopMR:Available memory to ML Services can be changed by using Hadoop switches in the call to RxHadoopMR:

hadoopSwitches = "-libjars /etc/hadoop/conf -Dmapred.job.map.memory.mb=6656"  

Escalado del clústerScale your cluster

Los clústeres de ML Services que existen en HDInsight se pueden escalar o reducir verticalmente desde el portal.An existing ML Services cluster on HDInsight can be scaled up or down through the portal. Mediante el escalado vertical, se obtiene capacidad adicional para tareas de procesamiento de mayor tamaño.By scaling up, you gain additional capacity for larger processing tasks. Puede volver a escalar un clúster cuando esté inactivo.You can scale back a cluster when it's idle. Para ver instrucciones sobre cómo escalar un clúster, consulte Administración de clústeres de HDInsight.For instructions about how to scale a cluster, see Manage HDInsight clusters.

Mantenimiento del sistemaMaintain the system

El mantenimiento del sistema operativo se realiza en las máquinas virtuales Linux subyacentes de un clúster de HDInsight fuera del horario laboral.OS Maintenance is done on the underlying Linux VMs in an HDInsight cluster during off-hours. Normalmente, el mantenimiento se realiza a las 3:30 de la madrugada (hora local de la máquina virtual) todos los lunes y jueves.Typically, maintenance is done at 3:30 AM (VM's local time) every Monday and Thursday. Las actualizaciones no afectan a más de una cuarta parte del clúster a la vez.Updates don't impact more than a quarter of the cluster at a time.

Los trabajos en ejecución pueden ralentizarse durante el mantenimiento.Running jobs might slow down during maintenance. No obstante, deben seguir ejecutándose hasta que finalicen.However, they should still run to completion. Cualquier software personalizado o dato local que haya instalado se conserva en estos eventos de mantenimiento, salvo que se produzca un error irrecuperable que requiera recompilar el clúster.Any custom software or local data that you've is preserved across these maintenance events unless a catastrophic failure occurs that requires a cluster rebuild.

Opciones IDE para ML Services en HDInsightIDE options for ML Services on HDInsight

El nodo perimetral de Linux de un clúster de HDInsight es la zona de aterrizaje de los análisis basados en R.The Linux edge node of an HDInsight cluster is the landing zone for R-based analysis. Las versiones recientes de HDInsight proporcionan un IDE basado en el explorador en el nodo perimetral.Recent versions of HDInsight provide a browser-based IDE of RStudio Server on the edge node. El servidor de RStudio es más productivo que la consola de R para las tareas de desarrollo y ejecución.RStudio Server is more productive than the R console for development and execution.

Un IDE de escritorio puede acceder al clúster a través de un contexto de proceso remoto de MapReduce o Spark.A desktop IDE can access the cluster through a remote MapReduce or Spark compute context. Las opciones incluyen: Herramientas de R para Visual Studio (RTVS) de Microsoft, RStudio y StatET basado en Eclipse de Walware.Options include: Microsoft's R Tools for Visual Studio (RTVS), RStudio, and Walware's Eclipse-based StatET.

Para acceder a la consola de R en el nodo perimetral, escriba R en el símbolo del sistema.Access the R console on the edge node by typing R at the command prompt. Cuando se usa la interfaz de la consola, es conveniente desarrollar el script de R en un editor de texto.When using the console interface, it's convenient to develop R script in a text editor. A continuación, corte y pegue secciones del script en la consola de R según sea necesario.Then cut and paste sections of your script into the R console as needed.

PreciosPricing

Los precios asociados a un clúster de HDInsight para ML Services están estructurados de forma similar a otros tipos de clúster de HDInsight.The prices associated with an ML Services HDInsight cluster are structured similarly to other HDInsight cluster types. Se basan en el tamaño de las máquinas virtuales subyacentes en los nodos de nombre, datos y perimetral.They're based on the sizing of the underlying VMs across the name, data, and edge nodes. También se eleva la hora del núcleo.Core-hour uplifts as well. Para más información, vea los precios de HDInsight.For more information, see HDInsight pricing.

Pasos siguientesNext steps

Para más información sobre cómo usar clústeres de ML Services en HDInsight, consulte los artículos siguientes:To learn more about how to use ML Services on HDInsight clusters, see the following articles: