Обновить
63.38
Слёрм
Учебный центр для тех, кто работает в IT
Сначала показывать

Мы заглянули под капот Kafka и решили проблему потерянных сообщений

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели15K

Kafka — это масштабируемая, отказоустойчивая платформа для обмена сообщениями в реальном времени. Она позволяет обрабатывать миллионы сообщений в секунду. Однако некоторые ситуации приводят к потере событий. Например, Kafka требует хорошего стабильного сетевого соединения между клиентами и брокерами; если сеть нестабильна, это может легко привести к потере сообщений. 

Команда разработчиков Trendyol Tech видоизменила архитектуру и решила эту проблему с помощью outbox-шаблона, но столкнулась с другой проблемой — дублированием событий. Приводим перевод статьи о том, как разработчики залезли под капот Kafka и нашли решение этих двух проблем.

Читать далее

Вам в хранилище или к озеру? Чем занимаются специалисты по работе с данными и как стать Data-инженером

Время на прочтение7 мин
Охват и читатели20K

Привет, Хабр! Сегодня рассказываем, чем отличаются подходы к построению распределённых хранилищ данных Data Warehouse (DWH) и Data Lake и в чём специфика задач специалистов, работающих с данными.

В статье сначала опишем паттерны построения распределённых хранилищ, чтобы понимать, через какие процессы проходят данные. А после поговорим о задачах специалистов по работе с данными и необходимых для каждой позиции навыках.

P.S. На картинке спрятаны 6 инструментов для работы с данными. Узнали их?

Читать далее

Преобразование табличных данных в Python

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели7.2K

Предположим: вы полны желания изучить  манящий массив данных. К счастью, для этого достаточно вашего компьютера. Итак, вы открываете блокнот Python или REPL, чтобы начать работать:  какую библиотеку использовать? Естественно, вы можете обратиться к старой доброй Pandas. А как насчет новой модной библиотеки фреймов данных, например Polars или datatable? А ещё, для разнообразия, можно попробовать встроенный SQL с помощью DuckDB.

Давайте погрузимся в прекрасную область фреймов данных, чтобы сделать выбор!

PS: Используйте DuckDB, если вам удобно работать с SQL, Polars или Pandas с поддержкой PyArrow, если вам не нужно какое-то специфическое расширение NumPy, и задействуйте PyArrow в том случае, если вы не против ручной оптимизации.

Читать далее

Учимся использовать разные типы переменных в Ansible

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели60K

Переменные Ansible — это динамические значения, которые используются в плейбуках и ролях Ansible для настройки и возможности повторного использования конфигураций. Они очень похожи на переменные в языках программирования и помогают эффективно управлять сложными задачами. Они позволяют применять один и тот же сценарий или роль в разных средах, системах или контекстах без необходимости хардкодинга конкретной информации.

Представляем перевод статьи, где подробно рассматриваются переменные Ansible.

Читать далее

Apache Spark 3.4 для Databricks Runtime 13.0

Время на прочтение10 мин
Охват и читатели2K

Databricks — это аналитическая платформа для облачных вычислений, работы с большими данными и машинного обучения. Компания разрабатывает data lake и работает с фреймворком Apache Spark. Приводим перевод статьи Databricks о нововведениях Apache Spark 3.4, который вошел в релиз Databricks Runtime 13.0.

Читать далее

Оптимизация производительности цикла опроса в Kafka Consumer

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели22K

Цикл опроса является важным компонентом API Kafka consumer. Он отвечает за получение сообщений от брокеров Kafka и их обработку, вызывая обработчик сообщений, определенный пользователем. В этой статье расскажем, какие параметры нужно настроить, чтобы достичь большей производительности.

Читать далее

Кэширование обмена данными между сервисами в Kubernetes и Istio

Время на прочтение7 мин
Охват и читатели4.9K

Команда Trendyol Platform разработала решение проблемы межмикросервисного кэширования в Kubernetes. Приводим перевод статьи, где она делится опытом и рассказывает о создании приложения Sidecache.

Читать далее

Фаерволы: какие бывают и как они могут быть реализованы

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели33K

Фаервол, брандмауэр, межсетевой экран — это некая функция, которая определяет пропускать пакет или не пропускать пакет, основываясь на его содержимом. В этой статье разберемся, как фаервол может быть реализован с аппаратной точки зрения.

Читать далее

Использование NFS в качестве Persistent Volume (постоянного тома) для Kubernetes с помощью Ansible и Terraform

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели17K

Экосистема Kubernetes очень динамична и включает в себя различные компоненты, взаимодействующие между собой. Управление хранением данных в Kubernetes является отдельной задачей, в рамках которой вводятся понятия Persistent Volumes (постоянных томов, PVs) и Persistent Volume Claims (запросов на выделение постоянного тома, PVCs). 

