Redis umożliwia przechowywanie danych w 16 różnych "bazach danych" (od 0 do 15). Czy istnieje sposób na wykorzystanie przestrzeni dyskowej na jedną bazę danych. W poleceniu INFO wyświetlana jest tylko liczba kluczy na bazę danych.Wykorzystanie pamięci w trybie redis dla każdej bazy danych
Odpowiedz
Nie, nie można indywidualnie kontrolować każdej bazy danych. Te "bazy danych" służą wyłącznie do logicznego podziału twoich danych.
Co możesz zrobić (w zależności od konkretnych wymagań i konfiguracji) jest spin wielu wystąpień redis, każdy wykonuje inne zadanie i każdy ma swój własny plik redis.conf
z limitem pamięci. Miejsce na dysku nie może być ograniczone, przynajmniej nie na poziomie Redis.
Nota boczna: Należy pamiętać, że 16 numer bazy danych nie jest na stałe zakodowany - można ustawić go w redis.conf
.
Zobacz redis-rdb-tools
można uzyskać przybliżone zużycie pamięci przez bazę danych, powinny być w granicach 10% rzeczywistości.
Spróbuję, ale myślę, że mówiąc "w 10% rzeczywistości", mówisz 10% więcej niż to, co raportuje twój program, czy to prawda? Uzyskiwanie serializowanej długości dla każdego klucza za pomocą obiektu debugowania, jak sugeruje to pytanie (http://stackoverflow.com/questions/7638542/redis-show-database-size-size-ke-keys), czy będzie lepszym niższym ograniczeniem ? Muszę sprawdzić. – user209377
Dla małych obiektów długość serializowana jest dokładna. Ale w przypadku większych obiektów jest to okropnie niepoprawne. Redis-rdb-tools inżynierowie wsteczni Struktury danych Redis, aby znaleźć pamięć używaną. Zobacz komentarze na https://github.com/sripathikrishnan/redis-rdb-tools/blob/master/rdbtools/memprofiler.py, aby dowiedzieć się więcej –
Zrobiłem to dzwoniąc pod numer dump
na wszystkich klawiszach w DB Redis i mierząc całkowitą liczbę użytych bajtów. Spowoduje to spowolnienie serwera i trochę potrwa. Wydaje się, że wielkość zwrotu wynosi około 4 razy mniej niż rzeczywiste użycie pamięci. Te liczby dadzą ci pojęcie, która baza danych używa najwięcej miejsca.
Oto mój kod: https://gist.github.com/mathieulongtin/fa2efceb7b546cbb6626ee899e2cfa0b
- 1. Wykorzystanie pamięci dla każdej puli aplikacji
- 2. Używanie redis jako pamięci podręcznej dla bazy danych mysql
- 3. Redis - monitorowanie użycia pamięci
- 4. Wysokie wykorzystanie pamięci dla manekinów
- 5. Wykorzystanie pamięci ArangoDB
- 6. Doktryna wykorzystanie pamięci zapytanie
- 7. Wykorzystanie pamięci microservices w chmurze Spring
- 8. Jak powinienem używać Redis jako pamięci podręcznej dla SQL Server?
- 9. Wykorzystanie pamięci aplikacji Xamarin dla systemu Android
- 10. Wykorzystanie procesora przez bazę danych?
- 11. Idealne wykorzystanie pamięci dla aplikacji na iOS.
- 12. Zapisywanie na dysku bazy danych w pamięci
- 13. Jak profilować wykorzystanie pamięci?
- 14. Szukam opartej na dysku bazy danych typu redis
- 15. Czy istnieje zdarzenie keyspace w trybie redis dla klucza wprowadzającego do bazy danych, który jeszcze nie istnieje?
- 16. Multi-Site CMS - Baza danych dla każdej witryny lub JEDNEJ bazy danych dla wszystkich stron?
- 17. Wykorzystanie pamięci w kontenerach Docker
- 18. Odtwórz wykorzystanie pamięci szkieletowej
- 19. Praktyczne wykorzystanie pamięci wirtualnej
- 20. Redis kontra MySQL dla danych finansowych?
- 21. Wykorzystanie pamięci scikit-learning DBSCAN
- 22. Wybór Redis Maxmemory wielkość i pamięć BGSAVE Wykorzystanie
- 23. Wykorzystanie pamięci: Program przydziela zbyt dużo pamięci
- 24. Cassandra Vs ScyllaDB Wykorzystanie pamięci
- 25. Jak analizować wykorzystanie pamięci ze zrzutu pamięci?
- 26. Jak uzyskać wykorzystanie pamięci w Swift
- 27. Zwiększone wykorzystanie pamięci dzięki Console.WriteLine()
- 28. Jak dodać Wykorzystanie pamięci podręcznej przeglądarki dla CDN w .htaccess?
- 29. String VS Byte [], wykorzystanie pamięci
- 30. Podłączanie do zdalnej pamięci podręcznej Redis Redis przy użyciu Redis CLI
Jest to kolejna opcja, ale nie jestem pewien, jak dużo napowietrznych zużycia pamięci dla każdej instancji. – user209377
Ale to jest opcja –