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
Data Lake VS Data Warehouse

With the rise of the concept of a data lake in recent years, the industry has been constantly arguing about the comparison and debate between data warehouse and data lake. Some people say that the data lake is the next-generation big data platform. M...

Read: https://alibabacloudofficial.hashnode.dev/data-lake-vs-data-warehouse
Выкачиваем почтовый архив. Бэкап Gmail и других ящиков на локальный диск

Почтовый ящик с письмами — это личная собственность человека. Никто не имеет права доступа к архиву, кроме владельца.

Забота о своём почтовом архиве тем более актуальна в нынешних условиях, когда любой внешний сервис может закрыться, обанкротиться или просто откажется вас обслуживать. Гораздо спокойнее хранить архив у себя — сделать резервную копию в надёжном домашнем хранилище.


Читать: https://habr.com/ru/post/660197/
👍1
Быстрый перенос систем SAP в российское облако: оценка рисков, подбор ресурсов, разбор кейса

В текущих условиях обеспечить высокую надежность и безопасность данных SAP-систем поможет миграция в российское облако. Совместно с профильными партнерами наша команда взяла на себя все задачи миграции, администрирования, технического обслуживания и сопровождения приложений до уровня SAP Basis включительно. Как именно это происходит — расскажем далее.


Читать: https://habr.com/ru/post/662037/
Как работает оптимизатор PostgreSQL при большом количестве соединений

SQL — это декларативный язык программирования, используемый для создания и манипулирования объектами в реляционных СУБД. Этот язык описывает что должно быть получено, но не описывает как это получить. Программист пишет запрос и (чаще всего) хочет получить результат от СУБД максимально быстро.

Работу по нахождению самого лучшего способа получения требуемых данных выполняет планировщик (он же оптимизатор) запросов. Он выбирает способы соединения наборов строк и их обработки, строит различные планы выполнения запроса и находит среди них наилучший, для чего используется стоимостная модель оптимизации.

Поэтому оптимизатор — это ключевая часть СУБД, один из самых сложных элементов всей системы.

Для демонстрации работы оптимизатора практически во всех наших (и чужих) примерах на эту тему используются довольно скромные параметры: две-три таблицы, пара JOIN-ов, миллисекунды на выполнение запросов. А что будет, если загрузить оптимизатор десятками таблиц за раз? Как разные конфигурационные параметры влияют на производительность запросов с сотней JOIN-ов? И переживет ли это среднестатистический рабочий ноутбук? Ответы на эти вопросы — со схемами и графиками — вы найдете под катом!


Читать: https://habr.com/ru/post/662021/
Finding The Right Career Move Thanks to Flexa and MongoDB

Read: https://www.mongodb.com/blog/post/finding-right-career-move-thanks-flexa-mongodb
Announcing the General Availability of openCypher support for Amazon Neptune

Read: https://aws.amazon.com/blogs/database/announcing-the-general-availability-of-opencypher-support-for-amazon-neptune/
Day 31/100

Designing Data-Intensive Applications [Book Highlights]
[Part I : Chapter III] Storage and Retrieval
Aggregation: Data Cubes and Materialized Views


The advantage of a materialized data cube is that certain queries become very fast because they have...

Read: https://rawdatareaders.hashnode.dev/day-31
Introducing Exadata Cloud Infrastructure X9M

This blog describes the new Exadata Cloud Infrastructure X9M

Read: https://blogs.oracle.com/database/post/introducing-exadata-cloud-infrastructure-x9m
Bun: SQL-first Golang ORM

SQL-first
Bun is a SQL-first Golang ORM for PostgreSQL, MySQL/MariaDB, MSSQL, and SQLite.
SQL-first means you can write SQL queries in Go, for example, the following Bun query:
var num int
err := db.NewSelect().
TableExpr("generate_series(1, 3)")...

Read: https://uptrace.hashnode.dev/bun-sql-first-golang-orm
Установка Sonatype Nexus с SSL

