Przechowywanie i pobieranie danych klucz-wartość

Wprowadzenie do NoSQL

Jake Roach

Data Engineer

Przechowywanie danych klucz-wartość

# Import redis, make a connection
r = redis.Redis(...)

# Store a key-value pair
r.set("username", "JDoe")
# Store another key-value pair
r.set("age", 27)
# Overwrite an existing key
r.set("username", "BSmith")

Po nawiązaniu połączenia z serwerem Redis:

  • Przekaż klucz i wartość do metody .set()
  • Można przekazywać typy int lub float — będą zapisane jako stringi
  • Można nadpisywać istniejące pary klucz-wartość
Wprowadzenie do NoSQL

Pobieranie danych klucz-wartość

Pobieranie pary klucz-wartość

# Store a key-value pair
r.set("username", "JDoe")

# Retrive the key-value pair
username = r.get("username")

# Print the result
print(username)
JDoe

Nadpisywanie pary klucz-wartość

r.set("username", "BSmith")
username = r.get("username")
print(username)
BSmith

Próba dostępu do nieistniejącego klucza

favorite_color = r.get("favorite_color")
print(favorite_color)
None
Wprowadzenie do NoSQL

Przechowywanie złożonych danych klucz-wartość

# Store a dictionary using .hset()
r.hset(
    "shopping_cart", 
    mapping={
        "item_id": "1003",
        "quantity": 2,
        "price": 79.99
    }
)
# Retrieve the dictionary
r.hgetall("shopping_cart")

Można przechowywać bardziej złożone typy, np. dict:

  • .hset() przyjmuje klucz i dict
  • Przekaż klucz do .hgetall()

$$

{
    'item_id': '1003',
    'quantity': '2',
    'price': '79.99'
}
Wprowadzenie do NoSQL

Czas na ćwiczenia!

Wprowadzenie do NoSQL

Preparing Video For Download...