Как стать автором
Поиск
Написать публикацию
Обновить
3.2

Microsoft SQL Server *

Система управления реляционными базами данных

Сначала показывать
Период
Уровень сложности

Подзапросы в выражении CASE

Время на прочтение13 мин
Количество просмотров13K

По материалам статьи Craig Freedman: Subqueries in CASE Expressions

В этой статье будет рассмотрено, как SQL Server обрабатывает подзапросы в выражении CASE. Кроме того, будут рассмотрены несколько экзотических возможностей соединений.

Читать далее

Merge Join

Время на прочтение10 мин
Количество просмотров17K

По материалам статьи Craig Freedman: Merge Join

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

Этот алгоритм в псевдокоде можно выразить следующим образом:

Эта статья посвящена физическому оператору соединения - соединению слиянием (Merge Join или MJ). В отличие от Nested Loops Join, которое поддерживает любые предикаты соединения, соединение слиянием требует существования не менее одного предиката соединения по эквивалентности. Кроме того, получаемые соединением слиянием данные должны быть отсортированы по ключу соединения. Например, если мы имеем предикат соединения "T1.a = T2.b", таблица T1 должна быть отсортирована по T1.a, а таблица T2 должна быть сортирована по T2.b.

Читать далее

Предикаты поиска

Время на прочтение4 мин
Количество просмотров5.1K

Перед тем, как SQL Server приступит к поиску по индексу, он должен определить, являются ли ключи индекса подходящими для оценки предиката запроса.

С индексами по одному столбцу всё довольно просто. SQL Server может их использовать для самых простых сравнений, например, равенства и неравенства (больше чем, меньше чем, и т.д.). Более сложные выражения, такие как функции по столбцу и предикаты "LIKE" с символами подстановки, будут в таких случаях создавать трудности для использования поиска по индексу.

Читать далее

Вариант стратегии быстрого и надежного резервного копирования/восстановления VLDB по сети

Время на прочтение31 мин
Количество просмотров6.1K

Эта статья была опубликована на SQL.RU Другие опубликованные там статьи на тему MS SQL Server можно найти в блоге https://mssqlforever.blogspot.com/ Telegram-канал блога тут: https://t.me/mssqlhelp

По материалам технической статьи Майкрософт: A Case Study: Fast and Reliable Backup and Restore of a VLDB over the Network

Статья была опубликована рание на SQL.RU Публикуется повторно ввиду недоступности сайта.

Автор: Томас Грохсер (Thomas H. Grohser)

При содействии: Линдсей Аллен (Lindsey Allen)

Техническая экспертиза статьи: Sanjay Mishra, Lubor Kollar, Stuart Ozer, Thomas Kejser, Juergen Thomas, James Podgorski, Burzin Patel

Перевод: Александр Гладченко,  Ирина Наумова

Дата издания: июнь 2009г.

Тематика статьи: SQL Server 2008

 Резюме: Размер базы данных непрерывно растёт, темп этого роста, а также её доступность и готовность фиксируется в соглашение о качестве сервиса - SLA. Одновременно с ростом повышается важность быстрого и надежного резервного копирования и планового восстановления в текущем окружении. Этот документ посвящён проблемам проектирования устойчивого резервного копирования и решений по восстановлению очень больших баз данных (VLDB). На реальном примере, в этой статье демонстрируется, как лучше всего использовать резервное копирование и возможности по восстановлению, которыми обладает SQL Server 2008, что должно помочь при создании планов резервного копирования и восстановления VLDB по сети.

Читать далее

Patch Tuesday: Microsoft выпустила февральские обновления безопасности

Время на прочтение3 мин
Количество просмотров2.3K

В феврале Microsoft выпустила обновления безопасности для закрытия 70 уязвимостей, ни одна из которых не была классифицирована как Критическая, а 1 уязвимость была обнародована публично (0-day). Впервые за 5 лет в выпуске обновлений нет критических уязвимостей.

Помимо стандартного набора затронутых продуктов – Windows, Office, SharePoint, Visual Studio, .NET – обновления этого выпуска также затрагивают Microsoft Teams, PowerBI, SQL Server, Dynamics 365 on-premise и Azure Data Explorer.

Максимальный рейтинг по шкале CVSS среди всех закрытых уязвимостей составил 8.8 из 10 (в среднем на протяжении последнего года этот параметр был 9.6).

В этой статье я расскажу о самых важных моментах февральского вторника обновлений.

Узнать, как защитить свою систему

Построение цифрового финансового ОЦО силами непрофессиональных разработчиков

Время на прочтение14 мин
Количество просмотров3.3K

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

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

Читать далее

Как работает антифрод и в чем ценность управления метаданными

Время на прочтение1 мин
Количество просмотров2.9K

На очереди SQL-секция конференции ЮMoneyDay, и она очень мощная, потому что уже проверена осенним митапом про базы данных. Даже если были на нём — в докладах много нового.

Начнём с антифрода: как мы онлайн и офлайн обрабатываем транзакции, храним данные на Microsoft SQL Server и используем движок Business Rule Engine. Далее поделимся, зачем мы взялись за управление метаданными и почему продолжаем развивать это направление.

Заглядывайте под кат!

Смотреть кейсы по SQL

Сказка о поломке или что делать, когда проблема не понятна

Время на прочтение2 мин
Количество просмотров5K

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

Читать далее

Blitz Excel UI

Время на прочтение4 мин
Количество просмотров2.7K

Всем привет. "Не возвращаясь" к нашим баранам из предыдущей статьи "И снова про MS Excel", хочу показать, что же все-таки у меня получилось для работы со скриптами First Response Kit (sp_Blitz) от Brent Ozar и компании. Нравится данный набор и для анализа загруженности SQL Server-а и оптимизации запросов на оном. Причем сам Brent предлагает нечто подобное за денюжку. Для тех кто пользовался, пользуется или думает пользоваться - предлагаю взглянуть на то что у меня получилось.

Едем дальше

Оптимизация производительности Microsoft Dynamics AX 2012 & 365 FO. Использование Plan guides для тяжелых запросов

Время на прочтение5 мин
Количество просмотров2.7K
В этом посте хотим рассказать о, на наш взгляд, незаслуженно редко используемом методе оптимизации тяжелых запросов к БД Axapta – Plan Guides. Если кратко – это, по сути, механизм «подсказки» оптимизатору SQL правильного плана запроса. В некоторых случаях его использование может быть оправданным, а иногда даже единственным возможным.
Читать дальше →

Сравнение схем двух баз данных

Время на прочтение3 мин
Количество просмотров11K

При разработке приложений иногда возникает потребность в сравнении двух баз данных (например prod и dev).

Существует ряд подходов для решения этого вопроса - от создания dump-файла со структурой db и последующим использованием diff, до использования специализированных платных решений типа dbForge или RedGate.

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

Читать далее

ASP.NET Web API + Entity Framework + Microsoft SQL Server + Angular. Часть 1

Время на прочтение8 мин
Количество просмотров40K


Введение


Небольшой курс по созданию простого веб-приложения с помощью технологий ASP.NET Core, фреймворка Entity Framework, СУБД Microsoft SQL Server и фреймворка Angular. Тестировать Web API будем через приложение Postman.

Курс состоит из нескольких частей:

  1. Создание Web API с помощью ASP.NET Web API и Entity Framework Core.
  2. Реализация пользовательского интерфейса на Angular.
  3. Добавление аутентификации в приложение.
  4. Расширение модели приложения и рассмотрение дополнительных возможностей Entity Framework.
Читать дальше →

SQL Launch — мероприятие Microsoft SQL Server 2019

Время на прочтение2 мин
Количество просмотров2.9K


Лучшие эксперты Microsoft расскажут о главных новинках в SQL Server 2019: технологии SQL Server Big Data Clusters для работы с большими данными и машинным обучением, технологии Polybase для доступа к данным во внешних источниках без их копирования, поддержке контейнеров, работе на OS Linux и многих других новинках MS SQL Server 2019!

Отдельный доклад будет посвящен платформе для бизнес-аналитики Microsoft Power BI!

Приглашаем Вас посетить презентацию новой версии гибридной платформы управления данными SQL Server 2019! Регистрируйтесь, ну а подробности под катом.
Читать дальше →

Ближайшие события

Геоаналитика в рознице, часть1: автоматизируем процесс выбора места для бизнеса. 2ГИС + MS Azure + ML

Время на прочтение5 мин
Количество просмотров4.1K


Всем привет!

Меня зовут Сергей Коньков — я архитектор данных в компании Business reports & Data.
Данная статья рассказывает о возможностях использования гео-аналитики и машинного обучения в розничной компании и основана на реальном проекте нашего клиента — большой сети салонов красоты. Здесь не будет много кода и технических деталей, внимание будет уделено обзору технологий, их применению и интеграции.
Читать дальше →

Как Microsoft спрятала целый сервер и как его найти

Время на прочтение4 мин
Количество просмотров27K
— Видишь SSAS-суслика?
— Нет…
— И я не вижу. А он есть!

Суслик SSAS

(Кадр из к/ф «ДМБ»)

Поддержка относительно новой табличной (табулярной) модели данных, в противовес устоявшейся многомерной OLAP, встроена в целый ряд продуктов компании Microsoft. Начиная с SQL-сервера (SS) и заканчивая Excel. И если с SS всё понятно – в нём содержится отдельный сепаратный продукт SQL Server Analysis Services (SSAS). А как же решена поддержка языка DAX-запросов и прочей табулярной функциональности в Power BI, SharePoint или Excel? Поищем «суслика» на примере Power BI Desktop.
Читать дальше →

Прореживание таймфреймов (криптовалюты, форекс, биржи)

Время на прочтение24 мин
Количество просмотров2.9K
Некоторое время назад передо мной была поставлена задача написать процедуру, которая выполняет прореживание котировок рынка Форекс (точнее, данных таймфреймов).

Формулировка задачи: данные поступают на вход с интервалом в 1 секунду в таком формате:

  • Название инструмента (код пары USDEUR и пр.),
  • Дата и время в формате unix time,
  • Open value (цена первой сделки в интервале),
  • High value (максимальная цена),
  • Low value (минимальная цена),
  • Close value (цена последней сделки),
  • Volume (громкость, или объём сделки).

Необходимо обеспечить пересчёт и синхронизацию данных в таблицах: 5 сек, 15 сек, 1 мин, 5 мин, 15 мин, и т.д.

Описанный формат хранения данных имеет название OHLC, или OHLCV (Open, High, Low, Close, Volume). Он применяется часто, по нему сразу можно построить график «Японские свечи».

image

Под катом я описал все варианты, какие смог придумать, как можно прореживать (укрупнять) полученные данные, для анализа, например, зимнего скачка цены биткоина, а по полученным данным вы сразу построите график «Японские свечи» (в MS Excel такой график тоже есть). На картинке выше этот график построен для таймфрейма «1 месяц», для инструмента «bitstampUSD». Белое тело свечи означает рост цены в интервале, чёрное — снижение цены, верхний и нижние фитили означают максимальную и минимальную цены, которые достигались в интервале. Фон — объём сделок. Хорошо видно, что в декабре 2017 цена вплотную приблизилась к отметке 20К.

Решение будет приведено для двух движков БД, для Oracle и MS SQL, что, в некотором роде, даст возможность сравнить их на этой конкретной задаче (обобщать сравнение на другие задачи мы не будем).
Читать дальше →

Отправка запроса на все базы данных всех указанных серверов на примере MS SQL Server и C#.NET

Время на прочтение4 мин
Количество просмотров8.6K

Предисловие


Нередко необходимо послать запрос всем БД (базам данных) всем указанным серверам. Многие DML-запросы можно сделать встроенными средствами. Например, так. Но как быть с DDL-запросами?

В данной статье будет разобран пример реализации приложения, которое отправляет запрос всем базам данных всех указанных серверов, используя MS SQL Server и C#.NET.
Читать дальше →

Подсчет количества ссылок на запись в таблице через Foreign Keys

Время на прочтение3 мин
Количество просмотров3.4K
Потребовалось для собственных целей решить следующую задачку — для одной таблички (File) для каждой записи автоматом рассчитывать количество внешних записей, связанных через foreign key. Задача решалась для конкретной структуры таблички File, но при желании решение можно переделать на более универсальное.

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

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

Эксперименты над олимпиадной задачей

Время на прочтение7 мин
Количество просмотров4.7K
Так получилось, что я попал в магистратуру, и как то гуляя мимо кафедры на глаза попалась олимпиадная задача по 1С. Кратко задача звучит так: «Есть записи продажи за каждый день, необходимо найти наибольший период когда план выполнялся». А потом когда я гулял со спящей дочкой у меня встав вопрос, а сколькими способами это можно сделать на SQL. Решения будут на основе MS SQL.
Читать дальше →

10 причин почему именно сейчас стоит попробовать Microsoft SQL Server

Время на прочтение6 мин
Количество просмотров45K

Причина №1 — Microsoft SQL Server теперь работает и под Linux


16 ноября 2016 года Microsoft опубликовал первую публичную кросплатформенную версию SQL Server VNext, которая теперь работает и под Linux: Public preview of the next release of SQL Server — Bring the performance and security of SQL Server to Linux and Windows


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