Как теория отношений применяется в тех случаях, когда я могу заботиться о ней во время ее изучения?
-
01-07-2019 - |
Вопрос
Итак, я прохожу курс дискретной математики в OpenCourseWare Массачусетского технологического института, и мне интересно...Я вижу связь между отношениями и графиками, но недостаточно, чтобы «владеть» ею.Я также реализовал простой конечный автомат на SQL, поэтому довольно хорошо разбираюсь в графиках, но не в более тщательном изучении того, как полностью применяются отношения и множества.Должен ли я просто следовать ходу мыслей Йегге, когда я просто просматриваю то, что мне неинтересно, и возвращаюсь, когда узнаю больше?Мне бы хотелось иметь возможность лучше анализировать графовые структуры, которые я создаю изо дня в день (звучит забавно), и я хочу быть уверен, что не упускаю ценную информацию прямо сейчас.
(РЕДАКТИРОВАТЬ:Я хотел бы получить лучшее представление о том, как различные свойства множеств и отношений связаны с такими вещами, как теория графов, и как базовая теория графов связана с множествами/отношениями.)
Есть ли хорошие ресурсы, где я мог бы узнать об этом больше?Я использую пятое издание книги Розена «Дискретная математика и ее приложения», если это имеет значение.
Спасибо!
Решение
ух ты, 4 часа и никакого ответа;У меня был похожий опыт в школе, но я просто выучил материал и позже понял, для чего он нужен.это оказывается очень полезно, так что посмотрим, поможет ли это -
база данных формально определяется как набор отношений, но она также является графом;каждая таблица является узлом, каждый столбец — узлом, соединенным с таблицей, каждая строка — узлом, соединенным с таблицей, каждое поле — узлом, соединенным со строкой, отношения между таблицами соединяют узлы, отношения внешнего ключа соединяют строки, запрос ограничения (где предложения) и соединения соединяют узлы и наборы узлов и т. д.
SQL-запрос можно представить как обход графа, сформированного отношениями и значениями базы данных, и выполнение операций над каждым узлом.Именно это и делает планировщик выполнения запросов: он разбивает запрос на набор фундаментальных операций и упорядочивает их в наиболее эффективный граф.
Обновления вашей базы данных также можно рассматривать как операции с графами, например.обновление количества в строке позиции заказа распространяет изменение на итоговую сумму в строке заказа, которая распространяет изменение на TotalSales в строке «Клиент» и так далее.
многие распространенные проблемы переходят в проблемы обхода графа.Вы когда-нибудь использовали Google Maps, чтобы проложить маршрут до какого-либо места?