Externe metagegevensopslag gebruiken in Azure HDInsight

Belangrijk

De standaard-metastore biedt een Azure SQL Database-basislaag met slechts 5 DTU- en 2 GB maximale grootte voor gegevens (NIET UPGRADEBAAR)! Gebruik deze alleen voor QA- en testdoeleinden. Voor productie- of grote workloads raden we u aan om naar een externe metastore te migreren.

Met HDInsight kunt u de controle over uw gegevens en metagegevens overnemen met externe gegevensarchieven. Deze functie is beschikbaar voor de Apache Hive-metastore, de Apache Oozie-metastore en de Apache Ambari-database.

De Apache Hive-metastore in HDInsight is een essentieel onderdeel van de Apache Hadoop-architectuur. Een metastore is de centrale schemaopslagplaats. De metastore wordt gebruikt door andere hulpprogramma's voor big data-toegang, zoals Apache Spark, Interactive Query (LLAP), Presto of Apache Pig. HDInsight maakt gebruik van een Azure SQL Database als hive-metastore.

HDInsight Hive Metadata Store Architecture.

Er zijn twee manieren waarop u een metastore kunt instellen voor uw HDInsight-clusters:

Standaardmetastore

Standaard maakt HDInsight een metastore met elk clustertype. U kunt in plaats daarvan een aangepaste metastore opgeven. De standaard-metastore bevat de volgende overwegingen:

  • Beperkte resources. Zie het bericht boven aan de pagina.

  • Geen extra kosten. HDInsight maakt een metastore met elk clustertype zonder extra kosten voor u.

  • De standaard-metastore maakt deel uit van de levenscyclus van het cluster. Wanneer u een cluster verwijdert, worden ook de bijbehorende metastore en metagegevens verwijderd.

  • De standaard-metastore wordt alleen aanbevolen voor eenvoudige werkbelastingen. Workloads waarvoor geen meerdere clusters nodig zijn en die geen metagegevens nodig hebben die buiten de levenscyclus van het cluster worden bewaard.

  • De standaard-metastore kan niet worden gedeeld met andere clusters.

Aangepaste metastore

HDInsight biedt ook ondersteuning voor aangepaste metastores, die worden aanbevolen voor productieclusters:

  • U geeft uw eigen Azure SQL Database op als metastore.

  • De levenscyclus van de metastore is niet gekoppeld aan de levenscyclus van clusters, zodat u clusters kunt maken en verwijderen zonder metagegevens te verliezen. Metagegevens zoals uw Hive-schema's blijven behouden, zelfs nadat u het HDInsight-cluster hebt verwijderd en opnieuw hebt gemaakt.

  • Met een aangepaste metastore kunt u meerdere clusters en clustertypen koppelen aan die metastore. Een enkele metastore kan bijvoorbeeld worden gedeeld in Interactive Query-, Hive- en Spark-clusters in HDInsight.

  • U betaalt voor de kosten van een metastore (Azure SQL Database) op basis van het prestatieniveau dat u kiest.

  • U kunt de metastore naar behoefte omhoog schalen.

  • Het cluster en de externe metastore moeten in dezelfde regio worden gehost.

HDInsight Hive Metadata Store Use Case.

Azure SQL Database maken en configureren voor de aangepaste metastore

Maak of heb een bestaande Azure SQL Database voordat u een aangepaste Hive-metastore instelt voor een HDInsight-cluster. Zie quickstart: Een individuele database maken in Azure SQL Database voor meer informatie.

Tijdens het maken van het cluster moet de HDInsight-service verbinding maken met de externe metastore en uw referenties verifiëren. Configureer azure SQL Database-firewallregels om Azure-services en -resources toegang te geven tot de server. Schakel deze optie in azure Portal in door serverfirewall instellen te selecteren. Selecteer Vervolgens Nee onder Openbare netwerktoegang weigeren en Ja onder Toestaan dat Azure-services en -resources toegang krijgen tot deze server voor Azure SQL Database. Zie IP-firewallregels maken en beheren voor meer informatie

Privé-eindpunten voor SQL-winkels worden alleen ondersteund op de clusters die zijn gemaakt met outbound ResourceProvider Verbinding maken ion. Zie deze documentatie voor meer informatie.

set server firewall button.

allow azure services access.

Een aangepaste metastore selecteren tijdens het maken van een cluster

U kunt uw cluster op elk gewenst moment naar een eerder gemaakte Azure SQL Database laten verwijzen. Voor het maken van een cluster via de portal wordt de optie opgegeven vanuit de instellingen van de Storage-metastore>.

HDInsight Hive Metadata Store Azure portal.

Apache Hive metastore richtlijnen

Notitie

