Есть ли фреймворки для хранилищ данных?

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

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

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

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

Так где же лучше начать?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
15
0
4 402
7
Перейти к ответу Данный вопрос помечен как решенный

Ответы 7

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

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

Что вы используете в своем магазине Microsoft?

reconbot 02.10.2008 08:08
Ответ принят как подходящий

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

    ВикипедияСклад данныхСтатья

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

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

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

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

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

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

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

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

    BiMarketStateArticle

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

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

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

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

Книги Кимбалла по хранилищу данных, вероятно, являются одной из немногих книг, которые вам понадобятся.

Codewerks 02.10.2008 10:20

Это! У меня есть набор инструментов хранилища данных, и он потрясающий.

reconbot 14.10.2008 19:41

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

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

Ребята из Active Warehouse ссылаются на замечательную статью Аноти Иден, которая больше не работает, вот архив. web.archive.org/web/20070510141152/http://anthonyeden.com/20‌ 06 /…

reconbot 05.10.2008 20:22

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

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

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

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

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

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

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

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

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

Другие вопросы по теме