Обзор популярных файловых систем в системах виртуализации. Часть 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/
Это база: нюансы работы с Redis. Часть 1
Привет! Меня зовут Петр и мы в компании Nixys очень любим Redis. Эта база используется, если не на каждом нашем проекте, то на подавляющем большинстве. Мы работали как с разными инсталляциями Redis, так и с разными версиями, вплоть до самых дремучих, вроде 2.2. Несмотря на то, что в Интернете очень много статей и докладов по этой БД, мы в своей практике достаточно часто встречаемся с непониманием некоторых основных концепций Redis и со стороны разработчиков, и со стороны системных администраторов.
В серии статей я попытаюсь осветить неочевидные нюансы при работе с Redis и сегодня начну с основных концепций и понятий. А еще в конце статьи приведу небольшой чек-лист, который может помочь вам в оптимизации этого NoSQL решения.
Читать: https://habr.com/ru/companies/nixys/articles/765694/
Привет! Меня зовут Петр и мы в компании Nixys очень любим Redis. Эта база используется, если не на каждом нашем проекте, то на подавляющем большинстве. Мы работали как с разными инсталляциями Redis, так и с разными версиями, вплоть до самых дремучих, вроде 2.2. Несмотря на то, что в Интернете очень много статей и докладов по этой БД, мы в своей практике достаточно часто встречаемся с непониманием некоторых основных концепций Redis и со стороны разработчиков, и со стороны системных администраторов.
В серии статей я попытаюсь осветить неочевидные нюансы при работе с Redis и сегодня начну с основных концепций и понятий. А еще в конце статьи приведу небольшой чек-лист, который может помочь вам в оптимизации этого NoSQL решения.
Читать: https://habr.com/ru/companies/nixys/articles/765694/
Third Quarterly Update on Oracle Graph (2023)
Oracle Graph Server and Client 23.3 is now available for download for use with databases in the Cloud (OCI Marketplace image is available) and for databases on-premises. This release includes a number of new features, including the simplified install and use of the graph visualization tool, updates to PGQL, and RDF feature enhancements. The graph visualization REST API was also updated to streamline authentication and run PGQL queries through the JSON body, rather than as an encoded URL.
Read: https://blogs.oracle.com/database/post/third-quarterly-update-on-oracle-graph-2023
Oracle Graph Server and Client 23.3 is now available for download for use with databases in the Cloud (OCI Marketplace image is available) and for databases on-premises. This release includes a number of new features, including the simplified install and use of the graph visualization tool, updates to PGQL, and RDF feature enhancements. The graph visualization REST API was also updated to streamline authentication and run PGQL queries through the JSON body, rather than as an encoded URL.
Read: https://blogs.oracle.com/database/post/third-quarterly-update-on-oracle-graph-2023
Oracle
Third Quarterly Update on Oracle Graph (2023)
Oracle Graph Server and Client 23.3 is now available for download for use with databases in the Cloud (OCI Marketplace image is available) and for databases on-premises. This release includes a number of new features, including the simplified install and…
Integrating Helidon and WebLogic Microservices with Oracle MicroTx
This post will describe how Oracle MicroTx can be used to coordinate transactions that span Helidon and WebLogic Server.
Read: https://blogs.oracle.com/database/post/integrating-helidon-and-weblogic-microservices-with-oracle-microtx
This post will describe how Oracle MicroTx can be used to coordinate transactions that span Helidon and WebLogic Server.
Read: https://blogs.oracle.com/database/post/integrating-helidon-and-weblogic-microservices-with-oracle-microtx
Oracle
Integrating Helidon and WebLogic Microservices with Oracle MicroTx
This post will describe how Oracle MicroTx can be used to coordinate transactions that span Helidon and WebLogic Server.
Как мы создали и развиваем лабораторию R&D
Привет, меня зовут Александр, я руковожу Управлением исследований и разработки новых решений в «Ростелеком-ЦОД», если коротко — лабораторией R&D.
Сейчас лаборатория хорошо прокачана и продуктивна, но так было не всегда. В этой статье я расскажу, как мы ее создавали, к чему пришли и как тестируем оборудование, ПАК и ПО.
Читать: https://habr.com/ru/companies/dataline/articles/771796/
Привет, меня зовут Александр, я руковожу Управлением исследований и разработки новых решений в «Ростелеком-ЦОД», если коротко — лабораторией R&D.
Сейчас лаборатория хорошо прокачана и продуктивна, но так было не всегда. В этой статье я расскажу, как мы ее создавали, к чему пришли и как тестируем оборудование, ПАК и ПО.
Читать: https://habr.com/ru/companies/dataline/articles/771796/
Развертывание базы данных Oracle в Docker в условиях санкций
По определенным обстоятельствам потребовалось создать имитацию всего контура тестируемого нами ПО, контур включает в себя множество различных сервисов, но в этой статье остановимся на базе данных, так как процесс ее развертывания наиболее нитереснен.
В статье освещен процесс решения проблем при сборке образа и запуске контейнера
Читать: https://habr.com/ru/articles/772930/
По определенным обстоятельствам потребовалось создать имитацию всего контура тестируемого нами ПО, контур включает в себя множество различных сервисов, но в этой статье остановимся на базе данных, так как процесс ее развертывания наиболее нитереснен.
В статье освещен процесс решения проблем при сборке образа и запуске контейнера
Читать: https://habr.com/ru/articles/772930/
Announcing LangChain Templates for MongoDB Atlas
Read: https://www.mongodb.com/blog/post/announcing-langchain-templates-mongodb-atlas
Read: https://www.mongodb.com/blog/post/announcing-langchain-templates-mongodb-atlas
Почему вам стоит отказаться от использования timestamp в PostgreSQL
Не секрет, что работа с часовыми поясами — боль, и многие разработчики объяснимо стараются ее избегать. Тем более что в каждом языке программирования / СУБД работа с часовыми поясами реализована по-разному.
Среди тех, кто работает с PostgreSQL, есть очень распространенное заблуждение про типы данных timestamp (который также именуется timestamp without time zone) и timestamptz (или timestamp with time zone). Вкратце его можно сформулировать так:
Мне не нужен тип timestamp with time zone, т.к. у меня все находится в одном часовом поясе — и сервер, и клиенты.
В статье я постараюсь объяснить, почему даже в таком довольно простом сценарии можно запросто напороться на проблемы. А в более сложных (которые на самом деле чаще встречаются на практике, чем может показаться) баги при использовании timestamp практически гарантированы.
Читать: https://habr.com/ru/articles/772954/
Не секрет, что работа с часовыми поясами — боль, и многие разработчики объяснимо стараются ее избегать. Тем более что в каждом языке программирования / СУБД работа с часовыми поясами реализована по-разному.
Среди тех, кто работает с PostgreSQL, есть очень распространенное заблуждение про типы данных timestamp (который также именуется timestamp without time zone) и timestamptz (или timestamp with time zone). Вкратце его можно сформулировать так:
Мне не нужен тип timestamp with time zone, т.к. у меня все находится в одном часовом поясе — и сервер, и клиенты.
В статье я постараюсь объяснить, почему даже в таком довольно простом сценарии можно запросто напороться на проблемы. А в более сложных (которые на самом деле чаще встречаются на практике, чем может показаться) баги при использовании timestamp практически гарантированы.
Читать: https://habr.com/ru/articles/772954/
Российские коммутаторы, ИБП и новые процессоры от AMD и Intel: что подготовил рынок железа в октябре
Новый месяц — новый дайджест серверного (и не только) оборудования. Какие новинки приготовил нам октябрь — рассказываем в статье. Спойлер: месяц порадовал новыми процессорами, платформами, дисками, а еще — российскими коммутаторами и ИБП. Уже присматриваете новое железо для своих серверов? Тогда добро пожаловать под кат!
Читать: https://habr.com/ru/companies/selectel/articles/772546/
Новый месяц — новый дайджест серверного (и не только) оборудования. Какие новинки приготовил нам октябрь — рассказываем в статье. Спойлер: месяц порадовал новыми процессорами, платформами, дисками, а еще — российскими коммутаторами и ИБП. Уже присматриваете новое железо для своих серверов? Тогда добро пожаловать под кат!
Читать: https://habr.com/ru/companies/selectel/articles/772546/
ClickHouse: Передовой инструмент для оперативной обработки данных
ClickHouse — система управления базами данных с открытым исходным кодом, построенная на основе колонок. Это означает, что данные хранятся и обрабатываются не по строкам, а по столбцам. Она стала широко популярной среди ИТ-организаций благодаря своим способностям по быстрой обработке данных и масштабируемости. Высокопроизводительная обработка запросов в ClickHouse делает ее идеальным выбором для работы с большими объемами данных и оперативной аналитики.
В данной статье мы подробно рассмотрим, что представляет собой разработка ClickHouse, а также как организации используют ее для хранения и обработки данных. Еще мы обсудим недостатки этой системы и разберемся, насколько подходит она под ваши потребности.
Читать: https://habr.com/ru/companies/otus/articles/773174/
ClickHouse — система управления базами данных с открытым исходным кодом, построенная на основе колонок. Это означает, что данные хранятся и обрабатываются не по строкам, а по столбцам. Она стала широко популярной среди ИТ-организаций благодаря своим способностям по быстрой обработке данных и масштабируемости. Высокопроизводительная обработка запросов в ClickHouse делает ее идеальным выбором для работы с большими объемами данных и оперативной аналитики.
В данной статье мы подробно рассмотрим, что представляет собой разработка ClickHouse, а также как организации используют ее для хранения и обработки данных. Еще мы обсудим недостатки этой системы и разберемся, насколько подходит она под ваши потребности.
Читать: https://habr.com/ru/companies/otus/articles/773174/