MongoDB хэширует поля поиска - PullRequest
0 голосов
/ 07 марта 2019

Я пытаюсь найти лучший способ реализовать способ более компактного хранения моих данных при сохранении тех же данных при извлечении.

Скажем, у меня есть тривиальное поле, такое как colorнапример, и это поле хранит шестнадцатеричные значения для каждого цвета, и у меня есть красный 0xff0000, зеленый 0x00ff00, синий #0000ff и т. д. *

В пандах я могу использовать category, чтобы сделатьданные меньше, но как я могу сделать то же самое в MongoDB?

Я подумал, почему бы не сделать дикт и присвоить {0: 0xff0000, 1: 0x00ff00, 2: 0x0000ff}, но теперь я ограничил себя просто бессмысленными целыми числами в моих данных для поиска цветов,Как насчет хеширования других подобных полей данных, таких как породы собак или этническая принадлежность людей, надеюсь, это поможет мне понять.

Итак, у меня есть несколько вариантов, чтобы использовать для поиска правильных данных или я просто придерживаюсь использованияфактические данные, если в Монго нет функции для этого?

edit Не думаю, что цветовая аналогия была лучшим примером, но, надеюсь, когда я говорю такие данные, как породы собак,или этническая принадлежность и тому подобное, это лучший пример.

Пример:

dog_breeds = {0: "German Shepherd", 1: "Laborador": 2: "Maltese"}

Мое написание пород, вероятно, ужасно, но вы можете видеть хранение целых чисел вместо повторяющихсяимена могут быть более эффективными для памяти

...