company_banner

Лекции Технопарка. Базы данных (весна 2017)


    Всем жаждущим знаний предлагаем ознакомиться с новыми лекциями Технопарка, посвящённым базам данных. Курс ведёт Артём Навроцкий, ведущий программист в Allods Team.


    Список лекций:


    1. Введение
    2. Модификация и выборка данных
    3. Выборка данных (продолжение)
    4. Транзакции. Триггеры и хранимые процедуры
    5. Индексы и производительность
    6. Оптимизация запросов. Оптимизация структуры данных
    7. Репликация, полнотекстовый поиск, JSON
    8. Сохранность данных

    Цель курса — это дать знания по:


    • Концепции и принципам реляционной модели данных.
    • Методам проектирования баз данных.
    • Подходам к профилированию производительности.
    • Основам архитектуры современных СУБД.
    • Основам и границам применимости реляционной модели.
    • Основным типам нереляционных баз данных, а также области их применимости при построении хранилищ данных.

    Привить навыки:


    • Проектированию концептуальных и логических схем для высоконагруженных баз данных.
    • Построению запросов на выборку и модификацию данных к реляционным СУБД.
    • Оптимизации запросов и структура реляционной БД в целях повышения производительности.
    • Выполнению запросов к нереляционной документоориентированной СУБД.
    • Разработке прикладных программ, осуществляющих взаимодействие с БД.

    Лекция 1. Введение



    Из первой лекции вы узнаете, зачем нужны СУБД, какова краткая история развития баз данных, что такое реляционные БД и NoSQL. Познакомитесь с реляционной моделью данных и основными операциями в рамках БД. Также в ходе лекции обсуждаются первичный и суррогатный ключи, рассказывается о типах данных в PostgreSQL. Вы познакомитесь с примерами схем баз данных, версионированием схем. Обсуждается задача генерации БД на основе исходного кода, методы инкрементных и идемпотентных изменений.


    Лекция 2. Модификация и выборка данных



    Первая часть лекции посвящена введению в проектирование баз данных. Вторая часть посвящена основам SQL: основные команды, создание таблиц, выборка данных. Затрагивается тема JOIN'ов, проводится обзор INFORMATION_SCHEMA. И в завершении обсуждается, как можно хранить иерархические структуры в базах данных.


    Лекция 3. Выборка данных (продолжение)



    Начало третьей лекции посвящено COLLATION и регистронезависимому поиску. Затем рассказывается о задаче выборки данных (SELECT): формирование подзапросов, оконные функции, UNION, снова поднимается тема JOIN’ов, обсуждаются рекурсивные запросы. И в завершение вы узнаете про операцию VIEW.


    Лекция 4. Транзакции. Триггеры и хранимые процедуры



    Лекция состоит из четырёх частей. Первая часть посвящена транзакциям: обсуждается задача обеспечения долговечности, формирование журнала транзакций, обеспечение изолированности и атомарности, а также уровни изолированности транзакций. Затем рассказывается о триггерах: как можно их использовать для поддержания целостности и бизнес-логики, каковы их недостатки. Далее обсуждаются хранимые процедуры и функции, а в завершение рассказывается о распределённых транзакциях и персистентных очередях.


    Лекция 5. Индексы и производительность



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


    Лекция 6. Оптимизация запросов. Оптимизация структуры данных



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


    Лекция 7. Репликация, полнотекстовый поиск, JSON



    Эта лекция состоит из четырёх частей. Первая посвящена репликации: рассказывается о физической, логической, синхронной и асинхронной репликациях, о балансировке и отказоустойчивости, а также о проблемах репликации. Затем обсуждается проблематика полнотекстового поиска. Далее затрагивается вопрос хранения в БД географических данных. И в завершение рассказывается о хранении слабоструктурированных данных (JSON).


    Лекция 8. Сохранность данных



    Последняя лекция посвящена различным аспектам обеспечения сохранности информации в базах данных. Сначала рассказывается о резервном копировании, о его отличии от репликации, о создании логических и физических резервных копий. Затем вы узнаете о том, как нужно конфигурировать базы данных: каковы общие принципы настройки, как настраивать память и ввод/вывод, что такое табличные пространства, как собирать информацию о текущем состоянии сервера. И завершающая часть лекции посвящена обеспечению безопасности: политикам прав доступа и защите от SQL-инъекций.




    Плейлист всех лекций находится по ссылке. Напомним, что актуальные лекции и мастер-классы о программировании от наших IT-специалистов в проектах Технопарк, Техносфера и Технотрек по-прежнему публикуются на канале Технострим.


    Другие курсы Технопарка на Хабре:



    Информацию обо всех наших образовательных проектах вы можете найти в недавней статье.

    • +44
    • 29k
    • 6
    Mail.Ru Group 774,80
    Строим Интернет
    Поделиться публикацией
    Комментарии 6
    • 0
      Будет, что на выходных почитать/посмотреть.
      Спасибо.
      • 0
        «тут друг спрашивает»©
        -А лекции где-то можно скачать одной пачкой? С йотуба неудобно смотреть при медленном инете, а скачивать доунлоадерами влом:)
        • 0
          Друг говорит: пользуйте FlashGot
          • 0

            Друг даже знает что делать, но ему влом ;)

          • +1
            На степике будет курс?
            • 0
              Нет, пока не планируем.

            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

            Самое читаемое