Читать дальше →
auth @auth
User
Многомерные кубы, OLAP и MDX
5 min
120K
Не секрет, что за тот небольшой промежуток времени развития баз данных, электронного учета и онлайн систем, самих данных накопилось очень много. Теперь же интерес также представляет полноценный анализ архивов, а возможно и попытка прогнозирования ситуаций для подобных моделей в будущем.
С другой стороны, большие компании даже за несколько лет, месяцев или даже недель могут накапливать настолько большие массивы данных, что даже их элементарный анализ требует неординарных подходов и жестких аппаратных требований. Такими могут быть системы обработки банковских транзакций, биржевые агенты, телефонные операторы и т.д.
Думаю, всем хорошо известны 2 разных подхода построения дизайна баз данных: OLTP и OLAP. Первый подход (Online Transaction Processing — обработка транзакций в реальном времени) рассчитан на эффективный сбор данных в реальном времени, второй же (Online Analytical Processing – аналитическая обработка в реальном времени) нацелен именно на выборку и обработку данных максимально эффективным способом.
Давайте рассмотрим основные возможности современных OLAP кубов, и какие задачи они решают (за основу взяты Analysis Services 2005/2008):
- быстрый доступ к данным
- преагрегация
- иерархии
- работа с временем
- язык доступа к многомерным данным
- KPI (Key Performance Indicators)
- дата майнинг
- многоуровневое кэширование
- поддержка мультиязычности
+56
Краткий обзор движков таблиц MySQL
3 min
79KЦель этой статьи — дать краткий, очень сжатый обзор движков, для того, чтобы статьей можно было пользоваться при выборе движка на этапе проектирования \ создания \ оптимизации таблицы. Предполагается, что читатель знает суть вопроса по крайней мере поверхностно и способен сам отыскать всю дополнительную информацию (вопросы в комментах можно задавать всегда :) )
+93
Webkit объявляет о поддержке трёхмерных CSS-преобразований
1 min
1KTranslation
Саймон Фрейзер (Simon Fraser) объявляет о поддержке трёхмерных CSS-преобразований на Mac OSX Leopard в последних еженощных сборках Webkit.
Если у вас запущена недавняя ночная сборка Webkit (скачать можно вон там) на Mac OSX Leopard, тогда вам следует глянуть на этот наглядный пример; в противном случае скриншот ниже обеспечивает предпросмотр того, чего можно ожидать.
![[Webkit - CSS Transforms Demonstration]](https://habrastorage.org/getpro/habr/post_images/d1f/80c/a95/d1f80ca9598534f2e7dd1da68cc18c6d.png)
Целиком статью вы можете прочесть во блоге Webkit.
Примечание переводчика: сама по себе трёхмерность Webkit для нас не новость, она ужé обсуждалась («3D CSS», например), однако во блоге Webkit обнаруживаются небезынтересные простые примеры и исходные коды их.
Если у вас запущена недавняя ночная сборка Webkit (скачать можно вон там) на Mac OSX Leopard, тогда вам следует глянуть на этот наглядный пример; в противном случае скриншот ниже обеспечивает предпросмотр того, чего можно ожидать.
![[Webkit - CSS Transforms Demonstration]](https://habrastorage.org/getpro/habr/post_images/d1f/80c/a95/d1f80ca9598534f2e7dd1da68cc18c6d.png)
Webkit — демонстрация CSS-преобразований
Целиком статью вы можете прочесть во блоге Webkit.
Примечание переводчика: сама по себе трёхмерность Webkit для нас не новость, она ужé обсуждалась («3D CSS», например), однако во блоге Webkit обнаруживаются небезынтересные простые примеры и исходные коды их.
+29
Простой способ провести CSS-debug
1 min
7.1KБолтаясь сегодня по интернету в поисках чего-нибудь интересненького, наткнулся на вот такой простой (и столь же замечательный в своей простоте) способ отыскать «неполадку» в верстке.

К сожалению, в браузерах от Microsoft версий 6 и 7 (в 8-й — все окей) свойство
CSS
* { outline: 2px dotted red; }
* * { outline: 2px dotted green; }
* * * { outline: 2px dotted orange; }
* * * * { outline: 2px dotted blue; }
* * * * * { outline: 1px solid red; }
* * * * * * { outline: 1px solid green; }
* * * * * * * { outline: 1px solid orange; }
* * * * * * * * { outline: 1px solid blue; }
Цвет, тип и размер обводки каждый может выбрать по вкусу.Поддержка браузерами:




К сожалению, в браузерах от Microsoft версий 6 и 7 (в 8-й — все окей) свойство
outline
не поддерживается. Для них, пожалуй, придется использовать border
.+89
Siege — утилита для нагрузочного тестирования веб-серверов
7 min
83KTranslation
Надеюсь, что данный материал будет кому-нибудь полезен.
Siege – это утилита для нагрузочного тестирования веб-серверов. Она была создана для того чтоб дать разработчикам возможность проверить ресурсоёмкость своего кода в условиях, максимально приближенных к реальным. Так же Siege может имитировать обращения к сайту сразу нескольких пользователей. Это позволяет держать сервер как бы «под осадой» долгое время. Количество запросов, произведённых при «осаде», рассчитывается из общего количества пользователей и количества их обращений к серверу. Например 20 пользователей, обратившись по 50 раз, создают в общей сложности 1000 запросов. Результат, выводимый программой после тестирования, включает в себя время затраченное на проверку, общее количество переданной информации ( включая заголовки ), среднее время ответа сервера, его пропускную способность и число запросов на которые пришёл ответ с кодом 200. Эти данные формируются и выдаются при каждой проверке. Подробно они описываются ниже. Siege имеет 3 основных модели работы – режим регрессионного тестирования, режим имитации Интернета и режим грубой силы. Программа считывает порцию ссылок из конфигурационного файла и обращается к ним по очереди ( режим регрессионного тестирования ) или случайно ( имитация интернета ). Или же пользователь может указать один единственный адрес к которому будут производиться все обращения – режим грубой силы.
UPD: спасибо за плюсы, перенес в тематический блог.
Siege – это утилита для нагрузочного тестирования веб-серверов. Она была создана для того чтоб дать разработчикам возможность проверить ресурсоёмкость своего кода в условиях, максимально приближенных к реальным. Так же Siege может имитировать обращения к сайту сразу нескольких пользователей. Это позволяет держать сервер как бы «под осадой» долгое время. Количество запросов, произведённых при «осаде», рассчитывается из общего количества пользователей и количества их обращений к серверу. Например 20 пользователей, обратившись по 50 раз, создают в общей сложности 1000 запросов. Результат, выводимый программой после тестирования, включает в себя время затраченное на проверку, общее количество переданной информации ( включая заголовки ), среднее время ответа сервера, его пропускную способность и число запросов на которые пришёл ответ с кодом 200. Эти данные формируются и выдаются при каждой проверке. Подробно они описываются ниже. Siege имеет 3 основных модели работы – режим регрессионного тестирования, режим имитации Интернета и режим грубой силы. Программа считывает порцию ссылок из конфигурационного файла и обращается к ним по очереди ( режим регрессионного тестирования ) или случайно ( имитация интернета ). Или же пользователь может указать один единственный адрес к которому будут производиться все обращения – режим грубой силы.
UPD: спасибо за плюсы, перенес в тематический блог.
+72
cogear — релиз 1.0
2 min
947Доброго времени суток, %username%.
В начале лета был опубликован анонс системы управления сайтами cogear.
В начале лета был опубликован анонс системы управления сайтами cogear.
Особенности движка:
- Работает на фреймворке CodeIgniter.
- Модульная архитектура. Установка/удаление модулей в один клик.
- Широкий спектр применения системы. Дистрибутив предоставляет возможность создать сообщество с многопользовательскими блогами, но благодаря расширяемой архитектуре возможностей трансформации движка существует великое множество.
- Гибкая система хуков. Позволяет модифицировать любые контроллеры и модели, не затрагивая их код.
- Открытый исходный код.
- Интернационализация.
- Автоматическая загрузка классов/моделей.
- Оптимизация скорости загрузки (объединение файлов CSS и JavaScript).
- Кеширование с поддержкой тегов (работает с файловой системой и Memcached).
- Возможность подгружать стили и скрипты для определенных браузеров (прощай IE6).
- Собственный шаблонизатор, дающий возможность работать и с PHP-Native.
- Подробная документация, в том числе и в PDF.
+55
Лампа настроения!
2 min
38KЛампа настроения (mood lamp) является RGB лампой, которая меняет цвет в случайном порядке. Была зеленая, плавно стала голубой, потом фиолетовой… какого цвета она станет в следующий момент времени не знает никто)

Купить такую проблематично, сделаем ее сами!)