Sonatype Nexus — программный продукт, который представляет собой менеджер репозиториев для хранения артефактов. По умолчанию установка происходит без включенного SSL. В данной статье будет описана установка Sonatype Nexus в контейнере Docker с использованием Nginx в качестве обратного прокси сервера, а также будет рассмотрено получение бесплатного доменного имени на сайте freenom.com и создание SSL-сертификата при помощи службы Let’s Encrypt.


Читать: https://habr.com/ru/post/661465/
Авторизация в PostgreSQL. Часть 2. Безопасность на уровне строк

Приветствую вас в очередном разборе инструментов авторизации PostgreSQL. В первых двух разделах предыдущей статьи мы обсуждали, чем интересна авторизация в PostgreSQL. Вот содержание этой серии материалов:
* Роли и привилегии;
* Безопасность на уровне строк (мы сейчас здесь);
* Производительность безопасности на уровне строк (coming soon!);

В первой статье мы рассмотрели, как роли и предоставленные привилегии влияют на действия (запросы SELECT, INSERT, UPDATE и DELETE) в отношении объектов БД (таблиц, представлений и функций). Та статья закончилась небольшим клиффхэнгером: если вы создадите многопользовательское приложение, используя только роли и привилегии для авторизации, то ваши пользователи смогут удалять данные друг друга, а может и вообще друг друга. Необходим другой механизм, позволяющий ограничить пользователей чтением и изменением только собственных данных — механизм безопасности на уровне строк (RLS).

Читать: https://habr.com/ru/post/662209/
Лучший технический вопрос, который мне задавали на собеседовании

Много воды утекло с тех пор, как я в последний раз участвовал в собеседовании по программированию как соискатель. Но до сих пор помню особенно полюбившийся мне вопрос с такого собеседования. Дело было в MemSQL, году так в 2013. (Они даже успели переименоваться, поэтому, полагаю, конкретно этот вопрос они на собеседовании уже не задают. Не чувствую вины за то, что выдаю его. Это отличная история, которая также кажется мне поучительной; просто раньше я о ней никогда не писал).

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

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


Читать: https://habr.com/ru/post/662247/
How to perform CRUD operations with Entity Framework Core and PostgreSQL

When working with relational databases, you often come across two tasks: writing SQL queries and mapping the results to some DTO objects.
.NET developers are lucky to have an incredibly powerful tool that can speed up their development: Entity Framew...

Read: https://code4it.hashnode.dev/how-to-perform-crud-operations-with-entity-framework-core-and-postgresql
The 5-Step Guide to Mainframe Modernization for Banks

Read: https://www.mongodb.com/blog/post/5-step-guide-mainframe-modernization-banks
Celebrating Earth Day With Three MongoDB Customers

Read: https://www.mongodb.com/blog/post/celebrating-earth-day-three-mongodb-customers
MongoDB vs DynamoDB: Which NoSQL database is right for you?

Data storage flexibility can be one of the most important keys to your productivity as a software developer, and NoSQL databases are a great facilitator of that flexibility. They allow for high-speed data management and scalability, which makes them ...

Read: https://educativeio.hashnode.dev/mongodb-vs-dynamodb-which-nosql-database-is-right-for-you
Graphs simplify software development

Graphs have uses in unexpected places. This blog talks about how Oracle Graph can help analyze legacy software and provide a solution to simplifying software development.

Read: https://blogs.oracle.com/database/post/graphs-simplify-software-development
Concurrent write problem

Introduction
Concurrency control is one of the most challenging aspects of software development. Sometimes, we have a tendency to wishful thinking and naive beliefs that our advanced toolkit like a web framework, a database or an ORM solve all our is...

Read: https://jorzel.hashnode.dev/concurrent-write-problem
Democratizing Data Access With Plain English, Cogram, and MongoDB

Read: https://www.mongodb.com/blog/post/democratizing-data-access-plain-english-cogram-mongodb