Compartir vía


Cómo usar el metastore de Hive con un clúster de Apache Spark™

Importante

Azure HDInsight en AKS se retiró el 31 de enero de 2025. Descubre más con este anuncio.

Debe 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.

Importante

Esta característica está actualmente en versión preliminar. Los Términos de uso complementarios para las versiones preliminares de Microsoft Azure incluyen más términos legales que se aplican a las características de Azure que se encuentran en versión beta, en versión preliminar o, de lo contrario, aún no se han publicado en disponibilidad general. Para obtener información sobre esta versión preliminar específica, consulte información de la versión preliminar de Azure HDInsight en AKS. Para preguntas o sugerencias de características, 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 el metastore en varios servicios. Uno de los metastores que se usa habitualmente en el metastore de HIVE. HDInsight en AKS permite a los usuarios conectarse a metastore externo. Este paso permite a los usuarios de HDInsight conectarse sin problemas a otros servicios del ecosistema.

Azure HDInsight en AKS admite meta stores personalizados, que se recomiendan para clústeres de producción. Los pasos clave implicados son

  1. Creación de una base de datos de Azure SQL
  2. Creación de un almacén de claves para almacenar las credenciales
  3. Configuración de Metastore al crear un clúster de HDInsight en AKS con Apache Spark™
  4. Operar en metastore externo (muestra las bases de datos y realiza un límite de selección 1).

Mientras crea el clúster, el servicio HDInsight debe conectarse al metastore externo y comprobar las credenciales.

Creación de una base de datos de Azure SQL

  1. Cree o tenga una instancia de Azure SQL Database existente antes de configurar un metastore de Hive personalizado para un clúster de HDInsight.

    Nota

    Actualmente, solo se admite Azure SQL Database para 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 metastore.

Creación de un almacén de claves para almacenar las credenciales

  1. Cree un 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. Aprenda los pasos para crear un Azure Key Vault.

  2. Después de la creación de Azure Key Vault, asigne los siguientes roles

    Objeto Rol Observaciones
    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 (que crea un secreto en Azure Key Vault) Administrador de Key Vault Aprenda a asignar un rol al usuario.

    Nota

    Sin este rol, el usuario no puede crear un secreto.

  3. 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 (misma contraseña que se proporcionó en la base de datos SQL para administrador) en el campo "Valor" al agregar un secreto.

    Captura de pantalla que muestra cómo crear un almacén de claves.

    Captura de pantalla que muestra cómo crear un secreto.

    Nota

    Asegúrate de anotar el nombre secreto, ya que lo necesitarás durante la creación del clúster.

Configuración de Metastore al crear un clúster de HDInsight Spark

  1. Vaya a HDInsight en el pool de clústeres de AKS para crear clústeres.

    Captura de pantalla que muestra cómo crear un nuevo clúster.

  2. Habilite el botón de alternancia para agregar el metastore de Hive externo y rellene los siguientes detalles.

    Captura de pantalla que muestra la pestaña básica.

  3. El resto de los detalles se deben rellenar según las reglas de creación de clústeres para clúster de Apache Spark en HDInsight en AKS.

  4. Haga clic en Revisar y crear.

    Captura de pantalla que muestra la pestaña revisar y crear.

    Nota

    • El ciclo de vida del metastore no está vinculado a un ciclo de vida de clústeres, por lo que puede crear y eliminar clústeres sin perder 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 asociar varios clústeres y tipos de clúster a ese metastore.

Operar en un metastore externo

  1. Creación de una tabla

    >> spark.sql("CREATE TABLE sampleTable (number Int, word String)")

    Captura de pantalla que muestra cómo crear una tabla.

  2. Adición de datos en la tabla

    >> spark.sql("INSERT INTO sampleTable VALUES (123, \"HDIonAKS\")");\

    Captura de pantalla que muestra la instrucción de inserción.

  3. Leer la tabla

    >> spark.sql("select * from sampleTable").show()

    Captura de pantalla que muestra cómo leer la tabla.

Referencia