Gebruik waar mogelijk een aangepaste metastore om rekenresources (uw actieve cluster) en metagegevens (opgeslagen in de metastore) te scheiden. Begin met de S2-laag, die 50 DTU en 250 GB opslagruimte biedt. Als u een knelpunt ziet, kunt u de database omhoog schalen.

  • Als u van plan bent om meerdere HDInsight-clusters toegang te geven tot afzonderlijke gegevens, gebruikt u een afzonderlijke database voor de metastore op elk cluster. Als u een metastore deelt over meerdere HDInsight-clusters, betekent dit dat de clusters dezelfde metagegevens en onderliggende gebruikersgegevensbestanden gebruiken.

  • Maak periodiek een back-up van uw aangepaste metastore. Azure SQL Database genereert automatisch back-ups, maar de bewaarperiode voor back-ups varieert. Zie Meer informatie over automatische back-ups van SQL-database voor meer informatie.

  • Zoek uw metastore- en HDInsight-cluster in dezelfde regio. Deze configuratie biedt de hoogste prestaties en laagste kosten voor uitgaand netwerk.

  • Bewaak uw metastore voor prestaties en beschikbaarheid met behulp van Azure SQL Database Monitoring-hulpprogramma's of Azure Monitor-logboeken.

  • Wanneer een nieuwe, hogere versie van Azure HDInsight wordt gemaakt op basis van een bestaande aangepaste metastore-database, wordt het schema van de metastore bijgewerkt. De upgrade kan niet ongedaan worden gemaakt zonder de database te herstellen vanuit een back-up.

  • Als u een metastore deelt tussen meerdere clusters, moet u ervoor zorgen dat alle clusters dezelfde HDInsight-versie hebben. Verschillende Hive-versies maken gebruik van verschillende metastore-databaseschema's. U kunt bijvoorbeeld geen metastore delen in Hive 2.1- en Hive 3.1-clusters met versiebeheer.

  • In HDInsight 4.0 gebruiken Spark en Hive onafhankelijke catalogi voor toegang tot SparkSQL- of Hive-tabellen. Een tabel die door Spark is gemaakt, bevindt zich in de Spark-catalogus. Een tabel die door Hive is gemaakt, bevindt zich in de Hive-catalogus. Dit gedrag verschilt van HDInsight 3.6, waarbij Hive en Spark gemeenschappelijke catalogus hebben gedeeld. Hive- en Spark-integratie in HDInsight 4.0 is afhankelijk van Hive Warehouse Verbinding maken or (HWC). HWC werkt als een brug tussen Spark en Hive. Meer informatie over Hive Warehouse Verbinding maken or.

  • Als u in HDInsight 4.0 de metastore wilt delen tussen Hive en Spark, kunt u dit doen door de eigenschap metastore.catalog.default te wijzigen in Hive in uw Spark-cluster. U vindt deze eigenschap in Ambari Advanced spark2-hive-site-override. Het is belangrijk om te begrijpen dat het delen van metastore alleen werkt voor externe hive-tabellen. Dit werkt niet als u interne/beheerde hive-tabellen of ACID-tabellen hebt.

Het aangepaste Hive-metastorewachtwoord bijwerken

Wanneer u een aangepaste Hive-metastore-database gebruikt, kunt u het SQL DB-wachtwoord wijzigen. Als u het wachtwoord voor de aangepaste metastore wijzigt, werken de Hive-services pas als u het wachtwoord in het HDInsight-cluster bijwerkt.

Het Hive-metastorewachtwoord bijwerken:

  1. Open de Ambari-gebruikersinterface.
  2. Klik op Services --> Hive --> Configuraties --> Database.
  3. Werk de velden Databasewachtwoord bij naar het nieuwe wachtwoord voor de SQL Server-database.
  4. Klik op de knop Test Verbinding maken ion om te controleren of het nieuwe wachtwoord werkt.
  5. Klik op de knop Opslaan.
  6. Volg de Ambari-prompts om de configuratie op te slaan en de vereiste services opnieuw te starten.

Apache Oozie-metastore

Apache Oozie is een coördinatiesysteem voor werkstromen waarmee Hadoop-taken worden beheerd. Oozie ondersteunt Hadoop-taken voor Apache MapReduce, Pig, Hive en andere. Oozie gebruikt een metastore om details over werkstromen op te slaan. Als u de prestaties wilt verbeteren bij het gebruik van Oozie, kunt u Azure SQL Database gebruiken als een aangepaste metastore. De metastore biedt toegang tot Oozie-taakgegevens nadat u uw cluster hebt verwijderd.

Zie Apache Oozie gebruiken voor werkstromen voor instructies over het maken van een Oozie-metastore met Azure SQL Database.

Het aangepaste wachtwoord voor de Oozie-metastore bijwerken

Wanneer u een aangepaste Oozie-metastore-database gebruikt, kunt u het SQL DB-wachtwoord wijzigen. Als u het wachtwoord voor de aangepaste metastore wijzigt, werken de Oozie-services pas als u het wachtwoord in het HDInsight-cluster bijwerkt.

Het wachtwoord voor de Oozie-metastore bijwerken:

  1. Open de Ambari-gebruikersinterface.
  2. Klik op Services --> Oozie --> Configs --> Database.
  3. Werk de velden Databasewachtwoord bij naar het nieuwe wachtwoord voor de SQL Server-database.
  4. Klik op de knop Test Verbinding maken ion om te controleren of het nieuwe wachtwoord werkt.
  5. Klik op de knop Opslaan.
  6. Volg de Ambari-prompts om de configuratie op te slaan en de vereiste services opnieuw te starten.

Aangepaste Ambari-database

Als u uw eigen externe database wilt gebruiken met Apache Ambari in HDInsight, raadpleegt u de aangepaste Apache Ambari-database.

Volgende stappen