Продолжим разбор проверок структуры базы данных, на примере PostgeSQL. Данная статья будет посвящена проверкам связанным индексами. Статический анализ не учитывает размер индексов и частоту их использования, которые используются в эвристиках других анализаторов.
В первой статье цикла рассмотрена проверка корректности выбора индекса для полей, содержащих массив значений.
Продолжим разбор проверок структуры базы данных, на примере PostgeSQL. Данная статья будет посвящена проверкам связанным с ограниением FOREIGN KEY (FK). Часть проверок целесообразно выполнять на регулярной основе, а некоторые позволяют лучше понять структуру проекта при первом знакомстве и применяются только один раз.
Статический анализ структуры базы данных — это процесс выявления ошибок, нерекомендуемых практик и потенциальных проблем в базе данных только на основе структуры, типов данных, свойствах объектов. Статиеский анализ структуры не задействует ни пользовательские данные, ни статистику по таким данным.
Рассмотрим подробнее статический анализ структуры базы данных — что это, какие задачи решает, как интегрировать статический анализ в CI.
Использование ограничений на стороне базы данных, таких как внешние ключи, проверки значений, требования уникальности, иногда вызывают споры среди разработчиков. Аргумменты «за» и «против» обеих сторон хорошо известны.
Рассмотрим пример, когда ограничения не просто применяются, а реализуют дополнительную логику с помощью дублирования некоторых данных.
Разберем внедрение партиционирования на практическом примере, обсудим выбор реализации, альтернативы. Учтем ограничения, проистекающие из самих обрабатываемых данных.
Количество РД/НД ФСТЭК растет, некоторым действующим [открытым] документам вот-вот стукнет четверть века!
Студенты и выпускники ВУЗов младше многих из этих основополагающих документов — вот где достойный классиков «конфликт поколений»!
Чтобы помочь студентам с освоением РД/НД ФСТЭК [ГОСТЕХКОМИССИИ], проложить мостик между «наследием» и «современными веяниями», документы сведены в единую таблицу и распределены по отношению к грифу обрабатываемой информации.
Перебрав различные подходы, метрика по грифу информации оказалась наиболее наглядной и универсальной.
Подробного разбора документов не будет, цель — построить наглядное системное представление о документах, об их взаимосвязи.
Перед преподавателем стоит задача не только «начитать материал», но и заинтересовать учащихся. Личная заинтересованность, как правило, лучший двигатель и допинг, которые позволяют погрузиться в предмет, читать статьи и книги, а не только Википедию по диагонали, проходить дополнительные курсы и сдавать квалификационные экзамены.
Как «зажечь» интерес? Как подобрать материал и преподнести его, помочь увидеть перспективность исследуемой темы и востребованность знаний? Курсовой/дипломный проект, на мой взгляд, сложнее в плане поддержания заинтересованности, по сравнению с освоением курса лекций, т.к. требует усилий. Выбирая тему студент, часто в силу разных причин, ориентируется на минимизацию усилий, воспринимая курсовую/диплом как «что-то ненужное/для галочки/неизбежное зло», а не на повышение своего уровня реальных знаний.
Практически каждому специалисту в сфере ИТ/ИБ приходится отвечать на вопрос — что такое «компьютерный вирус». Хорошо ещё если это очередной вопрос очередного пользователя, когда можно и в Википедию направить и не вдаваться в детали.
А если надо разработать документ (положение, инструкцию, обоснование для бюджета), или, что сложнее, документ к какой-либо проверке? И хорошо бы не выдумывать своё, а взять готовое, проверенное, «железобетонное».
Что такое «боты тёмной стороны силы»? Обозначим так сканирующие программы (поисковые роботы, пауки), которые используют злоумышленники. В отличие от роботов поисковых систем [1, 2], «боты тёмной стороны силы» (в дальнейшем для краткости — боты) заняты поиском уязвимостей, вредоносных программных закладок, конфиденциальной информации и т. д. Действия, аналогичные работе бота, может выполнять и человек, но использование бота, по понятным причинам, эффективнее и более распространено.