2016-05-07 5 views
0

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

Как создать идентификатор пользователя, чтобы его можно быстро найти, когда ему нужно, и его можно легко индексировать для быстрого поиска?

ответ

0

Есть два способа, чтобы получить поле user_id индексов, которые могут привести к быстрому поиска: поле _id

  1. Используйте MongoDB, который индексируется по умолчанию. Вы можете сохранить user_is в этом поле. Это дает два преимущества:

    • a. Вы можете использовать существующее поле вместо создания нового файла для хранения ID пользователя
    • b. Вы можете сэкономить на создании дополнительного индекса.
  2. Во-вторых, вы можете создать новую поданную user_id, который хранит пользователя, если для каждого пользователя и могут быть проиндексированы с помощью:

    db.ensureIndex ({user_id: 1}, {фон: истинный})

+0

Для второго метода я должен использовать цифры, которые увеличиваются, чтобы обеспечить хороший индекс, или я могу использовать значения Hex или строки, содержащие A-Z0-9 ?? – mskw

+0

Mongodb позволяет индексировать различные типы полей. Вы можете создать индекс как целочисленный, так и шестнадцатеричный – Astro

+0

Что такое общая передовая практика? Если мой ресурс url содержит mongodb _id, это выглядит очень долго. Лучше ли использовать только пронумерованный идентификатор, который короче? – mskw

 Смежные вопросы

  • Нет связанных вопросов^_^