Как стать автором
Обновить
61.05

SQL *

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

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

LogParser — привычный взгляд на непривычные вещи

Время на прочтение5 мин
Количество просмотров56K
Когда я в очередной раз использовал LogParser, то чтобы проникнуться и чужим опытом, ввел его название в поиск на Хабре. Как результат — сообщение «Удивительно, но поиск не дал результатов». Вот уж воистину удивительно, когда столь интересный инструмент обойден вниманием. Пришла пора восполнить этот пробел. Итак, встречайте LogParser. Маленькая, но чертовски полезная утилита для любителей SQL.

Из названия инструмента, казалось бы, очень непросто понять, что он делает в разделе SQL. А правда заключается в том, что он такой же LogParser, как и ChartGenerator. В то смысле, что он справляется с обоими задачами с одинаковыми успехом. В целом я бы его охарактеризовал как SQL-процессор гетерогенных данных. Концепция работы в общем такова, что он берет данные из некоторого формата и преобразует их в табличный вид (собственно говоря, только на этом этапе и выполняется иногда парсинг). Затем, посредством выполнения над этими табличными данными некоторого SQL-запроса формирует таблицу с результатом и сохраняет ее опять же в некотором формате. Если коротко, то цепочка выглядит как подготовка входных данных->SQL-процессинг->генерация выходных данных.
Читать дальше →
Всего голосов 56: ↑46 и ↓10+36
Комментарии17

Оптимизация хранимых процедур в SQL Server

Время на прочтение3 мин
Количество просмотров40K
Доброго дня, хабрачеловек. Сегодня я бы хотел обсудить с вами тему хранимых процедур в SQL Server 2000-2005. В последнее время их написание занимало львиную долю моего времени на работе и чего уж тут скрывать – по окончанию работы с этим делом осталось достаточно информации, которой с удовольствием поделюсь с тобой %пользовательимя%.
Знания, которыми я собираюсь поделиться, к сожалению,(или к счастью) не добыты мной эмперически, а являются, в большей степени, вольным переводом некоторых статей из буржуйских интернетов.
Итак, как можно понять из названия речь пойдет об оптимизации. Сразу оговорюсь, что все действия, которые я сейчас буду описывать, действительно дают существенный(некоторые больший, некоторые меньший) прирост производительности.
Данная статья не претендует на полное раскрытие темы оптимизации, скорее это собрание практик, которые я применяю в своей работе и могу ручаться за их эффективность. Поехали!
Читать дальше →
Всего голосов 20: ↑16 и ↓4+12
Комментарии21

Новая версия C#-SQLite

Время на прочтение1 мин
Количество просмотров8.6K
C#-SQLite — это независимый от SQLite.org opensource-проект, который представляет собой полный порт SQLite на управляемый код C#. В итоге, C#-SQLite работая в .NET-окружении может встраиваться в приложения Silverlight и применяться в браузерах на стороне клиента.

Новая версия C#-SQLite в очередной раз приносит улучшения производительности.

image

Для управляемого кода совсем неплохо. В одном тесте оптимизация позволила даже превзойти SQLite в производительности. На странице измерения производительности проекта можно скачать тест и ознакомиться с прогрессом в разработке проекта: прогресс достигнутый в последних сборках, по сравнению с первой версией, очень радует.
Всего голосов 17: ↑11 и ↓6+5
Комментарии7

Вышел SQL Server 2008 R2 November CTP!

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

На мероприятии PASS Summit 2009, Тед Каммерт (Ted Kummert) анонсировал о скором появлении ноябрьской версии SQL Server 2008 R2 CTP. И сегодня мы рады сообщить, что November SQL Server 2008 R2 CTP доступен сегодня для загрузки подписчикам MSDN и TechNet. Все остальные получат доступ к November SQL Server 2008 R2 CTP 11 ноября.

Вы можете перейти на www.microsoft.com/sqlserver/2008/en/us/R2.aspx, чтобы получить больше информации.

читать далее описание нововведений в этом CTP
Всего голосов 15: ↑9 и ↓6+3
Комментарии1

Истории

DbOctopus — SQL редактор с поддержкой интелектуального завершения кода

Время на прочтение2 мин
Количество просмотров3.1K
image Как-то в поисках бесплатного редактора для работы с SQL Server'ом наткнулся я на неплохую с моей точки зрения программу DBOctopus. Проект не так давно появился на свет, поэтому я не ожидал увидеть нечто сверхъестественное. Но надо сказать, я был приятно удивлен. Конечно многого еще не хватает, кое-что неудобно, но из плюсов значительных для меня могу отметить упомянутое в теме интелектуальное завершение кода. Посмотреть как это реализовано в программе. Надо сказать, что даже в SQL Server Management Studio 2005 от известной всем Майкрософт нет такого функционала. Возможен экспорт результатов выборки в такие тектовые форматы как xml, html, Excel, pdf и тектовый формат. Порадовал удобный экспорт в Excel. Программа очень неплохо оформляет результат в конечном файле xls с заголовками колонок.
Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии27

