DATABASE DESIGN – Telegram
DATABASE DESIGN
1.41K subscribers
2.09K photos
3 videos
5.35K links
Лучшие материалы по работе с хранилищами данных на русском и английском языке

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Другие наши проекты: https://tprg.ru/media
Download Telegram
Что использовать для распределённого хранения данных Zabbix, и почему мы остановились на нетипичном решении?

На одном крупном проекте мы, инженеры компании «Инфосистемы Джет», столкнулись с типичной проблемой стандартных инсталляций Zabbix на больших объемах - производительностью и низкой отказоустойчивостью базы данных. Конфигурация Zabbix была следующей:

- один Zabbix-сервер;

- множество прокси;

- сервер БД PostgreSQL с расширением TimescaleDB;

- сервер Grafana для визуализации данных.

При обычной нагрузке (12000 NVPS) система работала стабильно, но стоило произойти массовой аварии на инфраструктуре или перезагрузке сервера/прокси, как производительности БД не хватало. В такие моменты очень быстро накапливались очереди обработки данных, заканчивались кэши – система фактически прекращала работу. Непростую ситуацию ухудшали еще ложные срабатывания (данные не всегда могли попасть в БД) и рассылка уведомлений ответственным администраторам, проверявшим состояние систем в WEB-интерфейсе. Для восстановления работы приходилось перезапускать компоненты друг за другом, контролируя нагрузку на БД.

Проблему оперативно решили при помощи снижения количества чанков для хранения трендов. Причина происходящего крылась в некорректном партиционировании трендовых данных. Детально о проблеме и методах решения можно почитать в баг-репорте производителя (ZBX-16347). Он помог нам в устранении аварии, но ограничиваться только им не стали – одного репорта, на наш взгляд, было недостаточно. Мы стали смотреть шире и задумались над альтернативными решениями.

А какие варианты есть?

Начнём с того, что наибольшая нагрузка на БД в Zabbix создается на операциях с историческими данными и происходящими в мониторинге событиями. Это таблицы: history, history_uint, history_text, history_str, history_log, events, problems. Производитель предлагает использовать следующие БД: MySQL, PostgreSQL и Oracle DB. Кроме того, исторические данные можно отправлять и в Elasticsearch.


Читать: https://habr.com/ru/companies/jetinfosystems/articles/763514/
Introducing a Local Experience for Atlas, Atlas Search, and Atlas Vector Search with the Atlas CLI

MongoDB has introduced new features for building software locally with MongoDB Atlas, including Atlas Search and Atlas Vector Search. Developers can now use the Atlas CLI to develop locally and automate common management tasks. They can create and manage Atlas Search indexes and Vector Search indexes regardless of their development environment. The Atlas CLI can be installed using various package managers, and developers can create a local Atlas deployment with default settings using interactive mode. For Atlas Search, developers can use the MongoDB Shell to create search indexes and run queries. For Vector Search, MongoDB Shell can be used to create vector search indexes. The Atlas CLI also provides interactive commands for managing search indexes. MongoDB is also renaming Realm to MongoDB Atlas Device SDKs, and developers are free to use the open-source project with or without MongoDB Atlas. MongoDB has also introduced new intelligent experiences in tools like MongoDB Compass, Atlas Charts, Relational Migrator, and MongoDB Documentation that simplify and accelerate application development processes. These experiences include natural language queries in Compass, SQL query conversion in Relational Migrator, natural language support in Atlas Charts, and an intelligent chatbot for MongoDB Documentation. These improvements aim to simplify and accelerate application development, while also maintaining data privacy and security.

Read: https://www.mongodb.com/blog/post/introducing-local-development-experience-atlas-search-vector-search-atlas-cli
New Intelligent Developer Experiences for Compass, Atlas Charts, and Relational Migrator

MongoDB has announced new intelligent developer experiences for several of its tools, including MongoDB Compass, Atlas Charts, Relational Migrator, and MongoDB Documentation. These new experiences provide guided and intelligent assistance for developers in various development processes. For example, in MongoDB Compass, developers can use natural language to compose queries and aggregations. In Relational Migrator, developers can convert SQL queries to MongoDB Query API syntax. In Atlas Charts, developers can use natural language to generate data visualizations. And in MongoDB Documentation, developers can ask questions to an intelligent chatbot for quick information discovery and troubleshooting. These new features aim to simplify and accelerate the development of modern applications.

Read: https://www.mongodb.com/blog/post/new-intelligent-developer-experiences-compass-atlas-charts-relational-migrator
Recap of Product Announcements at MongoDB.local London 2023