Читать далее

Пирамида отказоустойчивости системы

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели5.3K

Разработчик Гуннар Морлинг в 2022 году представил пирамиду ревью кода. По аналогии с ней появилась пирамида отказоустойчивости системы. Она делит отказоустойчивость на уровни и предлагает ответить на ряд важных вопросов по каждому из уровней. Пирамида отказоустойчивости системы помогает лучше понимать и реализовывать эту концепцию. 

Читать далее

Создаём экземпляр EC2 и S3 Bucket с помощью плейбука Ansible

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели2.5K

Создание экземпляров EC2 вручную может занять много времени. К счастью, Ansible предоставляет эффективный и автоматизированный способ создания экземпляров EC2. В этой статье мы рассмотрим пошаговый процесс создания экземпляра EC2 и S3 Bucket с помощью Ansible Playbooks.

Читать далее

11 полезных плагинов для kubectl

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели13K

Kubectl (Kubernetes Control) — это по сути основной интерфейс для взаимодействия с Kubernetes-кластером. Сторонние разработчики сделали для него много полезных плагинов, которые в той или иной ситуации могут облегчить работу инженера и сэкономить время. В этой статье рассмотрим 11 удобных плагинов для расширения функционала kubectl.

Читать далее

Ansible: Как генерировать уникальные имена с помощью random_pet

Время на прочтение2 мин
Охват и читатели2.5K

С помощью Ansible можно упростить сложные задачи и оптимизировать рутинные операции. Среди его функций есть плагин random_pet, который позволяет генерировать уникальные и случайные имена для ресурсов, переменных или идентификаторов.

В этой статье мы рассмотрим подключаемый модуль random_pet в Ansible и то, как его можно использовать для создания случайных имен, меток или значений.

Читать далее

Почему в Southbridge работают долго

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели2K

В марте мы писали о том, что думают про Southbridge бывшие сотрудники. Они рассказали, как пришли в компанию, какой опыт получили, почему уволились. Сегодня показываем Southbridge с другой стороны — смотрим на компанию глазами инженеров, которые работают уже давно.

Читать дальше

Ближайшие события

Пять декораторов Python, которые могут сократить код в два раза

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели28K

В этой статье мы рассмотрим концепцию Python-оберток и приведем пять примеров, которые могут улучшить процесс разработки на Python.

Читать далее

4 важных отличия DevOps от SRE

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели9.1K

Если вы знаете, что такое Site Reliability Engineering, вам может быть интересно, как эти практики связаны с DevOps. Важно сразу оговориться, что мы не ставим между ними слово «против». Хотя у этих подходов есть некоторые отличия в том, как лучше делать и быстрее доставлять программное обеспечение. В этом посте разберём каждый подход и выясним, чем отличаются DevOps и SRE. Вы заметите, что у подхода SRE есть своё мнение по поводу запуска производственных систем, в то время как DevOps больше фокусируется на людях, процессах и инструментах — именно в этом порядке.

Читать далее

Построение CI/CD для проекта на базе Docker с использованием CodeBuild, CodeDeploy и Lambda

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели2.7K

CI/CD-пайплайны автоматизируют процессы создания, тестирования и развертывания программного обеспечения, позволяя командам быстро и надежно выпускать обновления. В этой статье рассмотрим, как создать пайплайн с помощью AWS, как использовать CodeBuild для запуска при размещении кода в ветке. Также разберем, как запускать тесты, затем собирать и размещать образ Docker в ECR, и сохранять артефакты кода в S3, после чего можно использовать функцию Lambda для запуска CodeDeploy, которая развернет код на группе EC2-инстансов.

Читать далее

Как сделать из Python-скрипта исполняемый файл

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели335K

Вы изучаете данные и хотите поделиться своим кодом Python с другими, не раскрывая исходный код и не требуя от них установки Python и других компонентов? Если да, то вас может быть интересна конвертация вашего скрипта Python в исполняемый файл.

Читать далее

Почему fsync(): Потеря несинхронизированных данных на одном узле приводит к глобальной потере данных

Время на прочтение9 мин
Охват и читатели2.7K

Независимо от механизма репликации, необходимо использовать fsync() для предотвращения глобальной потери данных в non-Byzantine протоколах.

Читать далее

Автоматизация установки и удаления LAMP-стека с помощью Ansible

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели5.1K

В этом руководстве мы рассмотрим, как автоматизировать установку и удаление LAMP-стека (Linux, Apache, MySQL, PHP) с помощью Ansible. Ansible — это инструмент автоматизации с открытым исходным кодом, который позволяет вам определять инфраструктуру и управлять ею как кодом.

Читать далее

Информация

Сайт
to.slurm.io
Дата регистрации
Дата основания
Численность
51–100 человек
Местоположение
Россия
Представитель
Антон Скобин