Работаем с SQLite в AIR приложениях

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


Здравствуйте ценители (и не только) Flash, Flex и AIR.

Сегодня я расскажу как работать с локальной базой данных (SQLite) в AIR приложениях.

Для работы нам понадобится Flex Builder, какой-нибудь, редактор SQLite (я использую приложение для FireFox SQLite Manager) и немного терпения.

Подробности под катом...
Всего голосов 34: ↑29 и ↓5+24
Комментарии46

Создание документации для базы данных MS SQL

Время на прочтение2 мин
Количество просмотров28K
Предлагаю вашему вниманию небольшой проект для разработчика баз данных. Начиналось это как изучение возможностей построения отчетов для SQL Server Management Studio, а закончилось как:
Database Documentation Reports, адрес проекта: http://DbDocReports.CodePlex.com.

Database Objects Report
Это набор отчетов для MS SQL Management Studio и MS SQL Reporting Services для создания документации базы данных с использованием описаний из Extended Properties. Отчеты содержат детальную информацию об объектах базы данных, таких как таблицы, представления и хранимые процедуры.

Поддерживается SQL Server Management Studio 2005/2008 и SQL Server Reporting Services 2005/2008. Использование движка отчетов позволяет с легкостью экспортировать полученные отчеты в Excel, Word, PDF и др. форматы.
Читать дальше →
Всего голосов 42: ↑33 и ↓9+24
Комментарии10

Баг при установке MS SQL Server 2008

Время на прочтение2 мин
Количество просмотров6K
Возникла на работе потребность поставить SQL Сервер. Нуу думаю, что там, вот возьму и прям поставлю, ибо ни с 2000-м ни с 2005-м проблем при установке никогда не было. Ага! Не тут-то было! Был обнаружен один замечательный баг, с которым я очень долго боролся и все-таки победил. Проблема состоит в том, что при установке сервера, нельзя включить смешанный режим аутентификации.
О том как я это поборол читайте под хабракатом.
Читать дальше →
Всего голосов 11: ↑5 и ↓6-1
Комментарии7

Используем SQL Server Dynamic Management Views and Functions (DMV and DMF)

Время на прочтение6 мин
Количество просмотров16K
MS SQL Dynamic Management Views and Functions (DMV and DMF)
Microsoft SQL 2005/2008 предоставляет доступ к динамическим административным представлениям и функциям (Dynamic Management Views and Functions, DMV and DMF). Эти данные мы можем использовать для диагностики проблем и оптимизации производительности баз данных.
Вот неполный перечень доступной информации:
  • Причины задержек выполнения запросов.
  • Работа с индексами (отсутствующие, неиспользуемые, требующие больше всех операций ввода/вывода, часто используемые).
  • Запросы с высокими издержками на ввод-вывод, с высоким использованием процессора.
  • Запросы, выполняющиеся чаще всего.
  • Запросы, страдающие от блокировок.
Полное описание всех функций можно найти в MSDN — Динамические административные представления и функции (Transact-SQL). Для тех, кто еще не сталкивался с запросами к DMV – рекомендую ознакомиться со статьей из журнала MSDN за январь 2008-ого года: "Открытие скрытых данных для оптимизации производительности приложений". Она довольно обширна, содержит общую информацию и большое количество готовых часто используемых запросов к DMV.
Далее, я хочу рассказать о том, как можно сохранять и анализировать данные запросов к DMV.
Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии4

«Достаем» OLAP куб (ADOMD.NET)

Время на прочтение4 мин
Количество просмотров30K
adomd
Итак, продолжаем осваивать внутренности OLAP кубов (предыдущие статьи на эту тему: 1, 2, 3). На повестке дня актуальный вопрос: «А как можно достать OLAP куб программно?». Понимаю – теория-теорией, но если данные нельзя (или очень сложно) получать из кода, то грош цена таким технологиям. К счастью, здесь все очень просто – знаете ADO.NET? Ну, так это то же самое, только называется ADOMD.NET.
Как же так, скажите вы – еще одна библиотека, которую нужно изучать?! Вообщем-то, можно конечно и через OLEDB «доставать» куб (как-нибудь напишу, как это делать), но тогда теряется вся специфика многомерности, а сама библиотека ADOMD.NET достаточно простая, что я сейчас и покажу.
Итак, приступим.
Читать дальше →
Всего голосов 26: ↑22 и ↓4+18
Комментарии6

