ВУЗы и колледжи

Что делать с учебой? База данных

У меня сессия, мне сказали что поставят зачет если в кратце расскажу о базах данных, я в интернете смотрел, там все слишком непонятно и слишком подробно. Пожалуйста расскажите мне в кратце о БД.
Natus Vincere
Natus Vincere
360
ок, запоминай. базы данных бывают реляционные, документоориентированные, графовые, те, что тупо хранят ключ-значение, и жуткие монстры для big data. ключ-значение - примеры: redis, memcache, leveldb. документоориентированные - пример: couchdb, mongodb. графовые - пример: neo4j, жираф. big data - пример: cassandra, terrastore. реляционные - пример: postgresql, mysql, sqlite.
реляционные нужны для организации данных в виде таблиц, ссылающихся друг на друга по какому-нибудь внешнему ключу. канонический пример: таблица товаров, таблица заказов, таблица заказ-товар. у одного заказа может быть много товаров, и эти связи описаны в отдельной таблице. очень удобная для большинства задач, но медленнее, чем ключ-значение раз в 10 (жутко абстрактно). строки таблицы - объекты, колонки - свойства объектов. очень хорошо подходят для маппинга в ООП языки.
документоориентированные - что-то вроде ключ-значение, но значение - это обычно json-подобный объект со своими ключами и значениями. основное различие - вместо колонок таблицы у тебя жутко кастомный формат каждой записи. например тебе нужно сохранить 100000 событий, которые сильно отличаются друг от друга, у которых очень много разных свойств.
графовые - тут без матана не разберешься. используют их, например, для хранения связей в социальных сетях (петя лайкнул васю, вася дружит с машей, маша шлет сердечки пете). в реляционных базах это очень неэффективно хранить.
ключ-значение - чисто для очень быстрой записи и чтения, обычно используются как in-memory cache.
big data - тут не разбираюсь, прочитаешь сам.
ДБ
Денис Боржемский
2 570
Лучший ответ