MongoDB recently held a conference in London where they announced several product enhancements and new capabilities. They are focused on improving developer experiences by making development with MongoDB Atlas more efficient and easier. They introduced the Atlas CLI, which allows developers to manage local development environments with the same experience as Atlas clusters in the cloud. They also integrated Atlas Search and Atlas Vector Search into the CLI for search index and query management. MongoDB has also used generative AI technology to create intelligent developer experiences, allowing developers to ask questions in plain English and have the corresponding query generated. They have also introduced a SQL query conversion feature in Relational Migrator, making it easier for customers to migrate from using relational databases to using MongoDB. Additionally, MongoDB announced Atlas for the Edge, which brings data processing and storage capabilities closer to where data is generated. They have also seen interest in their Atlas Vector Search for building AI-powered applications and have added new resources, such as books and a solutions library, to empower developers. MongoDB has also introduced new features in familiar tools like MongoDB Compass and Atlas Charts, providing guided and intelligent assistance for query building and data visualization. The text discusses the introduction of language support for building charts and an intelligent chatbot for MongoDB. The chatbot uses natural language to provide information and assistance to developers. It is built with MongoDB Atlas and Atlas Vector Search and offers reference articles, code examples, and other relevant information. MongoDB also plans to open-source and provide educational materials on how the chatbot was built. Data privacy and security are emphasized, and customers are assured that their data is accessed and used transparently. The text concludes by inviting developers to take advantage of the features and provide feedback through the user feedback portal.

Read: https://www.mongodb.com/blog/post/recap-product-announcements-mongodb-local-london-2023
MongoDB Atlas Vector Search Makes Real-Time AI a Reality with Confluent



Read: https://www.mongodb.com/blog/post/mongodb-atlas-vector-search-makes-real-time-ai-reality-confluent
PostgreSQL и временные таблицы

Мы много лет уже используем в качестве основной базы данных PostgreSQL. За это время он зарекомендовал себя быстрой и надежной СУБД. Однако, есть в PostgreSQL одна проблема, с которой приходится сталкиваться достаточно часто. К сожалению, реализация логики временных таблиц в нем имеет ряд недостатков, которые отрицательно сказываются на производительности системы.

Одним из свидетельств наличия проблемы является то, что для временных таблиц в Postgres Pro была добавлена специальная функция fasttrun, а в Postgres Pro Enterprise существенно доработана работа с ними (см. пункт 4).

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

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


Читать: https://habr.com/ru/articles/754476/
Погружаемся в базы данных и SQL: полезные материалы и инструменты от сотрудников Selectel

Новичку нужно перебрать много сайтов, чтобы научиться работать с базами данных. Это усложняется тем, что в открытом доступе мало действительно полезных материалов, которые могут закрыть все пробелы в знаниях.

Мы попросили наших коллег порекомендовать полезные ресурсы, которые помогут сделать первые шаги в работе с базами данных и SQL. Сохраняйте подборку в закладки, чтобы сэкономить время на изучение темы, и делитесь своими вариантами в комментариях.

Почему программисты SQL так плохо шутят? Потому что их юмор — это всегда "SELECT * FROM jokes WHERE is_funny = 1".

Читать: https://habr.com/ru/companies/selectel/articles/763772/
YDB знакомится с TPC-C: раскрываем производительность наших распределенных транзакций

В нашем предыдущем посте о производительности YDB, посвященном Yahoo! Cloud Serving Benchmark (YCSB), мы упоминали, что готовим к публикации результаты других бенчмарков. Мы придерживаемся плана и сегодня рады представить вашему вниманию наши первые результаты бенчмарка TPC-C*, который является индустриальным стандартом оценки производительности онлайн транзакций (OLTP). Согласно этим результатам есть сценарии, в которых YDB немного превосходит CockroachDB, другую хорошо известную распределенную SQL СУБД.


Читать: https://habr.com/ru/companies/ydb/articles/763938/
Congratulations to the 2023 EMEA MongoDB Innovation Award Winners



Read: https://www.mongodb.com/blog/post/congratulations-2023-emea-mongodb-innovation-award-winners
Tarantool: как избавиться от «зоопарка технологий» с помощью потоков событий

Каждый проект рано или поздно обрастает разными технологиями, часть из которых может выполнять схожие или даже одинаковые функции. Наряду с развитием продукта это несет и скрытые трудности, в первую очередь для команды, которая должна поддерживать и развивать весь «зоопарк».

