objetos
No ReDiS directamente por encima de varias estructuras de datos implementadas base de datos kv, pero serán una combinación de diferentes objetos. objeto clave y objetos de valor.
estructura de datos de objeto definen como sigue: (zConfigurar conjunto ordenado)
La siguiente es la relación entre tipos de objetos y aplicación de:
Cadena objetos --String
- Cuando un número entero de menos de 32 bits (cuatro bytes PORQUE ptr *) se almacena int
- Cuando menos de 32 bytes cadena: embstr (número de coma flotante se almacena como una cadena)
- Cuando mayor que 32 bytes de prima
Así embstr y crudo así que ¿qué más da?
- Embstr optimizado, asignado sólo una vez, buena OBJ asignar memoria y SDS usados
- Ibid., Liberar necesidad de memoria sólo se libera una vez ~
- sds Obj y distribución continua, se carga con la carga, que será más rápido
Además, la cadena por encima de los tres modos diferentes convertirá automáticamente entre sí cuando sea necesario, pero tenga en cuenta embstr de hecho esencialmente un objeto de sólo lectura cambios en su primero convertirlo en crudo
Lista de objetos --list
LinkedList o ZipList, respectivamente, como se muestra a continuación ( de cadena objeto es los únicos otros objetos pueden ser objetos anidados )
¿Cómo estos dos códigos a elegir?
ZipList:
1. La longitud de cada elemento es menor de 64 bytes
2. El número de elementos es menor que 512
El resto se utiliza LinkedList, las condiciones anteriores no se cumplen serán seleccionados en LinkedList
objeto hash
ZipList o tabla hash (diccionario)
valores delanteros y traseros clave ZipList, comenzando en el extremo de la mesa. Hashtable aspirado clave y el valor son los objetos de cadena
Cuándo utilizar ZipList
- Todas las claves y los valores están a menos de 64 bytes
- Número es inferior a 512
Las conversiones anteriormente.
conjunto de objetos
Intset o una tabla hash (el valor es nulo)
Al utilizar intset?
- Todos los elementos son valores enteros
- El número de elementos es no más de 512
Conversiones Ibid.
conjunto ordenado
ZipList o a + Diccionario skipList
¿Por qué utilizar skipList + diccionario de ella?
En primer lugar, skiplist y diccionario objetos compartidos elementos, por lo que la situación no se produce pérdida de memoria, seguido con el fin de lograr y encontrar el valor del elemento especificado para encontrar la complejidad del tiempo de un rango son relativamente pequeñas, por lo que el uso de una combinación de ambos
Shashi Hou con ZipList?
- El número de elementos es menor que 128
- Cada elemento de una longitud de menos de 64 bytes
Conversiones Ibid.