Запрос с Редисом?

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

Мне что-то не хватает, или я должен использовать более надежную базу данных, такую ​​как MongoDB?

Ответы

Ответ 1

Я бы рекомендовал прочитать этот учебник о Redis, чтобы понять его концепции и типы данных. У меня также возникли проблемы, чтобы понять, почему нет поддержки запросов, аналогичной другим (нет) базам данных SQL, пока я не прочитаю несколько статей и не попытаюсь проверить и сравнить Redis с другими решениями. Возможно, это не правильная база данных для вашего случая использования, хотя она очень быстрая и поддерживает расширенные структуры данных, но не имеет запросов, что имеет для вас решающее значение. Если вы ищете базу данных, которая позволяет вам запрашивать ваши данные, вы должны попробовать mongodb или, возможно, riak.

Ответ 2

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

Если вы способны (легко реализовать), вы должны использовать эти примитивы (строки, хэши, списки, набор и отсортированные наборы). Главное преимущество Redis - это молниеносно, но что он довольно примитивен хранилище ключей-значений (redis немного более продвинутый). Это также означает, что он не может быть queried как, например, SQL.

Возможно, было бы проще использовать более продвинутый магазин, например, Mongodb, который является документально-ориентированной базой данных. Компромисс, который вы делаете в этом случае, - ПРОИЗВОДИТЕЛЬНОСТЬ, но я считаю, что вам нужно только решить, что если это станет проблемой, чего, вероятно, не будет, потому что Mongodb также довольно быстро и имеет то преимущество, что это может быть queried, Я думаю, было бы целесообразно иметь надлежащие индексы для ваших запросов (читать > писать), чтобы сделать это быстро.

Ответ 3

Я думаю, что главный ответ исходит из структуры данных. Проверьте эту статью о NoSQL Data Modeling, для меня это было очень полезно: NoSql Data Modeling.

Вторая хорошая статья о моделировании данных и сравнение между SQL и NoSQL заключается в следующем: Антивирусная модель реляционной модели.