Случайны выбор дневника Раскрыть/свернуть полный список возможностей


Найдено 5561 сообщений
Cообщения с меткой

sql - Самое интересное в блогах

«  Предыдущие 30 Следующие 30  »
rss_habr

От Isolation к Consistency — дорога длиной в 30 лет

Понедельник, 20 Декабря 2022 г. 00:31 (ссылка)

Участвую в стартапе, в котором разрабатывается СУБД нового типа (работает поверх некоторых kv-движков, кардинально расширяя их возможности, про это немного можно прочитать здесь). Для того, чтобы сравнить то, что понемногу получается, с тем, что имеется в индустрии, пришлось на глубоком уровне проработать первоисточники по темам Isolation и Consistency (уточню, что имеется ввиду не та Consistency, что в ACID). Обнаружил интересные нюансы, которые и излагаю в этой статье.



Тезисно:




  • Термин Phantom Read является продуктом испорченного телефона

  • Смысл понятий Lost Update, Write Skew и Read Skew для разделения уровней изоляций неочевиден и относителен

  • Движок, который обеспечивает уровень изоляции Serializable, в распределённом мире может вести себя весьма причудливо, например, всегда возвращать пустой результат для read-only транзакций — и ему за это по стандарту "ничего не будет"

  • Strong consistency в Cosmos DB — предел мечтаний? (спойлер: нет)



Ну, и ещё кое-что по мелочи. В конце рассмотрим вот такой венец творения человеческого разума:



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

https://habr.com/ru/post/705332/?utm_source=habrahabr&utm_medium=rss&utm_campaign=705332

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Изучаем PostgreSQL. Часть 1. Знакомимся с архитектурой

Понедельник, 19 Декабря 2022 г. 18:40 (ссылка)

На сегодняшний день существует большое количество различных систем управления базами данных - СУБД, от коммерческих до открытых, от реляционных до новомодных NoSQL и аналогичных.

Одним из лидеров направления СУБД является PostgreSQL и ее различные ответвления, о некоторых из которых мы рассмотрим подробнее.

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

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

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

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

Читать далее

https://habr.com/ru/post/706346/?utm_source=habrahabr&utm_medium=rss&utm_campaign=706346

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Изучаем PostgreSQL. Часть 1. Знакомимся с архитектурой

Понедельник, 19 Декабря 2022 г. 18:40 (ссылка)

На сегодняшний день существует большое количество различных систем управления базами данных - СУБД, от коммерческих до открытых, от реляционных до новомодных NoSQL и аналогичных.

Одним из лидеров направления СУБД является PostgreSQL и ее различные ответвления, о некоторых из которых мы рассмотрим подробнее.

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

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

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

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

Читать далее

https://habr.com/ru/post/706346/?utm_source=habrahabr&utm_medium=rss&utm_campaign=706346

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Миллион записей для змеи

Суббота, 18 Декабря 2022 г. 03:01 (ссылка)

Загрузить миллион записей в питон за секунду?
Нет. Получилось еще быстрее!

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

Читать далее

https://habr.com/ru/post/706074/?utm_source=habrahabr&utm_medium=rss&utm_campaign=706074

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Взаимодействие DWH Oracle и MS SQL

Среда, 14 Декабря 2022 г. 19:14 (ссылка)

В ряде статей планирую рассказать о подготовке данных, основных этапах разработки и дальнейшего использования данных в Microsoft Analysis Services (SSAS), о процессе построения аналитического хранилища данных на Microsoft SQL Server (MS SQL), о взаимодействии с базами данным Oracle и другими источниками нашего банка Совкомбанк, а также рассказать о возможностях MS SQL которые мы используем.

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

Чаще всего аналитики сталкиваются с проблемами оперативного изменения агрегированных данных и выявлении факторов влияющими на эти данные. Довольно часто аналитики получают и анализирую данных в плоском сгруппированном виде, не всегда есть возможность без подключения технических специалистов разложить составляющие на самый низкий уровень гранулярности, определить неточности в данных. И физически человек не способен воспринимать многомиллионные строки данных, например в excel. Для этого на помощь приходит SSAS. В него можно загрузить большой объем данных и при необходимости развернуть до основных составляющих данных.

Дополнительно поставлю вопросы как цели: как мы упрощаем жизнь для бизнес – аналитиков, как вовремя и качественно сдаем отчетность в ЦБ, как с легкостью обрабатываем терабайты данных для предоставления их пользователям?

Читать далее

https://habr.com/ru/post/705538/?utm_source=habrahabr&utm_medium=rss&utm_campaign=705538

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Влияние сбора статистик на скорость выполнения запросов в СУБД TERADATA

Пятница, 09 Декабря 2022 г. 10:11 (ссылка)

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

Читать далее

https://habr.com/ru/post/704316/?utm_source=habrahabr&utm_medium=rss&utm_campaign=704316

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Влияние сбора статистик на скорость выполнения запросов в СУБД TERADATA

Пятница, 09 Декабря 2022 г. 10:11 (ссылка)

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

Читать далее

https://habr.com/ru/post/704316/?utm_source=habrahabr&utm_medium=rss&utm_campaign=704316

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

DBA: хранение списков — таблица, массив, строка?

Четверг, 08 Декабря 2022 г. 16:25 (ссылка)