Купить такую проблематично, сделаем ее сами!)
+156
Чеклист запуска сайта
3 min
25K
Этот чеклист будет полезен всем, кто запускает сайты или следит за этим увлекательным процессом. Ничего не пропустите!
+112
Ускоряем запуск браузера FireFox
2 min
36KЕщё давно приметил, что мой любимый инструмент, запускается значительно шустрее после установки, чем после многомесячного, активного использования браузера. Заметил, но как распорядится этим знанием мыслей не было. И вот, только что наткнулся на полезную тему, где описано это узкое место, а также дан ещё один совет по ускорению запуска браузера.
И так узкое место при запуске это загрузка .sqlite, базы данных вашего профиля. При интенсивной работе с Фоксом, базы разрастаются, в них появляются «пустые места», ну и главный недостаток, файл базы данных становится сильно фрагментированными. Для решения подобной проблемы существует специальная команда «очистки», точнее операция пересоздаёт файл базы, но уже без пустых мест. Для этого нужно проделать следующее:
И так узкое место при запуске это загрузка .sqlite, базы данных вашего профиля. При интенсивной работе с Фоксом, базы разрастаются, в них появляются «пустые места», ну и главный недостаток, файл базы данных становится сильно фрагментированными. Для решения подобной проблемы существует специальная команда «очистки», точнее операция пересоздаёт файл базы, но уже без пустых мест. Для этого нужно проделать следующее:
+193
17 usability tips to make your CMS rock
11 min
1.9K
К вашему вниманию перевод статьи Патрика Кеннеди о том, какой должна быть удобная система управления контентом.
Более чем вероятно, что в вашей CMS будет множество проблем с юзабилити, если вы будете использовать ее в сыром виде. Участвуя в проектах, в которых на меня было возложено внедрение таких систем — систем управления веб-сайтами, интранет-порталами и вики, я заметил, что в их пользовательских интерфейсах есть ряд ключевых областей, требующих исправления с точки зрения удобства использования.
+41
Очистка поля типа file
1 min
30Kвот такой странный, но ДЕЙСТВУЮЩИЙ способ :)
пример работы — designformasters.info/lab/clear-file-input/index.html (спасибо Jenek )
function clearFileInputField(Id) {
document.getElementById(Id).innerHTML = document.getElementById(Id).innerHTML;
}
* This source code was highlighted with Source Code Highlighter.
пример работы — designformasters.info/lab/clear-file-input/index.html (спасибо Jenek )
+60
Нужны ли «приватные» свойства объектов в Javascript?
4 min
4.9KВ последнее время во многих статьях (на Хабре и не только) я часто вижу примеры эмуляции приватных свойств объектов в JS через замыкания. Авторы обычно объясняют это своим желанием использовать такой механизм ООП, как инкапсуляция, и тем самым гарантировать работу с объектом исключительно посредством его методов, не затрагивая напрямую свойства.
В этой статье я предлагаю объективно рассмотреть достоинства и недостатки такого подхода, чтобы каждый мог для себя решить, стоит ли его использовать или нет.
В этой статье я предлагаю объективно рассмотреть достоинства и недостатки такого подхода, чтобы каждый мог для себя решить, стоит ли его использовать или нет.
+30
Поддержка HTML 5 Networking Events
2 min
1.6K
+24
Непонимание разметки. Комикс про XHTML 2 и HTML5
1 min
1.9KTranslation

