Gyorsítótározás

term_id: caching

Category: engineering_practice

Definition

Az AI mérnökségben a gyorsítótározás optimalizálja a teljesítményt, ha a legutóbbi vagy gyakori lekérdezések eredményeit, modell-előrejelzéseket vagy köztes számításokat gyors memóriában (pl. RAM) tartjuk. Ez csökkenti a drága alapvető adatforrásokhoz való ismételt hozzáférés szükségességét.

Summary

A gyorsítótározás egy technika, amely a gyakran hozzáférhető adatokat ideiglenes, nagy sebességű tárolási rétegben tartja meg a késleltetés csökkentése és a elsődleges adattárolók terhelésének mérséklése érdekében.

Key Concepts

  • késleltetés csökkentése
  • memóriaoptimalizálás
  • kicserélési politikák
  • találati ráta

Use Cases

  • Modell inferencia eredményeinek tárolása
  • Adatbázis-lekérdezések kimenetének gyorsítótározása
  • Jellemző-beágyazások előzetes kiszámítása

Code Example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
import redis

# Simple caching example
r = redis.Redis(host='localhost', port=6379, db=0)

def get_prediction(model_id, input_data):
    cache_key = f"pred_{model_id}_{hash(str(input_data))}"
    result = r.get(cache_key)
    if result:
        return result.decode('utf-8')
    # Compute if not cached
    prediction = model.predict(input_data)
    r.setex(cache_key, 3600, str(prediction))
    return prediction