Все потоки
Поиск
Написать публикацию
Обновить
99.86

SQL *

Формальный непроцедурный язык программирования

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

SQL Server 2016 Stretch Database

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


Первого июня состоялся релиз SQL Server 2016, который привнес в привычную разработку большое число нововведений, среди которых уже давно анонсированную технологию Stretch Database, позволяющую динамически переносить «горячие» и «холодные» данные из SQL Server в Azure.

С точки зрения маркетинга, Stretch Database очень хорошо распиарили. Приводили разумные аргументы, что по мере накопления в базе исторических данных возрастает сложность и стоимость её эксплуатации. И предлагали разумное решение — автоматический перенос архивных данных по мере устаревания в «облако». Честно признаюсь, идея мне понравилась.

Начиная с SQL Server 2016 RC0 я начал тестировать технологию Stretch Database на двух проектах, которые помогаю развивать. Первый — это трекер рабочего времени для которого характерна OLTP нагрузка, второй — внутренний проект с DW нагрузкой.
Подробнее

Как sql-запросом извлечь из базы данных информацию, которой там нет

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров37K

Под таким хитрым заголовком скрывается достаточно несложная задача, но сначала небольшое вступление:


Приходят пользователи и просят: «Вот мы внесли данные в базу, а скажите нам, чего не хватает? Какие данные мы ещё не внесли в базу и их не хватает для полного счастья?»
Первая (и скажем честно, весьма глупая) реакция: «Как же я вам найду то, чего нет в базе данных?».


Но отбросим эмоции и применим логику. Ведь, как правило, требуются данные, формирование которых подчиняется некоему правилу — номера квитанций, справок и так далее… И я исхожу из того, что все эти номера и идентификаторы могут быть преобразованы в натуральную последовательность.
То есть задача будет сформулирована следующим образом: в базе данных хранится последовательность натуральных чисел, в которой есть пропуски, и необходимо вывести пропущенные числа для пользователя.
В такой формулировке задача уже выглядит достаточно простой. Более того — возникает желание реализовать эту задачу одним единственным sql-запросом.

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

Яндекс открывает ClickHouse

Время на прочтение14 мин
Количество просмотров170K
Сегодня внутренняя разработка компании Яндекс — аналитическая СУБД ClickHouse, стала доступна каждому. Исходники опубликованы на GitHub под лицензией Apache 2.0.



ClickHouse позволяет выполнять аналитические запросы в интерактивном режиме по данным, обновляемым в реальном времени. Система способна масштабироваться до десятков триллионов записей и петабайт хранимых данных. Использование ClickHouse открывает возможности, которые раньше было даже трудно представить: вы можете сохранять весь поток данных без предварительной агрегации и быстро получать отчёты в любых разрезах. ClickHouse разработан в Яндексе для задач Яндекс.Метрики — второй по величине системы веб-аналитики в мире.

В этой статье мы расскажем, как и для чего ClickHouse появился в Яндексе и что он умеет; сравним его с другими системами и покажем, как его поднять у себя с минимальными усилиями.
Читать дальше →

Delayed Durability или история о том как получилось ускорить выполнение автотестов с 11 до 2,5 минут

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


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

Стек технологий был изначально выбран мелкомягкий, а в качестве хранилища данных использовался SQL Server 2014 Express. Одним из первых тасков, которые мне поручили — это поисследовать возможность ускорения автотестов.
Подробнее

Полный список флагов трассировки Microsoft SQL Server

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

Microsoft SQL Server Флаги Трассировки


Полный список Microsoft SQL Server флагов трассировки (359 флагов трассировки на текущий момент).


ПОМНИТЕ: Будьте предельно осторожны с флагами трассировки, проверяйте их влияние в первую очередь в тестовой среде.

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

Ох уж мне эти базы данных: Sybase (ASE) и datetime

Время на прочтение2 мин
Количество просмотров12K
Привет, хабр!
На самом деле пост об одной строчке в документации, как оказалось. Но это было неожиданно, поэтому я решил поделиться с Вами найденным.
Читать дальше →

Подводные камни при использовании Linked Server

Время на прочтение5 мин
Количество просмотров31K
В нашу компанию пришел достаточно интересный проект, связанный с обработкой очереди задач. Проект был разработан ранее другой командой. Нам необходимо было разобраться с проблемами, возникающими при большой нагрузке на очередь, и, соответственно, исправить найденные.

Если вкратце, то проект из себя представляет несколько БД и приложений, расположенных на разных серверах. «Задача» в данном проекте – это хранимая процедура или .Net приложение. Соответственно «задача» должна быть выполнена на определённой БД и на определенном сервере.

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

Смотрите запись открытия виртуального форума «Данные. Технологии. SQL Server 2016»

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


Программа форума разделена на 3 технологические сессии, которые проходили параллельно:

SQL Server 2016: новые стандарты в мире OLTP. Трек посвящен возможностям новой платформы по повышению производительности и безопасности процессов. Так, скорость обработки транзакций на новой платформе выше в 30 раз, а запросов – в 100 раз, по сравнению с дисковыми реляционными базами. Безопасность системы обеспечивается современными инструментами Always Encrypted и Role Level Security.

Бизнес-аналитика: SQL, Power BI, R, Mobile. Обсуждение вариантов практического применения SQL Server 2016 для разработки интеллектуальных приложений, способных анализировать данные и организовывать их в умные системы с помощью технологий бизнес-аналитики BI, а также использования языка R.

Azure: новое поколение решений для аналитики, Big Data& IoT. Доклады об обеспечении автоматизации критически-важных процессов в компании благодаря умным аналитическим системам, машинному обучению и ботам, а также интеграции в облако с возможностью масштабирования ИТ-инфраструктуры.

Виртуальный форум открылся с рассказа об основных трендах в области обработки данных и об инновациях, представленных в продуктах Microsoft, в том числе в новейшем SQL Server 2016
Смотрите запись открытия виртуального форума

Небольшая особенность CHAR и VARCHAR

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

Предыстория



Есть небольшой сервер, на котором крутится стандартный LAMP. Все началось с того, что подходит ко мне QA и говорит: «Есть тема, мне нужно перепроверить регистрацию пользователей, можешь удалить старый аккаунт?», «Не вопрос» — ответил я. Суть в том, вход у нас сделан только через социалки. Что бы не нарушать целостность базы удалением аккаунта, я решил просто взять и переименовать UID (пользовательский ID в конкретной социальной сети) в таблице.
Так как UID у всех разный (vk, facebook, google… — числовой UID, linkedin — строковый UID) был использован VARCHAR для хранения. В итоге я добавил символ нижнего подчеркивания `_` к строке, и со спокойной душой отписался: «Проверяй...».

image

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

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

Примите участие в виртуальном форуме «Данные. Технологии. SQL Server 2016»

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


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

PostgreSQL — не Rocket Science. Почем сейчас яйца?

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


Постоянно натыкаюсь на высказывания из серии «PostgreSQL слишком сложная база для моего небольшого проекта, поэтому буду продолжать работать с MySQL».
В этой статье я хотел бы показать, что человеку, знающему MySQL, не составит абсолютно никакого труда начать разрабатывать под PostgreSQL
Читать дальше →

Чем PostgreSQL лучше других SQL баз данных с открытым исходным кодом. Часть 2

Время на прочтение10 мин
Количество просмотров65K
Друзья, представляем вашему вниманию вторую часть перевода «Чем PostgreSQL лучше?». Надеемся, она вызовет такое же горячее обсуждение в комментариях, как и первая часть. А также с радостью продолжим с вами дискуссию лично на PG Day'16 Russia, до которой осталось совсем немного!

В слогане PostgreSQL заявляется, что это «Самая продвинутая база данных с открытым исходным кодом в мире». В первой части этой серии мы рассмотрели хранение данных — модель, структуры, типы и ограничения по размеру, — чтобы дать вам несколько причин, почему Постгрес подтверждает свои слова делом. Во второй части мы поговорим о манипуляциях с данными и поиске, включая индексирование, виртуальных таблицах и возможностях запросов. В этой серии мы выясняем, что выгодно отличает PostgreSQL от других баз данных с открытым исходным кодом, а именно — от MySQL, MariaDB и Firebird.


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

Отпуск по-программистски, или как я не поучаствовал в конкурсе по программированию на JS. Часть вторая

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

В первой части этого описания попытки решения интересной конкурсной задачи я рассказал о подготовке данных для анализа и о нескольких экспериментах. Напомню, условие задачи заключалось в том, чтобы с наибольшей вероятностью определить наличие слова в словаре, не имея доступа к этому словарю в момент выполнения программы и с ограничением на объем программы (включая данные) в 64K.
image
Как и в прошлый раз, под катом много SQL, JS, а также нейронные сети и фильтр Блума.

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

Отпуск по-программистски, или как я не поучаствовал в конкурсе по программированию на JS. Часть первая

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

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


image


Задача состояла в том, чтобы написать программу на JS, которая будет определять, есть слово с словаре английских слов или нет. Вроде бы просто, но есть пара ограничений, делающих задачу заведомо невыполнимой:
– Словом считается не просто любое правильное слово английского языка, а именно слово, которое есть в предоставленном словаре из 600K+ слов.
– Словаря в момент исполнения программы нет, скачать его нельзя, а размер программы, включая данные, не должен превышать 64К. Внешние библиотеки подключать также нельзя, но файл данных может быть заархивирован.
Благодаря этим условиям вместо однозначного ответа результатом может быть только определение наибольшей вероятности присутствия слова в словаре.


Сразу скажу, что решение я так и не отправил из-за неудовлетворённостью результатом (решение, которое давало хотя бы 80%, я смог поместить только в 120-130К, а без превышения размера в 64К выжал максимум 70%).
Тем не менее опыт считаю достаточно интересным и достойным статьи. Под катом много SQL,JS,Python, нейронные сети, а также печальная правда о производительности CPU на хостинге.

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

DevConf::Storage — отдай голос за свою любимую базу данных до 31 мая

Время на прочтение3 мин
Количество просмотров3.9K
Большая конкуренция наблюдается за выбор базы данных в секции Storage программы DevConf 2016 — должны остаться только лучшие и интересные доклады.

Голосование продлится до 31 мая, сформируем программу вместе!

Представляем вашему вниманию 11 кандидатов на участие:

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

Мастер-мастер репликация в Tarantool
Konstantin Osipov
Расскажу как устроена и как пользоваться мастер-мастер репликацией в Tarantool:
  • инициализация кластера
  • добавление и удаление узлов
  • разрешение конфликтов
  • восстановление после аварии
  • мониторинг состояния.
Вместе посмотрим на производительность.
Читать дальше →

Генерация классов из БД с помощью DataGrip

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

В этой небольшой заметке будет показано, как написать DataGrip расширение для генерации кода (в данном случае POCO (C#) классов) на основе таблиц из почти любой БД (SQL Server, Oracle, DB2, Sybase, MySQL, PostgreSQL, SQLite, Apache Derby, HyperSQL, H2).

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

Вклад авторов