Last active
December 28, 2017 10:57
-
-
Save kis/07bf5eca158fe916e7250fafe6b9cdeb to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
По поводу практического задания по Базам Данных(Posgtres), как я уже говорил ранее, я планировал дать вам спеку какого-нибудь реального проекта и предложить построить архитектуру базы данных для этого проекта, но мои ожидания разбились об жестокую реальность: у нас нет ни одного проекта с нормальной спекой, по которой можно было раз и построить архитектуру :) | |
В связи с этим я написал вам описание ваше будущей базы данных сам, поэтому предлагаю ознакомиться и если есть какие-то вопросы, то смело их задавать, потому что я мог что-то забыть или написать лишнего, или недостаточно ясно выразить свою мысль, | |
Футбольный менеджер | |
Основной элемент - это футболист, у футболиста есть имя, фамилия, гражданство, позиция на которой он играет и некоторые дополнительные ТТХ, которые значения не имеют. Также футболист хранит историю своих трансферных переходов. И статистику забитых мячей, передач и тому подобное для каждой команды, за которую он играл. | |
Есть футбольные клубы, каждый клуб принимает участие в турнирах (чемпионатах), в клубе есть футболисты, каждый футболист в клубе имеет номер (двух футболистов с одним номером быть не может), каждый футболист может принадлежать не более, чем к одному клубу. У каждого чемпионата есть турнирная таблица, двух одинаковых игр в одном чемпионате одного года быть не может. Клуб обладает неким набором дополнительных метаданных, наборы могут быть абсолютно разными для разных клубов, например, один клуб раньше менял название и есть его старое название, плюс какие интересные факты из его истории, у другого клуба может быть совершенно другой набор метаданных. | |
Также каждый клуб имеет стадион, находящийся в определенном городе и тоже обладающий список своих собственных ТТХ, которые тоже большого значения не имеют. | |
Есть сборные, каждая сборная принадлежит к стране, в каждой сборной есть футболисты только с гражданством этой страны, у сборных есть турниры (чемпионаты), в которых она принимает участие. | |
Еще есть тренер, который тоже имеет имя, фамилию, команду, которую тренирует (один тренер тренирует одну команду), историю переходов и статистику побед в турнирах. | |
UPD. Забыл добавить по поводу формы в которой это должно быть выполнено - это должно быть описание таблиц, связей между таблицами, а также индексов, если они необходимы. Все это может быть представлено в любом понятном (кому либо кроме вас) виде: UML диаграмма, просто схема таблиц со связями, сочинение в свободном стиле о том, как эти таблицы связаны между собой или еще как-нибудь. | |
Всем привет. Тут возникли некоторые технические проблемы с поиском переходника USB-C - HDMI, так что вот вам, на всякий случай, ссылка на презентацию, если эти проблемы решить не удастся. | |
https://www.icloud.com/keynote/0ZTOZv0WBKnIoIPPvWCh-_e-w#Poatges_II | |
Презентация никакой особенной информации не содержит, но, на всякий случай, пусть будет тут :) | |
https://www.icloud.com/keynote/0EsoSPnVriJvZjl-54GSPf0iQ#AWS_I | |
Совсем забыл линк на последнюю презентацию если вдруг у вас возникнет желание ее пересмотреть еще раз :) | |
https://www.icloud.com/keynote/0bOwmGzrmepWhgQ9YoKp-T-kQ#AWS_II | |
Ссылки на презентации | |
https://www.icloud.com/keynote/0lI2kBRgLfBFDVn_47KEI8vYw#AWS_storage_services | |
https://www.icloud.com/keynote/0BcVipsYtH04oIGefArrSOKvg#AWS_security | |
Задание по AWS. | |
Сделать backend для Telegram бота. Минимальный функционал: умеет брать картинки из S3 и отправлять их пользователю, умеет хранить информацию про пользователей в базе данных. Желательно, чтобы он умел еще что-то кроме этого, но тут уже вам придется включить фантазию. Минимальную архитектуру (те сервисы, который обязательно надо задействовать) см. на рисунке ниже, все, что сверх этого на ваше усмотрение. | |
И ссылка на презентацию https://www.icloud.com/keynote/0cDJq41HFZxHZaFggjcwJJZsA#AWS_databases | |
https://www.youtube.com/playlist?list=PLHk3oi9lZTfNDK5qVRODTN1sMtel2rYPE | |
Ссылка на презентацию https://www.icloud.com/keynote/0ktiOj54XjWGQ-YuHFGnEiJHQ#AWS_Application_Integration_services | |
Вот штука для локального разворачивания лямбд (с названием я малость промазал, она SAM называется :) | |
) https://github.com/awslabs/serverless-application-model | |
В преддверии получения вами ключей от корпоративного AWS хочется предостеречь от возможных опасностей, которые ждут вас в этом новом и сложном мире владельцев AWS secret keys. В общем, правила достаточно просты - secret Key он на то и secret, что его нельзя показывать никому: | |
- нельзя отправлять друзьям | |
- нельзя хранить в местах, куда есть доступ у других существ с IQ > 75 | |
- ни в коем случае нельзя пушить ключи в какие-бы то ни было публичные репозитории | |
- в приватные тоже пушить не желательно | |
- вообще лучше из рук их не выпускать | |
Вот одна из многих “success stories” тех, кто не следовал этим простым правилам https://alexanderpaterson.com/posts/this-is-what-happened-when-i-leaked-my-aws-secret-key | |
Что касается сервисов, которые запускаете лично вы, вряд ли вы сможете случайно запустить что-то очень дорогостоящее, но все же, лучше сначала смотрите в раздел Pricing того сервиса, который собираетесь использовать. | |
по поводу репозиториев... | |
для сторонников позиции "да кому я нужен" - есть много ботов, которые сканируют репозитории на гитхабе и охотятся в том числе и за ключами-паролями | |
так что не заливаем ключи никуда, от слова "совсем" | |
даже в наш корпоративный гитлаб, на котором собственно и должны находиться ваши личные проекты для обучения | |
для незнающих или забывчивых напомню: ключи/пароли и другая конфиденциальная информация должна передаваться в ваше приложение посредством переменных окружения | |
в ноде это process.env.MY_VAR | |
в двух словах - существуют специальные краулеры для сканирования публичных репозиториев на предмет секретных ключей от аккаунтов AWS, Google Cloud, Azure etc. | |
У нас была интернатура с заданиями по автоматическому разворачиванию енвайронмента на AWS. | |
Это был просто большой скрипт, в коротом в тексте (даже не отдельным файлом, а в самом скрипте), лежал ключ доступа к созданию инстансов. | |
За 2 дня компании был выставлен счет на 4500 долларов. | |
По логам было понятно, что инстансы были подняты примерно на 2 часа, самые жирные какие можно были доступны. ЗАтем терминейчены. | |
Не спрашивайте, чем закончилась история, лучше дважды перепроверяйте, куда и что вы пушите )) | |
Корпоративный гитлаб для ваших проектов | |
https://gitlab.chisw.us/users/sign_in | |
Создаете под свои задания приватные репозитории и даете доступ нужным людям в случае такой необходимости | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment