Как компьютеры и базы данных сочетаются

SQL означает язык структурированных запросов. SQL - это язык программирования, который мы используем для доступа к данным из баз данных.

Краткая историческая справка

SQL был разработан примерно в 1970-х покойным Эдгаром Коддом. (Однако следует отдать должное Дональду Д. Чемберлину и Раймонду Ф. Бойсу за помощь в создании и разработке SQL, всем коллегам в IBM)

Кодд был английским иммигрантом, который приехал в Соединенные Штаты после Второй мировой войны, чтобы работать в IBM математическим программистом. Именно здесь, когда он работал в IBM, он начал разрабатывать и развивать идею реляционных моделей, лежащих в основе SQL.

Реляционные модели

Идея заключается в том, что данные можно смоделировать и сгруппировать по взаимосвязи. Это набор данных, которые связаны друг с другом общим для них ключом.

Для более глубокого понимания обязательно посетите страницу Википедии, а также некоторые курсы по информатике.

Https://en.wikipedia.org/wiki/Relational_model

Что такое реляционная база данных?

Классическая организация данных в структурированный формат. Подобно телефонной книге - они состоят из двух или более таблиц со столбцами и строками.

Каждая строка представляет собой запись в этой таблице

Каждый столбец представляет тип данных

Чтобы они были наиболее эффективными, им требуются инструкции по хранению в них данных. Точно так же, как мы не добавляем номера телефонов в телефонную книгу случайным образом, мы не делаем то же самое с реляционными базами данных.

Схема - взаимосвязь между таблицами и типами данных столбцов.

Популярные базы данных SQL

MySQL, Oracle, IM DB2, Sybase, MS SQL Server, Microsoft Azure, MariaDB, PostgreSQL

Что такое нереляционная база данных?

Неструктурированная по своей природе организация данных. Подобно файлам / папкам вон там - они собирают связанную информацию в нескольких базах данных. Нереляционные базы данных чаще называют базами данных NoSQL. (Не только SQL)

Популярные базы данных NoSQL

MongoDB, Apache CouchDB, HBase, Oracle NoSQL, Apache Cassandra DB, Riak

В чем разница?

Как было определено ранее, SQL - это структурированный, жесткий язык, который требует, чтобы до поступления данных он придерживался схемы, то есть схемы того, как данные хранятся. Данные имеют четкий и определенный путь и связаны с другими данными в базе данных.

SQL предназначен для небольших наборов данных, тогда как NoSQL лучше работает с большими наборами данных

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

Различные типы нереляционных баз данных

Модель "ключ-значение"

Хранит данные с проиндексированными ключами и значениями

Колонка Store

Сохраняет таблицы данных в конфигурации столбец / строка

База данных документов

Более сложная версия модели "ключ-значение", в которой каждый документ имеет собственный уникальный ключ и данные.

База данных графиков

Для хранения взаимосвязанных данных, которые лучше всего отображать с помощью графиков - могут быть очень сложные вещи!