Compartir vía


Procedimiento para usar la metastore de Hive con un clúster de Apache Spark™

Importante

Esta funcionalidad actualmente está en su 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 la versión beta, en versión preliminar, o que todavía no se han lanzado con disponibilidad general. Para obtener 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

  1. Crear una base de datos de Azure SQL
  2. Creación de un almacén de claves para almacenar las credenciales
  3. Configuración de una metastore al crear un clúster de HDInsight en AKS con Apache Spark™
  4. 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

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

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

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

  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 (la misma que se proporciona en la base de datos SQL para administrador) en el “campo Valor” al agregar un secreto.

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

    Captura de pantalla en la que se muestra cómo crear 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

  1. Vaya a HDInsight en el grupo 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 la metastore de Hive externa y rellene los siguientes detalles.

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

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

  4. Haga clic en Revisar y crear.

    Captura de pantalla donde se muestra la pestaña para 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

  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. Lectura de la tabla

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

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

Referencia