Procedimiento para usar la metastore de Hive con un clúster de Apache Spark™
Nota:
Retiraremos Azure HDInsight en AKS el 31 de enero de 2025. Antes del 31 de enero de 2025, deberá migrar las cargas de trabajo a Microsoft Fabric o un producto equivalente de Azure para evitar la terminación repentina de las cargas de trabajo. Los clústeres restantes de la suscripción se detendrán y quitarán del host.
Solo el soporte técnico básico estará disponible hasta la fecha de retirada.
Importante
Esta funcionalidad actualmente está en su versión preliminar. En Términos de uso complementarios para las versiones preliminares de Microsoft Azure encontrará más términos legales que se aplican a las características de Azure que están en versión beta, en versión preliminar, o que todavía no se han lanzado con disponibilidad general. Para más información sobre esta versión preliminar específica, consulte la Información de Azure HDInsight sobre la versión preliminar de AKS. Para plantear preguntas o sugerencias sobre la característica, envíe una solicitud en AskHDInsight con los detalles y síganos para obtener más actualizaciones sobre Comunidad de Azure HDInsight.
Es esencial compartir los datos y la metastore en varios servicios. Una de las metastore más usadas en metastore de HIVE. HDInsight en AKS permite a los usuarios conectarse a una metastore externa. Este paso permite a los usuarios de HDInsight conectarse sin problemas a otros servicios del ecosistema.
Azure HDInsight en AKS admite metastores personalizadas, que se recomiendan para clústeres de producción. Los pasos clave implicados son
- Crear una base de datos de Azure SQL
- Creación de un almacén de claves para almacenar las credenciales
- Configuración de una metastore al crear un clúster de HDInsight en AKS con Apache Spark™
- Operar en una metastore externa (muestra las bases de datos y realiza un límite de selección 1).
Mientras crea el clúster, el servicio HDInsight debe conectarse a la metastore externa y comprobar las credenciales.
Crear una base de datos de Azure SQL
Debe crear o tener una instancia de Azure SQL Database antes de configurar una metastore de Hive personalizada para un clúster de HDInsight.
Nota:
Actualmente, solo se admite Azure SQL Database para la metastore de HIVE. Debido a la limitación de Hive, no se admite el carácter "-" (guion) en el nombre de la base de datos de la metastore.
Creación de un almacén de claves para almacenar las credenciales
Cree un almacén de Azure Key Vault.
El propósito de Key Vault es permitirle almacenar la contraseña de administrador de SQL Server establecida durante la creación de la base de datos SQL. HDInsight en la plataforma de AKS no trata directamente con las credenciales. Por lo tanto, es necesario almacenar sus credenciales importantes en Azure Key Vault. Obtenga información sobre los pasos para crear un Azure Key Vault.
Después de la creación de Azure Key Vault, asigne los siguientes roles
Object Role Comentarios Identidad administrada asignada por el usuario (la misma UAMI que usa el clúster de HDInsight) Usuario de secretos de Key Vault Obtenga información sobre cómo Asignar rol a UAMI Usuario (quien crea un secreto en Azure Key Vault) Administrador de Key Vault Obtenga información sobre cómo Asignar rol al usuario. Nota:
Sin este rol, el usuario no puede crear un secreto.
-
Este paso le permite mantener la contraseña de administrador de SQL Server como un secreto en Azure Key Vault. Agregue la contraseña (la misma que se proporciona en la base de datos SQL para administrador) en el “campo Valor” al agregar un secreto.
Nota:
Asegúrese de anotar el nombre del secreto, ya que lo necesitará durante la creación del clúster.
Configuración de una metastore al crear un clúster de HDInsight Spark
Vaya a HDInsight en el grupo de clústeres de AKS para crear clústeres.
Habilite el botón de alternancia para agregar la metastore de Hive externa y rellene los siguientes detalles.
El resto de los detalles se rellenarán según las reglas de creación de clústeres para el clúster de Apache Spark en HDInsight en AKS.
Haga clic en Revisar y crear.
Nota:
- El ciclo de vida de la metastore no está asociado a un ciclo de vida de los clústeres, por lo que puede crear y eliminar clústeres sin pérdida de metadatos. Los metadatos, como los esquemas de Hive, se conservan incluso después de eliminar y volver a crear el clúster de HDInsight.
- Una tienda de metadatos personalizada le permite adjuntar varios clústeres y tipos de clústeres a esa tienda de metadatos.
Funcionamiento en una metastore externa
Creación de una tabla
>> spark.sql("CREATE TABLE sampleTable (number Int, word String)")
Adición de datos en la tabla
>> spark.sql("INSERT INTO sampleTable VALUES (123, \"HDIonAKS\")");\
Lectura de la tabla
>> spark.sql("select * from sampleTable").show()
Referencia
- Apache, Apache Spark, Spark y los nombres de proyecto de código abierto asociados son marcas comerciales de Apache Software Foundation (ASF).