Forwarded from Лига сисадминов
11 типов современных баз данных: краткие описания, схемы и примеры БД
Типы баз данных, называемых также моделями БД или семействами БД, представляют собой шаблоны и структуры, используемые для организации данных в системе управления базами данных (СУБД). Выбор типа повлияет на то, какие операции сможет выполнять приложение, как будут представлены данные, на функции СУБД для разработки и рантайма.
В сегодняшней статье посмотрим на существующие типы БД, их различия, и примеры практической реализации.
https://telegra.ph/11-tipov-sovremennyh-baz-dannyh-kratkie-opisaniya-shemy-i-primery-BD-01-05
#ит_статьи #types_of_databases #sql #nosql
Типы баз данных, называемых также моделями БД или семействами БД, представляют собой шаблоны и структуры, используемые для организации данных в системе управления базами данных (СУБД). Выбор типа повлияет на то, какие операции сможет выполнять приложение, как будут представлены данные, на функции СУБД для разработки и рантайма.
В сегодняшней статье посмотрим на существующие типы БД, их различия, и примеры практической реализации.
https://telegra.ph/11-tipov-sovremennyh-baz-dannyh-kratkie-opisaniya-shemy-i-primery-BD-01-05
#ит_статьи #types_of_databases #sql #nosql
Telegraph
11 типов современных баз данных: краткие описания, схемы и примеры БД
Типы баз данных, называемых также моделями БД или семействами БД, представляют собой шаблоны и структуры, используемые для организации данных в системе управления базами данных (СУБД). Выбор типа повлияет на то, какие операции сможет выполнять приложение…
https://habr.com/ru/articles/782266/
https://github.com/yakimka/python_interview_questions
для подготовки к собеседованиям
#interview #questions
https://github.com/yakimka/python_interview_questions
для подготовки к собеседованиям
#interview #questions
Forwarded from Data Science. SQL hub
⚡️ Для чего использовать Redis?
Redis - это отличный инструмент, он надежен и прост в использовании (при правильном использовании).
Вот 5 примеров использования Redis:
1. Кэширование
Самый распространенный вариант использования Redis для кэшированя. Это помогает защитить базу данных от перегрузки. Redis обеспечивает быстрый поиск кэшированных данных и может помочь повысить производительность приложения.
2. Хранение сессий
Redis подходит для обмена данными пользовательских сессий между серверами без статических данных. Redis предоставляет централизованное место для хранения данных сеансов и позволяет легко масштабировать серверы.
3. Распределенная блокировка
Импользование- распределенной блокировки Redis для предоставления взаимоисключающего доступа к общим ресурсам. Это предотвращает возникновение ситуаций гонки в распределенных системах. Блокировки Redis просты в реализации и автоматически истекают.
4. Счетчик и ограничитель скорости
Redis подходит для отслеживания количества лайков, просмотров и т. д. в приложениях для социальных сетей. Счетчики Redis обеспечивают атомарное увеличение/уменьшение. Redis также используется для ограничения скорости на эндпоинтах API.
5. Таблицы лидеров (Лидерборды)
Отсортированные данные позволяют легко реализовать в Redis таблицы Лидерборды. Мы можем добавлять, обновлять или удалять пользователей из таблицы лидеров и эффективно запрашивать данные для них.
📌 Примеры с кодом
@sqlhub
Redis - это отличный инструмент, он надежен и прост в использовании (при правильном использовании).
Вот 5 примеров использования Redis:
1. Кэширование
Самый распространенный вариант использования Redis для кэшированя. Это помогает защитить базу данных от перегрузки. Redis обеспечивает быстрый поиск кэшированных данных и может помочь повысить производительность приложения.
2. Хранение сессий
Redis подходит для обмена данными пользовательских сессий между серверами без статических данных. Redis предоставляет централизованное место для хранения данных сеансов и позволяет легко масштабировать серверы.
3. Распределенная блокировка
Импользование- распределенной блокировки Redis для предоставления взаимоисключающего доступа к общим ресурсам. Это предотвращает возникновение ситуаций гонки в распределенных системах. Блокировки Redis просты в реализации и автоматически истекают.
4. Счетчик и ограничитель скорости
Redis подходит для отслеживания количества лайков, просмотров и т. д. в приложениях для социальных сетей. Счетчики Redis обеспечивают атомарное увеличение/уменьшение. Redis также используется для ограничения скорости на эндпоинтах API.
5. Таблицы лидеров (Лидерборды)
Отсортированные данные позволяют легко реализовать в Redis таблицы Лидерборды. Мы можем добавлять, обновлять или удалять пользователей из таблицы лидеров и эффективно запрашивать данные для них.
📌 Примеры с кодом
@sqlhub
https://github.com/lorien/awesome-web-scraping/blob/master/python.md - подборка инструментов для web scraping in python
#crawler #scraping
#crawler #scraping
GitHub
awesome-web-scraping/python.md at master · lorien/awesome-web-scraping
List of libraries, tools and APIs for web scraping and data processing. - lorien/awesome-web-scraping
https://habr.com/ru/articles/803607/ - еще одна подробная статья о работе multiprocessing
#multiprocessing
#multiprocessing
Хабр
Как работает multiprocessing в Python под капотом
Я довольно давно пишу на Python и во многих проектах использовал multiprocessing — пакет стандартной библиотеки языка Python, который предоставляет интерфейс для работы с процессами, очередями, пулами...
Forwarded from DevOps
Использование Docker не обязательно должно быть принципом «все или ничего». Вы можете использовать Docker для развертывания и создания образов для продакшн, но вам не обязательно использовать его в разработке.
Каждая инструкция в вашем Dockerfile приводит к созданию слоя изображения. Docker использует слои для повторного использования работы. Слои кэшируются и их не нужно пересобирать, если:
— Все предыдущие слои не изменяются.
— В случае инструкции
COPY: файлы/папки не изменяются.— В случае всех остальных инструкций: текст команды не изменяется.
Представьте, что у нас есть следующий фрагмент Dockerfile:
RUN mkdir /code
COPY code code/
RUN pip install code/requirements.txt
Каждый раз, когда что-либо в каталоге кода меняется, вторую строку необходимо запускать заново, а также каждую последующую строку.
Вот как мы могли бы избежать повторного запуска этапа установки при каждом изменении кода:
RUN mkdir /code
COPY code/requirements.txt code/
RUN pip install code/requirements.txt
COPY code /code
Во-первых, проверьте, не загружаете ли вы зависимости разработки, которые вообще не нужны вашему образу.
Ещё нужно помнить про поведение менеджера пакетов на уровне ОС. Например, `apt`который используется в Ubuntu и Debian, по умолчанию устанавливает «рекомендуемые» пакеты.
Вы можете избежать этого, добавив к
apt-get install флаг --no-install-recommendsBuildKit — это новый механизм сборки образов, который можно использовать вместо стандартного Docker. С ним вы получаете больше параллелизма и эффективности кэширования, плюс новые интересные функции
@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM