Share via


Gyorsítótárazás konfigurálása

Fontos

Ez a szolgáltatás jelenleg előzetes kiadásban elérhető. A Microsoft Azure Előzetes verzió kiegészítő használati feltételei további jogi feltételeket tartalmaznak, amelyek a bétaverzióban, előzetes verzióban vagy egyébként még nem általánosan elérhető Azure-funkciókra vonatkoznak. Erről az adott előzetes verzióról az Azure HDInsight az AKS előzetes verziójában tájékozódhat. Ha kérdése vagy funkciójavaslata van, küldjön egy kérést az AskHDInsightban a részletekkel együtt, és kövessen minket további frissítésekért az Azure HDInsight-közösségről.

Az objektumtároló hive-összekötővel való lekérdezése gyakori használati eset a Trinóban. Ez a folyamat gyakran nagy mennyiségű adat küldését foglalja magában. Az objektumokat több feldolgozó kéri le a HDFS-ből vagy egy másik támogatott objektumtárolóból, és ezeket a feldolgozók dolgozzák fel. A különböző paraméterekkel rendelkező ismétlődő lekérdezések, vagy akár a különböző felhasználóktól származó különböző lekérdezések gyakran ugyanazokat az objektumokat érik el és továbbítják.

A HDInsight az AKS-en hozzáadott végleges gyorsítótárazási képességet a Trinóhoz, amely a következő előnyöket nyújtja:

  • Csökkentse az objektumtároló terhelését.
  • A lekérdezés teljesítményének javítása.
  • Csökkentse a lekérdezés költségét.

Gyorsítótárazási beállítások

A gyorsítótárazás különböző lehetőségei:

  • Végeredmény gyorsítótárazása: Ha engedélyezve van (a koordinátor-összetevő konfigurációs szakaszában), a koordinátor virtuális gépen található katalógusgyorsítótárak lekérdezéseinek eredménye.
  • Hive/Iceberg/Delta Lake-katalógus gyorsítótárazása: Ha engedélyezve van (egy adott, megfelelő típusú katalógus esetében), a feldolgozó virtuális gépeken lévő fürtben lévő lekérdezési gyorsítótárak adatainak felosztása.

Végső eredmény gyorsítótárazása

A végeredmény gyorsítótárazása kétféleképpen konfigurálható:

Az elérhető konfigurációs paraméterek a következők:

Tulajdonság Alapértelmezett Leírás
query.cache.enabled false Engedélyezi a végeredmény gyorsítótárazását, ha igaz.
query.cache.ttl - Meghatároz egy időt, amíg a gyorsítótár adatai a kiürítés előtt meg nem őrzendők. Például: "10m","1h"
query.cache.disk-usage-percentage 80 A gyorsítótárazott adatokhoz használt lemezterület százalékos aránya.
query.cache.max-result-data-size 0 Az eredmény maximális adatmérete. Ha túllépte ezt az értéket, az eredmény nem gyorsítótáraz.

Feljegyzés

A végeredmény gyorsítótárazása lekérdezési tervet és ttl-t használ gyorsítótárkulcsként.

A végeredmény gyorsítótárazása a következő munkamenet-paraméterekkel is vezérelhető:

Munkamenet paramétere Alapértelmezett Leírás
query_cache_enabled Eredeti konfigurációs érték Engedélyezi/letiltja a végső eredmény gyorsítótárazását egy lekérdezéshez/munkamenethez.
query_cache_ttl Eredeti konfigurációs érték Meghatároz egy időt, amíg a gyorsítótár adatai a kiürítés előtt meg nem őrzendők.
query_cache_max_result_data_size Eredeti konfigurációs érték Az eredmény maximális adatmérete. Ha túllépte ezt az értéket, az eredmény nem gyorsítótáraz.
query_cache_forced_refresh false Ha igaz értékre van állítva, a lekérdezés végrehajtásának eredményét gyorsítótárazásra kényszeríti, vagyis az eredmény lecseréli a meglévő gyorsítótárazott adatokat, ha létezik).

Feljegyzés

A munkamenet paraméterei beállíthatók egy munkamenethez (például trinói parancssori felület használata esetén), vagy több utasítással is beállíthatók a lekérdezés szövege előtt. Például:

set session query_cache_enabled=true;
select cust.name, *
from tpch.tiny.orders 
join tpch.tiny.customer as cust on cust.custkey = orders.custkey
order by cust.name
limit 10;

A végeredmény gyorsítótárazása JMX-metrikákat hoz létre, amelyek a Felügyelt Prometheus és a Grafana használatával tekinthetők meg. A következő metrikák érhetők el:

Metrika Leírás
trino_cache_cachestats_requestcount A gyorsítótárrétegen áthaladó lekérdezések teljes száma. Ez a szám nem tartalmazza a gyorsítótár kikapcsolásával végrehajtott lekérdezéseket.
trino_cache_cachestats_hitcount A gyorsítótár-találatok száma, azaz a lekérdezések száma, amikor az adatok rendelkezésre állnak, és a gyorsítótárból adták vissza.
trino_cache_cachestats_misscount A gyorsítótárhibák száma, azaz a lekérdezések száma, amikor az adatok nem voltak elérhetők, és gyorsítótárazva kellett lenniük.
trino_cache_cachestats_hitrate A gyorsítótár-találatok százalékos megjelenítése a lekérdezések teljes száma alapján.
trino_cache_cachestats_totalevictedcount A gyorsítótárból kizárt gyorsítótárazott lekérdezések száma.
trino_cache_cachestats_totalbytesfromsource A forrásból beolvasott bájtok száma.
trino_cache_cachestats_totalbytesfromcache A gyorsítótárból beolvasott bájtok száma.
trino_cache_cachestats_totalcachedbytes Gyorsítótárazott bájtok teljes száma.
trino_cache_cachestats_totalevictedbytes Kiürített bájtok teljes száma.
trino_cache_cachestats_spaceused A gyorsítótár aktuális mérete.
trino_cache_cachestats_cachereadfailures Hányszor nem olvashatók be adatok a gyorsítótárból hiba miatt.
trino_cache_cachestats_cachewritefailures Azon esetek száma, amikor az adatok hiba miatt nem írhatók a gyorsítótárba.

Az Azure Portal használata

  1. Jelentkezzen be az Azure portálra.

  2. Az Azure Portal keresősávjában írja be a "HDInsight az AKS-fürtön" kifejezést, és válassza az "Azure HDInsight az AKS-fürtökön" lehetőséget a legördülő listából.

    Képernyőkép a HDInsight AKS-fürtön való használatának első lépéseiről.

  3. Válassza ki a fürt nevét a listalapon.

    Képernyőkép a HDInsight AKS-fürtön való kiválasztásáról a listából.

  4. Lépjen a Konfigurációkezelés panelre.

    Képernyőkép az Azure Portal konfigurációkezelésről.

  5. Nyissa meg a config.properties –> Egyéni konfigurációkat, majd kattintson a Hozzáadás gombra.

    Képernyőkép az egyéni konfigurációról.

  6. Adja meg a szükséges tulajdonságokat, és kattintson az OK gombra.

    Képernyőkép a konfigurációs tulajdonságokról.

  7. Mentse a konfigurációt.

    Képernyőkép a konfiguráció mentéséről.

ARM-sablon használata

Előfeltételek

Meg kell határoznia a tulajdonságokat a koordinátor összetevőjében properties.clusterProfile.serviceConfigsProfiles az ARM-sablon szakaszában. Az alábbi példa bemutatja a tulajdonságok hozzáadásának helyét.

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {},
    "resources": [
        {
            "type": "microsoft.hdinsight/clusterpools/clusters",
            "apiVersion": "<api-version>",
            "name": "<cluster-pool-name>/<cluster-name>",
            "location": "<region, e.g. westeurope>",
            "tags": {},
            "properties": {
                "clusterType": "Trino",

                "clusterProfile": {

                    "serviceConfigsProfiles": [
                        {
                            "serviceName": "trino",
                            "configs": [
                                {
                                    "component": "coordinator",
                                    "files": [
                                        {
                                            "fileName": "config.properties",
                                            "values": {
                                                "query.cache.enabled": "true",
                                                "query.cache.ttl": "10m"
                                            }
                                        }
                                    ]
                                }
                            ]
                        }
                    ]
                }

            }
        }
    ]
}

Hive/Iceberg/Delta Lake gyorsítótárazás

Mindhárom összekötő ugyanazokat a paramétereket használja, mint a Hive gyorsítótárazása.

Feljegyzés

Egyes paraméterek nem konfigurálhatók, és mindig az alapértelmezett értékükre vannak beállítva:
hive.cache.data-transfer-port=8898,
hive.cache.bookkeeper-port=8899,
hive.cache.location=/etc/trino/cache,
hive.cache.disk-usage-percentage=80

Az alábbi példa bemutatja, hogy hol adhat hozzá tulajdonságokat a Hive-gyorsítótárazás ARM-sablonnal való engedélyezéséhez.

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {},
    "resources": [
        {
            "type": "microsoft.hdinsight/clusterpools/clusters",
            "apiVersion": "<api-version>",
            "name": "<cluster-pool-name>/<cluster-name>",
            "location": "<region, e.g. westeurope>",
            "tags": {},
            "properties": {
                "clusterType": "Trino",

                "clusterProfile": {

                    "serviceConfigsProfiles": [
                        {
                            "serviceName": "trino",
                            "configs": [
                                {
                                    "component": "catalogs",
                                    "files": [
                                        {
                                            "fileName": "hive1.properties",
                                            "values": {
                                                "connector.name": "hive"
                                                "hive.cache.enabled": "true",
                                                "hive.cache.ttl": "5d"
                                            }
                                        }
                                    ]
                                }
                            ]
                        }
                    ]
                }

            }
        }
    ]
}

Telepítse a frissített ARM-sablont a fürt változásainak megfelelően. Megtudhatja, hogyan helyezhet üzembe ARM-sablont.