Меня зовут Иван Банников, я ведущий разработчик VK Tech. В этом материале я расскажу об основных предпосылках разрастания используемого стека, а также на примере IoT-платформы, которую мы поддерживали, поделюсь опытом избавления от «зоопарка технологий» в области обработки сообщений.


Читать: https://habr.com/ru/companies/vk/articles/761950/
Welcoming the Grainite Team to MongoDB: Accelerating Atlas Stream Processing



Read: https://www.mongodb.com/blog/post/welcoming-grainite-team-mongodb-accelerating-atlas-stream-processing
MaxScale Installation and Configuration

Read: https://mariadb.com/?p=37686
Building a Culture of Growth: SVP Simon Eid on MongoDB's Massive Opportunity in APAC



Read: https://www.mongodb.com/blog/post/building-culture-growth-svp-mongodb-massive-opportunity-apac
Data-рынок: как российские ЦОДы справляются с нарастающим спросом

Традиционно рынок серверов, систем хранения данных и сетевого оборудования в России был представлен зарубежными компаниями — Dell, HP, Cisco и другими. В 2022-2023 гг data-центры взяли активный курс на импортозамещение при поддержке государства и отечественных поставщиков, поэтому приходится менять устоявшиеся годами бизнес-цепочки. При этом цифровизация требует все новых и новых ресурсов. Сегодня мы заглянем на рынок ЦОДов и постараемся понять, какие у него перспективы, и как российские data-центры справляются с огромным спросом.


Читать: https://habr.com/ru/companies/sberbank/articles/764822/
Building AI with MongoDB: Cultivating Trust with Data



Read: https://www.mongodb.com/blog/post/building-ai-mongodb-cultivating-trust-data
AI, Vectors, and the Future of Claims Processing: Why Insurance Needs to Understand The Power of Vector Databases

The text discusses the importance of vector databases in the field of insurance claims processing. Vector databases store numeric representations of data and allow machine learning algorithms to analyze unstructured data and provide relevant results. The use of vector databases in insurance claims processing can expedite and improve the accuracy of claim adjustment. The text gives an example of a car accident claim, where an adjuster can use a vector database to quickly find and compare relevant photos of similar accidents from the claims history database. MongoDB is mentioned as a platform that can store vectors alongside existing fields in a document. The text also mentions the potential of vector search in handling other data formats such as text and sound. Additionally, the text highlights the benefits of vector search in enhancing customer service, providing personalized recommendations, and scaling AI efforts in the insurance industry. The text discusses the use of AI in healthcare and intelligent assistants for product managers and sales teams. It also highlights the features and benefits of using MongoDB for building AI and unlocking value from multimodal data. The text then transitions to discussing the importance of data resilience with MongoDB Atlas and the potential risks and costs associated with data loss incidents. It explains the key disaster recovery capabilities and strategies for ensuring data resilience, including the use of backups, granular recovery, and prevention measures. The text emphasizes the flexibility and customization options available with MongoDB Atlas for tailoring data resilience to specific business needs and regulatory requirements. It concludes by highlighting the simplicity and manageability of implementing a data resilience strategy with MongoDB Atlas.

Read: https://www.mongodb.com/blog/post/ai-vectors-the-future-claims-processing
Извлечение текста из файлов PDF при помощи Python



▍ Введение

В эпоху больших языковых моделей (Large Language Model, LLM) и постоянно расширяющейся сферы их применений непрерывно растёт и важность текстовых данных.

Существует множество типов документов, содержащих подобные виды неструктурированной информации, от веб-статей и постов в блогах до рукописных писем и стихов. Однако существенная часть этих данных хранится и передаётся в формате PDF. В частности, выяснилось, что за каждый год в Outlook открывают более двух миллиардов PDF, а в Google Drive и электронной почте ежедневно сохраняют 73 миллионов новых файлов PDF (2).

Поэтому разработка более систематического способа обработки этих документов и извлечения из них информации позволит нам автоматизировать процесс и лучше понять этот обширный объём текстовых данных. И в выполнении этой задачи, разумеется, нашим лучшим другом будет Python.


Читать: https://habr.com/ru/companies/ruvds/articles/765246/
Why DARVA in France adopted MariaDB Enterprise Server

Read: https://mariadb.com/?p=37679
Oracle Text and Accented Characters

Oracle Text works with text in many languages. Many of those languages use accented characters, and Oracle Text has a variety of options for dealing with them.

Read: https://blogs.oracle.com/database/post/oracle-text-and-accented-characters