Достаточно часто при проектировании схемы БД возникает задача сохранить по основной сущности некоторый набор простых второстепенных данных.

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

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

Давайте посмотрим, какие варианты хранения таких данных мы можем использовать в PostgreSQL, и какой из них окажется в разы более эффективным.

Читать далее

https://habr.com/ru/post/704250/?utm_source=habrahabr&utm_medium=rss&utm_campaign=704250

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Обновить данные в ClickHouse без UPDATE: кейс IBS

Вторник, 06 Декабря 2022 г. 11:41 (ссылка)

Привет, Хабр! Меня зовут Антон, я – старший разработчик в отделе разработки баз данных в IBS. В этой статье я расскажу о том, как нашей командой была решена задача по сохранению в ClickHouse большого количества данных, генерируемых веб-приложением, с последующим получением сохранённых данных в агрегированном виде.

Решение задачи, описанной выше, было бы простым и вряд ли заслуживающим отдельной статьи на Хабре. Но наш случай представлял собой ряд нюансов: здесь есть технические дубли записей и бизнес-дубли (обновления), есть агрегированные данные и необходимость обновления агрегированных данных. А это уже пример не совсем типичного использования ClickHouse, которым мы и хотим поделиться.

Интересно? Переходите под кат.

https://habr.com/ru/post/703124/?utm_source=habrahabr&utm_medium=rss&utm_campaign=703124

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

[Перевод] Детальное рассмотрение поведения при использовании INCLUDE

Понедельник, 05 Декабря 2022 г. 14:53 (ссылка)

Некоторые базы данных такие, как Microsoft SQL Server, IBM Db2, а также PostgreSQL начиная с 11 версии – предлагают прибегнуть к оператору include для генерации индекса. Представление данного функционала в PostgreSQL (исходная статья вышла 30.04.2019) послужило поводом для этого объёмного рассуждения о работе с оператором include.

Содержание:

1) Напоминание: btree-индексы

2) Напоминание: Index-only сканирование

3) Оператор include

4) Фильтрация по полям в include

5) Уникальные индексы при использовании include

6) Сравнение

7) PostgreSQL: Никакой фильтрации до проверки области видимости

Читать далее

https://habr.com/ru/post/703578/?utm_source=habrahabr&utm_medium=rss&utm_campaign=703578

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

[Перевод] 2003–2023: Краткая история Big Data

Воскресенье, 04 Декабря 2022 г. 13:00 (ссылка)

Когда, играя в ту или иную RPG, я оказываюсь в библиотеке, то обязательно перечитываю все книги на полках, чтобы лучше вникнуть во вселенную игры. Помнит кто-нибудь «Краткую историю империи» в Morrowind?



Большие данные (Big Data) и, в частности, экосистема Hadoop появились немногим более 15 лет назад и развились к сегодняшнему дню так, как мало кто мог тогда предположить.



Ещё только появившись, опенсорсный Hadoop сразу стал популярным инструментом для хранения и управления петабайтами данных. Вокруг него сформировалась обширная и яркая экосистема с сотнями проектов, и он до сих пор используется многими крупными компаниями, даже на фоне современных облачных платформ. В текущей статье я опишу все эти 15 лет1 эволюции экосистемы Hadoop, расскажу о её росте в течение последнего десятилетия, а также о последних шагах в развитии сферы больших данных за последние годы.



Так что пристегнитесь и настройтесь на путешествие во времени вглубь 20 последних лет, поскольку наша история начинается в 2003 году в маленьком городке к югу от Сан-Франциско…



Дисклеймер: изначально я планировал оформить статью логотипами упоминаемых в ней компаний и программ, но на TDS запрещено обширное использование логотипов, поэтому я решил украсить содержание случайными изображениями и справочной информацией. Весело вспоминать, где мы в те времена находились и чем занимались.

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

https://habr.com/ru/post/702932/?utm_source=habrahabr&utm_medium=rss&utm_campaign=702932

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

PostgreSQL Antipatterns: простой(?) INSERT… VALUES

Четверг, 01 Декабря 2022 г. 16:16 (ссылка)

Представим, что у вас есть некоторая табличка статистики, куда вы периодически скидываете таймстамп последнего "текущего" состояния в паре координат - например, (ID организации, ID сотрудника).

Как больно наступить на грабли в совсем простом, казалось бы, запросе?

Читать далее

https://habr.com/ru/post/702902/?utm_source=habrahabr&utm_medium=rss&utm_campaign=702902

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

PostgreSQL Antipatterns: простой(?) INSERT… VALUES

Четверг, 01 Декабря 2022 г. 16:16 (ссылка)

Представим, что у вас есть некоторая табличка статистики, куда вы периодически скидываете таймстамп последнего "текущего" состояния в паре координат - например, (ID организации, ID сотрудника).

Как больно наступить на грабли в совсем простом, казалось бы, запросе?

Читать далее

https://habr.com/ru/post/702902/?utm_source=habrahabr&utm_medium=rss&utm_campaign=702902

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество

«  Предыдущие 30 Следующие 30  »

<sql - Самое интересное в блогах

Страницы: 1 2 3 [4] 5 6 ..
.. 10

LiveInternet.Ru Ссылки: на главную|почта|знакомства|одноклассники|фото|открытки|тесты|чат
О проекте: помощь|контакты|разместить рекламу|версия для pda