Существуют ли какие-либо структуры хранилища данных? - PullRequest
14 голосов
/ 01 октября 2008

У меня есть много данных mysql, из которых мне нужно генерировать отчеты. Это в основном исторические данные, поэтому они не будут сильно меняться, но они легко весят 20-30 гигабайт и, как ожидается, будут расти. В настоящее время у меня есть коллекция PHP-скриптов, которые будут выполнять сложные запросы и выводить файлы CSV и Excel. Я также использую phpMyAdmin с закладками запросов. Я вручную редактирую их, чтобы изменить параметры. Объем данных растет, и количество людей, которым необходим доступ к ним, также растет, поэтому я стараюсь улучшить эту ситуацию.

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

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

В основном я работаю фонарём, но я не зацикливаюсь на переключении языков или платформ. Мне просто нужно более надежное решение, так как мои единственные сценарии плохо масштабируются.

Так, где хорошее место, чтобы начать?

Ответы [ 7 ]

8 голосов
/ 01 октября 2008

Я расскажу несколько моментов о спектре {бюджет, функция полезности для бизнеса, временные рамки}. Для удобства давайте следуем концептуализации архитектуры, с которой вы связаны на

WikipediaDataWarehouseArticle

  • Уровень оперативной базы данных
    Исходные данные для хранилища данных - нормализовано для ведения данных только в одном месте

  • Уровень доступа к данным
    Преобразование исходных данных в уровень информационного доступа.
    Инструменты ETL для извлечения, преобразования и загрузки данных в хранилище попадают в этот уровень.

  • Информационный уровень доступа
    & bull; Структура данных, облегчающая отчетность
    Данные здесь не ведутся. Это просто отражение ваших исходных данных
    Следовательно, денормализованные структуры (содержащие дублированные, но систематически полученные данные)
    как правило, наиболее эффективны здесь
    & bull; Инструменты отчетности
    Как вы фактически разрешаете своим пользователям доступ к данным
    & bull; предварительно консервированные отчеты (простые)
    & bull; более динамичные методы доступа к слайсам и кубикам

Доступ к данным для составления отчетов и анализа, а также инструменты для составления отчетов и анализа данных.
попасть в этот слой. И различия Inmon-Kimball о методологии дизайна,
обсуждается позже в статье в Википедии, касаемо этого слоя.

  • Слой метаданных (облегчает автоматизацию, организацию и т. Д.)

Сверните свой собственный (младший)
За очень небольшую стоимость из своего кармана, просто признав необходимость денормализованных структур, можно купить те, которые не используют его, с некоторой эффективностью

Вступите в игру (требуются некоторые расходы)
Вам не нужно сразу использовать все функциональные возможности платформы.
IMO, однако, вы хотите быть на платформе, которая, как вы знаете, будет расти, и в высококонкурентной и консолидирующей среде BI, которая, по-видимому, является одним из четырех корпоративных мегапроизводителей (мое мнение)

  • Microsoft (платформа нашей фирмы из 110 сотрудников)
  • SAP
  • Oracle
  • IBM

BiMarketStateArticle

Моя фирма на данном этапе использует некоторые возможности ETL, предлагаемые службами интеграции SQL Server (SSIS), и некоторое альтернативное использование открытого исходного кода, но на практике требуется лицензия на продукт Talend на уровне доступа к данным, денормализованная структура отчетности (полностью реализованная в базовой базе данных SQL Server) и службы отчетов SQL Server (SSRS), позволяющие в значительной степени автоматизировать (в зависимости от ваших навыков) создание предварительно определенных отчетов. Обратите внимание, что «отчет» SSRS - это просто (масштабируемая) конфигурация / спецификация XML, которая отображается во время выполнения с помощью механизма SSRS. Такие варианты, как экспорт в файл Excel, являются простыми.

Серьезное обязательство (требуется значительная человеческая приверженность)
Обратите внимание, что нам еще предстоит использовать интеллектуальный анализ данных / динамическое срезание / нарезание кубиками возможности SQL Server Analysis Services. Мы работаем над этим, но теперь сосредоточены на улучшении качества очистки данных в «уровне доступа к данным».

Надеюсь, это поможет вам понять, с чего начать.

4 голосов
/ 20 сентября 2010

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

Наряду с такими инструментами, как Kalido и Wherescape RED (которые делают одно и то же разными способами), многие из платформ ETL теперь имеют хорошую встроенную поддержку для ослиной работы по реализации - компонентов SCD и т. Д. И отслеживания происхождения. 1003 *

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

4 голосов
/ 01 октября 2008

Я думаю, вы должны сначала проверить Кимбалла и Инмона и посмотреть, хотите ли вы подходить к вашему хранилищу данных особым образом. Кимбалл, в частности, создает очень хорошую основу для моделирования и строительства склада.

4 голосов
/ 01 октября 2008

Pentaho собрал довольно обширный набор продуктов. Продукты являются «бесплатными», но будьте готовы к обычным массовым продажам, как только вы предоставите свою идентификационную информацию.

У меня не было возможности действительно их растянуть, потому что мы магазин Microsoft от одного печального конца до другого.

2 голосов
/ 09 мая 2015

Лучший каркас, который вы можете получить в настоящее время, - это Якорное моделирование .
Он может выглядеть довольно сложным из-за его общей структуры и встроенной возможности архивировать данные.
Кроме того, техника моделирования сильно отличается от ERD.
Но вы в конечном итоге с SQL-кодом для генерации всех объектов БД, включая представления 3NF и:

  • вставка / обновление, обработанные триггерами
  • запрос любой точки / диапазона в истории
  • разработчики приложений не увидят базовую модель привязки 6NF.

Технология с открытым исходным кодом и на данный момент непобедима.

Если у вас возникнет вопрос AM, вы можете задать этот тег .

2 голосов
/ 01 октября 2008

Он давно не обновлялся, но есть хороший пакет Ruby для хранилищ данных / ETL, который называется ActiveWarehouse .

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

1 голос
/ 23 октября 2008

Kimball - более простой метод для хранилищ данных.

Мы используем Informatica для перемещения данных, но по умолчанию она не выполняет такие вещи, как индексирование.
Мне нравится идея Wherescape RED, как инструмента DW и использования связанных серверов MS SQL для устранения необходимости в инструменте ETL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...