Создаем OLAP куб. Часть 2

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

Итак, продолжаем создавать куб.
Напомню, что в предыдущей статье, мы создавали Data Warehouse для хранения голосов хабра-пользователей за хабра-топики. Для тех, кто хочет начать сразу создавать куб, я выложил скрипт, который создает и наполняет хранилище (на моей машине скрипт занял 10 минут и нагенерил 1866268 хабра-голосов).
Для того, чтобы создать OLAP куб, нам понадобится:
  • SQL Server, на котором хранится наш HabraDW (подойдет любой);
  • Microsoft SQL Server, с запущенными Analysis Services (2005/2008);
  • Business Intelligence Studio, которая входит в пакет клиентских приложений для Microsoft SQL Server-а, и интегрируется с Visual Studio, если она у вас установлена (2005/2008);
Читать дальше →
Всего голосов 56: ↑48 и ↓8+40
Комментарии34

Создаем OLAP куб. Часть 1

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

Продолжая тематику Многомерные кубы, OLAP и MDX и olap для маленькой компании, традиционно, предлагаю начать с простенького «Hello World» куба, который будет анализировать процессы и тенденции голосований на Хабре.

Итак, давайте попробуем создать свою первую OLAP систему.
Но, прежде чем, потирая руки, запускать Business Intelligence Studio, предлагаю вначале создать хранилище данных хабра-голосов, так называемый Data Warehouse.
Зачем? Причин в этом несколько:
  • сама суть Data Warehouse-а хранить «очищенные» данные, готовые для анализа, поэтому даже его изначальная структура может сильно отличаться от структуры нашей хабра-OLTP базы данных
  • в HabraDW (так мы его назовем) мы вынесем только ту информацию, которая нам нужна будет для анализа, ничего лишнего
  • к Data Warehouse не накладываются требования нормализации. Даже наоборот, денормализировав некоторые данные можно добиться более понятной схемы для построения куба, а также скорости загрузки данных в куб
Читать дальше →
Всего голосов 29: ↑29 и ↓0+29
Комментарии21

olap для маленькой компании

Время на прочтение4 мин
Количество просмотров50K
В посте Многомерные кубы, OLAP и MDX Vitko написал: «тема очень интересная и с каждым днем становится все более актуальной». К сожалению, это заклинание произносится уже очень давно (по крайней мере я его слышу с 2004 года ), но olap проектов до сих пор очень мало. Возможно, потому что традиционно считается, что всё, что связанно с olap нужно только для крупных компаний с большими объемами накопленных данных и стоит очень дорого. Но это не совсем так. Я хочу рассказать о проекте, который внедрен в одной относительно небольшой компании.
Читать дальше →
Всего голосов 71: ↑69 и ↓2+67
Комментарии60

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

AdIndex City Conference 2024
Дата26 июня
Время09:30
Место
Москва
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область

Многомерные кубы, OLAP и MDX

Время на прочтение5 мин
Количество просмотров118K
OLAP Довольно давно являюсь обитателем Хабра, но так и не доводилось читать статьи на тему многомерных кубов, OLAP и MDX, хотя тема очень интересная и с каждым днем становится все более актуальной.
Не секрет, что за тот небольшой промежуток времени развития баз данных, электронного учета и онлайн систем, самих данных накопилось очень много. Теперь же интерес также представляет полноценный анализ архивов, а возможно и попытка прогнозирования ситуаций для подобных моделей в будущем.
С другой стороны, большие компании даже за несколько лет, месяцев или даже недель могут накапливать настолько большие массивы данных, что даже их элементарный анализ требует неординарных подходов и жестких аппаратных требований. Такими могут быть системы обработки банковских транзакций, биржевые агенты, телефонные операторы и т.д.
Думаю, всем хорошо известны 2 разных подхода построения дизайна баз данных: OLTP и OLAP. Первый подход (Online Transaction Processing — обработка транзакций в реальном времени) рассчитан на эффективный сбор данных в реальном времени, второй же (Online Analytical Processing – аналитическая обработка в реальном времени) нацелен именно на выборку и обработку данных максимально эффективным способом.

Давайте рассмотрим основные возможности современных OLAP кубов, и какие задачи они решают (за основу взяты Analysis Services 2005/2008):
  • быстрый доступ к данным
  • преагрегация
  • иерархии
  • работа с временем
  • язык доступа к многомерным данным
  • KPI (Key Performance Indicators)
  • дата майнинг
  • многоуровневое кэширование
  • поддержка мультиязычности

