«Берегите платье снову, а персональные данные смолоду»: рассуждения и советы по цифровой гигиене
Всем привет! Меня зовут Андрей, я специалист по информационной безопасности в Selectel. За время своей работы я понял, что часто люди используют правила цифровой гигиены в профессиональной деятельности, но совсем забывают про них в обычной жизни. По данным компании RTM Group, за 2021 год в России зарегистрировано более 249 тыс киберпреступлений, связанных с мошенническими схемами, — и это только известные правоохранительным органам инциденты.
Не хотите подкрепить эту статистику? Тогда давайте вспомним, почему важно соблюдать правила цифровой гигиены, и найдем тот самый «баланс» между комфортом и шапочкой из фольги. Подробности под катом!
Читать: https://habr.com/ru/companies/selectel/articles/762212/
Всем привет! Меня зовут Андрей, я специалист по информационной безопасности в Selectel. За время своей работы я понял, что часто люди используют правила цифровой гигиены в профессиональной деятельности, но совсем забывают про них в обычной жизни. По данным компании RTM Group, за 2021 год в России зарегистрировано более 249 тыс киберпреступлений, связанных с мошенническими схемами, — и это только известные правоохранительным органам инциденты.
Не хотите подкрепить эту статистику? Тогда давайте вспомним, почему важно соблюдать правила цифровой гигиены, и найдем тот самый «баланс» между комфортом и шапочкой из фольги. Подробности под катом!
Читать: https://habr.com/ru/companies/selectel/articles/762212/
Config at MongoDB Shares Why Neurodiversity Matters
Read: https://www.mongodb.com/blog/post/config-mongodb-shares-why-neurodiversity-matters
Read: https://www.mongodb.com/blog/post/config-mongodb-shares-why-neurodiversity-matters
Отказоустойчивая архитектура: почему Tarantool не падает?
Основная проблема в высоконагруженных приложениях — отказоустойчивость. Нагрузка с упавших узлов в кластере должна переключаться на живые. Это кажется несложной задачей, но на практике появляется много подводных камней. Мы с yngvar_antonsson потратили много времени на поддержку различных кластеров, построенных на Tarantool и наших кластерных фреймворках Cartridge и TDG, и сегодня расскажем вам, как обеспечивается отказоустойчивость в наших приложениях. Будет интересно всем, кто хочет подробнее узнать, как устроен фейловер в Cartridge, и тем, кто хочет узнать о нашем опыте создания автоматических фейловеров.
Читать: https://habr.com/ru/companies/vk/articles/768360/
Основная проблема в высоконагруженных приложениях — отказоустойчивость. Нагрузка с упавших узлов в кластере должна переключаться на живые. Это кажется несложной задачей, но на практике появляется много подводных камней. Мы с yngvar_antonsson потратили много времени на поддержку различных кластеров, построенных на Tarantool и наших кластерных фреймворках Cartridge и TDG, и сегодня расскажем вам, как обеспечивается отказоустойчивость в наших приложениях. Будет интересно всем, кто хочет подробнее узнать, как устроен фейловер в Cartridge, и тем, кто хочет узнать о нашем опыте создания автоматических фейловеров.
Читать: https://habr.com/ru/companies/vk/articles/768360/
Настройка NVMe over TCP — для тех, кому надо подключить больше 1 диска единственной конфигурации из всех примеров в Сети
Технология NVMe через различные фабрики (далее NVMeOF) оформлена в качестве стандарта летом 2016 года, она была встроена в пятую ветку ядра Linux.
Поэтому, когда было решено мигрировать объемные базы данных с легаси-решений на общедоступные платформы, возник вопрос — можно ли применить эту технологию для увеличения дискового пространства для создания зеркал локальных дисков?
Чтобы все зеркала не вышли из строя сразу, принимать такие диски надо бы небольшими группами с нескольких машин из разных стоек. Идея показалась достойной рассмотрения, поэтому создали небольшой стенд.
Меня зовут Алексей Дрожжов, я старший инженер в билайне, и в этом посте расскажу, как мы решали эту задачу.
Задача: подключить много дисков с нескольких серверов
Читать: https://habr.com/ru/companies/beeline_tech/articles/770174/
Технология NVMe через различные фабрики (далее NVMeOF) оформлена в качестве стандарта летом 2016 года, она была встроена в пятую ветку ядра Linux.
Поэтому, когда было решено мигрировать объемные базы данных с легаси-решений на общедоступные платформы, возник вопрос — можно ли применить эту технологию для увеличения дискового пространства для создания зеркал локальных дисков?
Чтобы все зеркала не вышли из строя сразу, принимать такие диски надо бы небольшими группами с нескольких машин из разных стоек. Идея показалась достойной рассмотрения, поэтому создали небольшой стенд.
Меня зовут Алексей Дрожжов, я старший инженер в билайне, и в этом посте расскажу, как мы решали эту задачу.
Задача: подключить много дисков с нескольких серверов
Читать: https://habr.com/ru/companies/beeline_tech/articles/770174/
Using JSON Relational Duality Views with Micronaut® Framework
This blog post shows how to use the Micronaut® Framework to create and interact with an Oracle Database JSON Relational Duality View.
Read: https://blogs.oracle.com/java/post/json-relational-duality-views-with-micronaut-framework
This blog post shows how to use the Micronaut® Framework to create and interact with an Oracle Database JSON Relational Duality View.
Read: https://blogs.oracle.com/java/post/json-relational-duality-views-with-micronaut-framework
Oracle
Using JSON Relational Duality Views with Micronaut® Framework
This blog post provides an example of using the Micronaut® Framework to create and interact with an Oracle Database JSON Relational Duality View.
Restic: эффективное резервное копирование из Stdin
Про restic я уже рассказывал в статье Бэкап-хранилище для тысяч виртуальных машин свободными инструментами, с тех пор он остаётся моим любимым инструментом для бэкапа.
Сегодня я опишу вам готовый рецепт того как настроить эффективное бэкапирование чего угодно прямо из stdin, с дедупликацией и автоматической очисткой репозитория от старых копий.
Несмотря на то, что restic отлично подходит для сохранения целых каталогов с данными в этой статье мне хотелось бы сделать упор на сохранении резервных копий на лету прямо из Stdin.
Как правило это бывает актуально для сохранения бэкапов виртуальных машин, баз данных и других, представленных одним большим файлом, данных, которые можно последовательно вычитывать и сразу отправлять в систему бэкапирования.
Читать: https://habr.com/ru/articles/769622/
Про restic я уже рассказывал в статье Бэкап-хранилище для тысяч виртуальных машин свободными инструментами, с тех пор он остаётся моим любимым инструментом для бэкапа.
Сегодня я опишу вам готовый рецепт того как настроить эффективное бэкапирование чего угодно прямо из stdin, с дедупликацией и автоматической очисткой репозитория от старых копий.
Несмотря на то, что restic отлично подходит для сохранения целых каталогов с данными в этой статье мне хотелось бы сделать упор на сохранении резервных копий на лету прямо из Stdin.
Как правило это бывает актуально для сохранения бэкапов виртуальных машин, баз данных и других, представленных одним большим файлом, данных, которые можно последовательно вычитывать и сразу отправлять в систему бэкапирования.
Читать: https://habr.com/ru/articles/769622/
4 Key Considerations for Unlocking the Power of GenAI
Read: https://www.mongodb.com/blog/post/4-key-considerations-unlocking-power-gen-ai
Read: https://www.mongodb.com/blog/post/4-key-considerations-unlocking-power-gen-ai
Цифровой паспорт оборудования промышленного производства
Привет, привет!
Представлюсь: меня зовут Тамара, и я являюсь ведущим инженером по нормативно-справочной информации в компании Bimeister.
Начну с того, что это лишь малая часть той большой истории, которую я хочу вам рассказать.
Будет много вопросов типа «Что это?», «Для чего нужен?» и тд. Ищите ответы на эти вопросы ниже, я вам все объясню)
Чем же занимаемся мы, ребята из отдела разработки НСИ? Давайте попробую вам кратко рассказать:
Промышленные предприятия сталкиваются с проблемой создания единой системы нормативно-справочной информации. Возникают трудности с созданием и внедрением общих правил именования оборудования, систем, материалов, товаров, контрагентов, и пр. Предприятиям необходим единый инструмент и общая методология ведения НСИ.
Нормативно-справочная информация – условно постоянный компонент корпоративной информации, являющийся основой для унификации и нормализации данных, сопровождающих протекающие бизнес-процессы, а также регламентацию деятельности организации.
Качественная база данных оборудования (БДО) является основой для построения системы автоматизации/цифровизации процессов Управления техническим обслуживанием и ремонтами (ТОиР). В процессе эксплуатации системы Управления ТОиР предприятиям постоянно требуется актуализация существующих аналитических справочников, составляющих БДО. Чтобы иметь возможность планировать ремонт или техническое обслуживание (ТО) любой конкретной обслуживаемой единицы оборудования, а также вести учет истории ремонтов и отказов (дефекты, параметры состояния, наработка, отказы), необходимо, чтобы эта единица была описана в информационной системе (паспортизирована).
Читать: https://habr.com/ru/companies/bimeister/articles/770368/
Привет, привет!
Представлюсь: меня зовут Тамара, и я являюсь ведущим инженером по нормативно-справочной информации в компании Bimeister.
Начну с того, что это лишь малая часть той большой истории, которую я хочу вам рассказать.
Будет много вопросов типа «Что это?», «Для чего нужен?» и тд. Ищите ответы на эти вопросы ниже, я вам все объясню)
Чем же занимаемся мы, ребята из отдела разработки НСИ? Давайте попробую вам кратко рассказать:
Промышленные предприятия сталкиваются с проблемой создания единой системы нормативно-справочной информации. Возникают трудности с созданием и внедрением общих правил именования оборудования, систем, материалов, товаров, контрагентов, и пр. Предприятиям необходим единый инструмент и общая методология ведения НСИ.
Нормативно-справочная информация – условно постоянный компонент корпоративной информации, являющийся основой для унификации и нормализации данных, сопровождающих протекающие бизнес-процессы, а также регламентацию деятельности организации.
Качественная база данных оборудования (БДО) является основой для построения системы автоматизации/цифровизации процессов Управления техническим обслуживанием и ремонтами (ТОиР). В процессе эксплуатации системы Управления ТОиР предприятиям постоянно требуется актуализация существующих аналитических справочников, составляющих БДО. Чтобы иметь возможность планировать ремонт или техническое обслуживание (ТО) любой конкретной обслуживаемой единицы оборудования, а также вести учет истории ремонтов и отказов (дефекты, параметры состояния, наработка, отказы), необходимо, чтобы эта единица была описана в информационной системе (паспортизирована).
Читать: https://habr.com/ru/companies/bimeister/articles/770368/
История одной Real-Time-рекомендательной системы: пример построения решения от нуля до реализации
Real-Time-рекомендательные системы — сложный с точки зрения реализации и поддержания продукт. Его разработка требует тщательной проработки архитектуры и этапов, качественной работы с данными и обеспечения возможности масштабирования решения. Причём большинство подобных задач приходится решать уже в процессе, с учётом реалий и возникающих подводных камней.
Читать: https://habr.com/ru/companies/vk/articles/769508/
Real-Time-рекомендательные системы — сложный с точки зрения реализации и поддержания продукт. Его разработка требует тщательной проработки архитектуры и этапов, качественной работы с данными и обеспечения возможности масштабирования решения. Причём большинство подобных задач приходится решать уже в процессе, с учётом реалий и возникающих подводных камней.
Читать: https://habr.com/ru/companies/vk/articles/769508/
Обзор популярных файловых систем в системах виртуализации. Часть 2: BTRFS
В прошлом материале мы рассказали о типах файловых систем и подробно остановились на системе ZFS. В второй части подробно разберем BTRFS — файловую систему для Unix-подобных ОС.
Читать: https://habr.com/ru/companies/vstack/articles/770662/
В прошлом материале мы рассказали о типах файловых систем и подробно остановились на системе ZFS. В второй части подробно разберем BTRFS — файловую систему для Unix-подобных ОС.
Читать: https://habr.com/ru/companies/vstack/articles/770662/
Retrieval Augmented Generation (RAG): The Open-Book Test for GenAI
Read: https://www.mongodb.com/blog/post/retrieval-augmented-generation-rag-open-book-test-gen-ai
Read: https://www.mongodb.com/blog/post/retrieval-augmented-generation-rag-open-book-test-gen-ai
Apono Streamlines Data Access with MongoDB Atlas
Read: https://www.mongodb.com/blog/post/apono-streamlines-data-access-mongodb-atlas
Read: https://www.mongodb.com/blog/post/apono-streamlines-data-access-mongodb-atlas
Установка и безопасная настройка Redis
Сегодня мы поговорим о СУБД Redis, рассмотрим процесс установки и настройки. В отличие от реляционных систем управления базами данных, Redis является СУБД класса NoSQL с открытым исходным кодом, работающей со структурами данных типа «ключ — значение».
Разберемся для начала с тем, что такое NoSQL. Представим, что у нас есть приложение, которому необходимо быстро и без задержек обрабатывать разные по структуре данные, не имеющие определенной структуры. В таком случае использование “классических”, реляционных баз данных будет не самым лучшим решением, так как нам необходимо будет сначала каким-то образом структурировать эти данные, а уже потом с ними работать. При использовании NoSQL мы можем использовать структуру “ключ-значение” и иметь возможность быстро обрабатывать неструктурированные данные. NoSQL используются как для баз данных, так и для реализации кэшей, брокеров сообщений. При этом, NoSQL стала популярным решением из-за простоты разработки, функционала, высокой производительности и возможности горизонтального масштабирования.
Но, вернемся к СУБД Redis. Redis - это хранилище значений ключей в памяти, известное своей гибкостью, производительностью и широкой языковой поддержкой. Данная система ориентирована на достижение максимальной производительности на атомарных операциях (заявляется о приблизительно 100 тыс. SET- и GET-запросов в секунду на Linux-сервере начального уровня). Написана на Си, интерфейсы доступа созданы для большинства основных языков программирования. Далее мы поговорим о том, как установить и безопасно настроить Redis на сервере Ubuntu 22.04.
Читать: https://habr.com/ru/companies/otus/articles/770364/
Сегодня мы поговорим о СУБД Redis, рассмотрим процесс установки и настройки. В отличие от реляционных систем управления базами данных, Redis является СУБД класса NoSQL с открытым исходным кодом, работающей со структурами данных типа «ключ — значение».
Разберемся для начала с тем, что такое NoSQL. Представим, что у нас есть приложение, которому необходимо быстро и без задержек обрабатывать разные по структуре данные, не имеющие определенной структуры. В таком случае использование “классических”, реляционных баз данных будет не самым лучшим решением, так как нам необходимо будет сначала каким-то образом структурировать эти данные, а уже потом с ними работать. При использовании NoSQL мы можем использовать структуру “ключ-значение” и иметь возможность быстро обрабатывать неструктурированные данные. NoSQL используются как для баз данных, так и для реализации кэшей, брокеров сообщений. При этом, NoSQL стала популярным решением из-за простоты разработки, функционала, высокой производительности и возможности горизонтального масштабирования.
Но, вернемся к СУБД Redis. Redis - это хранилище значений ключей в памяти, известное своей гибкостью, производительностью и широкой языковой поддержкой. Данная система ориентирована на достижение максимальной производительности на атомарных операциях (заявляется о приблизительно 100 тыс. SET- и GET-запросов в секунду на Linux-сервере начального уровня). Написана на Си, интерфейсы доступа созданы для большинства основных языков программирования. Далее мы поговорим о том, как установить и безопасно настроить Redis на сервере Ubuntu 22.04.
Читать: https://habr.com/ru/companies/otus/articles/770364/
Переизобретаем файловую систему: (Open)ZFS
Хранение данных — это всегда боль, у которой может быть больше 50 оттенков: железо, кэш, гарантии, производительность, скорость восстановления при проблемах, удобство и прочее. Как решить большинство из них, при этом получив что-то легко обслуживаемое, да ещё бесплатно? Сегодня поговорим про файловые системы на примере не совсем дефолтной OpenZFS.
Читать: https://habr.com/ru/companies/vk/articles/770300/
Хранение данных — это всегда боль, у которой может быть больше 50 оттенков: железо, кэш, гарантии, производительность, скорость восстановления при проблемах, удобство и прочее. Как решить большинство из них, при этом получив что-то легко обслуживаемое, да ещё бесплатно? Сегодня поговорим про файловые системы на примере не совсем дефолтной OpenZFS.
Читать: https://habr.com/ru/companies/vk/articles/770300/
Индексирование полнотекстовых данных в PostgreSQL с использованием модуля pg_trgm
Привет, Хабр!
PostgreSQL, одна из самых мощных и гибких реляционных СУБД, предлагает нам свой модуль pg_trgm, чтобы решить сложную задачу полнотекстового поиска.
Когда речь идет о поиске, просто
Итак, что такое pg_trgm? Этот модуль PostgreSQL предоставляет набор функций и операторов, которые позволяют работать с трехграммами (триграммами) - это последовательности из трех символов. Для понимания, давайте взглянем на пример...
Читать: https://habr.com/ru/companies/otus/articles/770674/
Привет, Хабр!
PostgreSQL, одна из самых мощных и гибких реляционных СУБД, предлагает нам свой модуль pg_trgm, чтобы решить сложную задачу полнотекстового поиска.
Когда речь идет о поиске, просто
LIKE запросы больше не всегда могут удовлетворить технические требования. Полнотекстовый поиск подразумевает не только поиск точных соответствий, но и учет схожести слов, учет морфологии, а также поддержку более сложных запросов. PostgreSQL, конечно, предоставляет средства для выполнения таких задач, и модуль pg_trgm - один из инструментов, с помощью которого это можно сделать. Итак, что такое pg_trgm? Этот модуль PostgreSQL предоставляет набор функций и операторов, которые позволяют работать с трехграммами (триграммами) - это последовательности из трех символов. Для понимания, давайте взглянем на пример...
Читать: https://habr.com/ru/companies/otus/articles/770674/
Чек-лист: как правильно выбрать поставщика СХД
Выбор надежного поставщика систем хранения данных (СХД) является важным шагом для организации, которая стремится обеспечить успешную работу своих инфраструктурных решений. В мире информационных технологий, где объемы данных растут экспоненциально, а потребности клиентов постоянно меняются, надежный поставщик оборудования играет важную роль в обеспечении стабильного функционирования системы.
Читать: https://habr.com/ru/companies/itglobalcom/articles/770678/
Выбор надежного поставщика систем хранения данных (СХД) является важным шагом для организации, которая стремится обеспечить успешную работу своих инфраструктурных решений. В мире информационных технологий, где объемы данных растут экспоненциально, а потребности клиентов постоянно меняются, надежный поставщик оборудования играет важную роль в обеспечении стабильного функционирования системы.
Читать: https://habr.com/ru/companies/itglobalcom/articles/770678/
MongoDB Hosts First-Ever Events in ASEAN - Empowering Developers to Create, Transform, and Disrupt Industries
Read: https://www.mongodb.com/blog/post/hosts-first-ever-events-asean-empowering-developers-create-transform-disrupt-industries
Read: https://www.mongodb.com/blog/post/hosts-first-ever-events-asean-empowering-developers-create-transform-disrupt-industries
PostgreSQL Antipatterns: ходим по JSON-граблям
Недавно попался на глаза примерно такой кусок запроса, и тут прекрасно примерно все:
• множество чтений из CTE (хоть и единственной записи, но все же);
• извлечение по каждому ключу текста с раскастовкой в jsonb;
• извлечение каждого отдельного json-ключа в каждое отдельное одноименное поле;
• "ручное" преобразование текстового представления массива в json в текстовое представление PostgreSQL.
А как - правильно?
Читать: https://habr.com/ru/companies/tensor/articles/771406/
Недавно попался на глаза примерно такой кусок запроса, и тут прекрасно примерно все:
• множество чтений из CTE (хоть и единственной записи, но все же);
• извлечение по каждому ключу текста с раскастовкой в jsonb;
• извлечение каждого отдельного json-ключа в каждое отдельное одноименное поле;
• "ручное" преобразование текстового представления массива в json в текстовое представление PostgreSQL.
А как - правильно?
Читать: https://habr.com/ru/companies/tensor/articles/771406/
Битва за флешку: кто изобрел USB-накопитель?
Кто изобрел USB-накопитель? Однозначно приписать эту заслугу кому-то конкретному нельзя — на авторство претендуют сразу несколько людей и компаний.
Во многом появлению этого изобретения поспособствовала технологическая среда того времени. Флэшка сочетала в себе флеш-память и интерфейс USB в удобном корпусе, который заменил дискеты.
В этой статье кратко расскажем об основных вехах создания флешки и приведем историю сингапурца Хенна Тана, который один из первых вывел флешку на коммерческий рынок и способствовал ее распространению. Тан вел множество судебных споров о нарушении патентов, но в конечном счете ему удалось добиться лишь ограниченного успеха в борьбе с распространением дизайна флешки.
Читать: https://habr.com/ru/companies/first/articles/771294/
Кто изобрел USB-накопитель? Однозначно приписать эту заслугу кому-то конкретному нельзя — на авторство претендуют сразу несколько людей и компаний.
Во многом появлению этого изобретения поспособствовала технологическая среда того времени. Флэшка сочетала в себе флеш-память и интерфейс USB в удобном корпусе, который заменил дискеты.
В этой статье кратко расскажем об основных вехах создания флешки и приведем историю сингапурца Хенна Тана, который один из первых вывел флешку на коммерческий рынок и способствовал ее распространению. Тан вел множество судебных споров о нарушении патентов, но в конечном счете ему удалось добиться лишь ограниченного успеха в борьбе с распространением дизайна флешки.
Читать: https://habr.com/ru/companies/first/articles/771294/
Использование табличных тестов в go для тестирования запросов к БД + testify
При написании бэкенда работа с базой данных зачастую составляет большую часть кода в проекте. Но несмотря на то, что в го стандартная библиотека для тестирования довольно удобная, она требует написания большого количества кода. Поэтому иногда вместо того, чтобы писать тесты разработчики могут ограничить тестирование при помощи какого-либо клиента (например, при помощи tableplus или другого sql-клиента), либо тестируют уже конечные точки API используя postman. С одной стороны, это, конечно может быть быстрее для первого тестирования, но с другой — такие методы не обеспечивают должного покрытия тестами приложения.
Решить проблему с написанием большого количества кода может помочь библиотека testify, которая позволяет писать тесты более выразительно и с меньшим количеством кода. В testify есть пакеты require и assert, в первом случае выполнение теста будет прервано, а во втором — продолжено. В статье будет использоваться пакет assert. Для облегчения понимания кода можно использовать табличное тестирование, которое поможет определить, какие случаи проверяются даже при беглом взгляде на код.
Читать: https://habr.com/ru/companies/first/articles/771428/
При написании бэкенда работа с базой данных зачастую составляет большую часть кода в проекте. Но несмотря на то, что в го стандартная библиотека для тестирования довольно удобная, она требует написания большого количества кода. Поэтому иногда вместо того, чтобы писать тесты разработчики могут ограничить тестирование при помощи какого-либо клиента (например, при помощи tableplus или другого sql-клиента), либо тестируют уже конечные точки API используя postman. С одной стороны, это, конечно может быть быстрее для первого тестирования, но с другой — такие методы не обеспечивают должного покрытия тестами приложения.
Решить проблему с написанием большого количества кода может помочь библиотека testify, которая позволяет писать тесты более выразительно и с меньшим количеством кода. В testify есть пакеты require и assert, в первом случае выполнение теста будет прервано, а во втором — продолжено. В статье будет использоваться пакет assert. Для облегчения понимания кода можно использовать табличное тестирование, которое поможет определить, какие случаи проверяются даже при беглом взгляде на код.
Читать: https://habr.com/ru/companies/first/articles/771428/
Как хранить данные в облаке? Краткий экскурс по технологиям
Компаниям нужно где-то хранить большое количество данных, но создавать собственные дата-центры — задача не из легких. На помощь приходит облачное хранилище у провайдеров. Оно помогает сэкономить на собственной инфраструктуре и надежно хранить данные разных форматов. Достаточно выбрать подходящий тип хранения: блочный, файловый или объектный. О том, в чем между ними разница, рассказываем в статье. А также делимся инструкцией, как начать работу с объектным хранилищем.
Читать: https://habr.com/ru/companies/selectel/articles/771726/
Компаниям нужно где-то хранить большое количество данных, но создавать собственные дата-центры — задача не из легких. На помощь приходит облачное хранилище у провайдеров. Оно помогает сэкономить на собственной инфраструктуре и надежно хранить данные разных форматов. Достаточно выбрать подходящий тип хранения: блочный, файловый или объектный. О том, в чем между ними разница, рассказываем в статье. А также делимся инструкцией, как начать работу с объектным хранилищем.
Читать: https://habr.com/ru/companies/selectel/articles/771726/