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
Jelentkezzen be az Azure portálra.
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.
Válassza ki a fürt nevét a listalapon.
Lépjen a Konfigurációkezelés panelre.
Nyissa meg a config.properties –> Egyéni konfigurációkat, majd kattintson a Hozzáadás gombra.
Adja meg a szükséges tulajdonságokat, és kattintson az OK gombra.
Mentse a konfigurációt.
ARM-sablon használata
Előfeltételek
- Egy operatív Trino-fürt HDInsighttal az AKS-en.
- Hozzon létre ARM-sablont a fürthöz.
- Tekintse át a teljes fürt ARM-sablonmintáját .
- Az ARM-sablonok készítésének és üzembe helyezésének ismerete.
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.