Читать дальше →
Всего голосов 62: ↑59 и ↓3+56
Комментарии34

Embedded InnoDB новый движок Баз данных

Время на прочтение4 мин
Количество просмотров2.9K
Oracle выпустила Embedded InnoDB.
 
Совсем недавно «красный гигант» выпустили Embedded InnoDB, под довольно демократичной лицензией GPLv2, не Апатч 2.0 но тоже сносно.
В данный момент данная БД доступна только для 32-х битных версии Windows и Linux.
Качать и ставить я бы пока не рискнул, сначала хочется осмотреться. Идеться в доку и читается. Так как сегодня на работе мне делать все равно нечего сделаю небольшой обзор-перевод.
Читать дальше →
Всего голосов 12: ↑9 и ↓3+6
Комментарии13

SQLite и полноценный UNICODE

Время на прочтение2 мин
Количество просмотров31K
Наверно многим известна embed база данных SQLite. SQLite полностью поддерживает кодировки UTF-8 и UTF-16. Но есть один нюанс, для строковых и текстовых полей, символы которых выходят за пределы ASCII таблицы, не работает нечувствительный к регистру LIKE и ORDER BY.
Например:
sqlite> SELECT "ы" LIKE "Ы";
0
в то время как
sqlite> SELECT "s" LIKE "S";
1
Давайте разберемся как же это исправить.
Читать дальше →
Всего голосов 23: ↑23 и ↓0+23
Комментарии22

Слияние Oracle и Sun, перспективы

Время на прочтение4 мин
Количество просмотров2.1K
Работаю с технологиями Oracle уже более 5 лет. Но не имею никакого прямого отношении к данной корпорации, и все здесь написанное является моим личным мнением.
Хочу поделится своим виденьем что будет если Oracle купит Sun.
Почему я хочу посветить этому целый топик? не достаточно ли разговоров в комментариях.
Нет, я считаю, что судьба этой сделки очень сильно изменит IT, уже в ближайшее время.
Судите сами в связи с последними приобретениями «красный гигант» может предложить полный комплекс приложений необходимый для успешного ведение бизнеса: это и системы документооборота, почты; ERP, BI аналитику и даже биллинговую систему.
Они имеют вне всяких сомнений мощнейшую DB, с самым большим списком опций, включая и полноценный OLAP, в 11g.
Плюс они выпускают собственный framework для разработки Oracle ADF.
А теперь еще и получают практически монополию на технологии Java, плюс hardware бизнесс Sun.
Но я отвлекся, вернемся к теме топика
Читать дальше →
Всего голосов 78: ↑65 и ↓13+52
Комментарии90

SQL Server 2008 на русском языке

Время на прочтение2 мин
Количество просмотров3.4K
Компания Microsoft наконец-то объявила о выпуске локализованной версии SQL Server 2008. В прайсе система появится с 1 января 2009 года, а скачать пробную версию можно уже сейчас.

Русский SQL Server 2008 тесно интегрирован с впервые локализованным средством разработки Visual Studio, давая возможность разработчикам БД работать в единой среде разработки приложений на родном языке.

Для опытного разработчика переход на русскоязычную версию, если он привык к англоязычной, конечно, не вызовет ничего кроме раздражения. Более того, в процессе привыкания у него наверняка упадёт производительность труда, несмотря на гордые заявления представителей Microsoft, что «опыт локализации других специализированных решений, например, операционной системы Windows Server 2008, показал, что производительность работы с продуктом на родном языке намного повышается». Очевидно, что это справедливо только для начинающих программистов, которые впервые в жизни видят интерфейс СУБД и Visual Studio.
Читать дальше →
Всего голосов 6: ↑3 и ↓30
Комментарии6

Разворачивание широкой таблицы в столбец (EAV pattern)

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

Задача


Есть сущность, которая характеризуется огромным и часто переменным числом параметров. Задача хранить эти сущности да еще и так чтоб поиск тоже можно было вести желательно еще и с построением индекса.
Читать дальше →
Всего голосов 42: ↑29 и ↓13+16
Комментарии65

Иерархические (рекурсивные) запросы

Время на прочтение10 мин
Количество просмотров514K
Дерево объектов

Чтобы понять рекурсию, сначала надо понять рекурсию. Возможно, поэтому рекурсивные запросы применяют так редко. Наверняка вы представляете что такое SQL-запрос, я расскажу, чем рекурсивные запросы отличаются от обычных. Тема получилась объемная, приготовьтесь к долгому чтению. В основном речь пойдет об Oracle, но упоминаются и другие СУБД.

Читать дальше →
Всего голосов 108: ↑103 и ↓5+98
Комментарии159

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