С выходом HTML 5 и анонсом W3С о прекращении разработки XHTML 2 в конце 2009 года начались активные дебаты по поводу будущей «правильной разметки». XHTML 1.0, XHTML 2, HTML 4, HTML 5 и XHTML 5 — за всем этим тяжело уследить.
Теперь, когда XHTML 2 перестал маячить на горизонте, какой синтаксис выбрать? Остаться на XHTML 1.0, или двинуться вперед на HTML 5? А может, вернуться к старому доброму HTML 4? Этот комикс немного все проясняет.
+90
Кешируем блоки HTML при помощи nginx
3 min
7.2KНе секрет, что пользователи любят, когда контент на сайте обновляется чаще, чем раз в год. Эту любовь пользователей к динамическим страничкам разделяют и поисковики. Google, например, умеет определять наличие обновляющихся блоков на страничке и добавляет ей немного кармы (читай, PR).
Однако динамический контент довольно плохо сочетается с большими нагрузками. Для веб-сервера, отдача статической странички — намного более простая задача, чем запуск кода, который сгенерит эту страничку динамически. В некоторых случаях может выручить прегенерация всех возможных вариантов странички, но это не спасёт, если их слишком много, или страница обновляется слишком часто.
Однако динамический контент довольно плохо сочетается с большими нагрузками. Для веб-сервера, отдача статической странички — намного более простая задача, чем запуск кода, который сгенерит эту страничку динамически. В некоторых случаях может выручить прегенерация всех возможных вариантов странички, но это не спасёт, если их слишком много, или страница обновляется слишком часто.
+79
AvisoSMS
2 min
1.1KЗдравствуйте, хабралюди!
Позвольте представить вашему вниманию стартап AvisoSMS. Подключившись к этому сервису, вы сможете интегрировать в свои проекты отправку sms-сообщений, будь то интернет-магазин, биллинг, форум или что-то другое. Можно делать рассылку, импортировав CSV или просто отправить смску из личного кабинета.

+35
Делаем красивый список с GroupingStore/View и ExtJS
11 min
6.2K
+25
Анимированные меню на jQuery
6 min
5.5KTranslation

Смотрим демо
+126
Поиск нечетких дубликатов. Алгоритм шинглов для веб-документов
4 min
45KРанее я показал элементарную реализацию алгоритма шинглов, позволяющую определять, являются ли два документа почти дубликатами или нет. В этот раз я поясню реализацию алгоритма, описанную Зеленковым Ю. Г. и Сегаловичем И.В. в публикации «Сравнительный анализ методов определения нечетких дубликатов для Web-документов».
Этим я начинаю серию из трех теоретических статей, в которых постараюсь доступным языком описать принцип алгоритмов шинглов, супершинглов и мегашинглов для сравнение веб-документов.
Этим я начинаю серию из трех теоретических статей, в которых постараюсь доступным языком описать принцип алгоритмов шинглов, супершинглов и мегашинглов для сравнение веб-документов.
+51
Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity