Преимущество NoSQL в сохранении текстовых данных - PullRequest
0 голосов
/ 19 мая 2011

Q1. Почему люди часто предпочитают использовать NoSQL над RDBMS для хранения данных, таких как твиты? Q2. Существует ли база данных NoSQL, поддерживающая синтаксис SQL-подобных запросов?

Пример таблицы для Q1 будет:

Состояние

  • 1010 * UID *
  • Состояние
  • Отметка

Ответы [ 3 ]

2 голосов
/ 19 мая 2011

1:

Продукты NoSQL прежде всего известны своей способностью к масштабированию (разделение и репликация) и дизайном без схемы. Твиттер использует FlockDB (графическую БД), а не СУБД из-за этого, и потому, что имеет больше смысла использовать графики для описания того, кто за кем следует, а не из-за реальных текстовых сообщений.

Другие преимущества NoSQL включают в себя передовые методы запросов (Map / Reduce): CouchDB и RavenDB являются документно-ориентированными БД, построенными на основе Lucene, и поэтому могут предлагать полнотекстовые поисковые запросы "из коробки", что вы никогда не сможет эффективно работать с RDBMS.

2:

RavenDB запросы - это выражения Linq, которые имитируют синтаксис SQL и совершенно идентичны ему.

1 голос
/ 19 мая 2011

Базы данных NoSQL, особенно MongoDB , часто являются хорошим выбором для хранения таких вещей, как твиты, поскольку они предлагают очень высокую скорость записи, быстрые запросы и могут легко распределять большие наборы данных по кластеру серверов.

Многие базы данных NoSQL имеют собственный синтаксис запросов, но некоторые, такие как Hive , продукт хранилища данных, построенный на основе Hadoop, имеют языки запросов, подобные SQL.

1 голос
/ 19 мая 2011
  1. Для неструктурированных данных или для данных, структура которых является динамической (т. Е. Если они хранятся в СУБД, структура таблицы будет постоянно изменяться).Представьте, что вы храните данные, скажем, о фильмах, в базе данных.Вы начинаете с заголовка и режиссера, но вскоре понимаете, что вам также нужно сохранить всех актеров / актрис, год -> изменение структуры таблицы.Затем вы хотите хранить похожие фильмы -> другое изменение.Для такого сценария сохранение данных в парах ключ / значение может быть проще, поскольку вы просто добавляете новые данные в существующую структуру (хотя приведенный вами пример - в основном BLOB текста - не совсем подходит под это описание).

  2. Orient поддерживает SQL-подобный синтаксис

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...