Какие бывают архитектуры: Кратко о типах архитектур программного обеспечения, и какую из них выбрали мы для IaaS-провайдера / Хабр

Виды популярных архитектур процессоров

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

С программной точки зрения архитектура процессора — это совместимость с определённым набором команд (Intel x86), их структуры (система адресации, набор регистров) и способа исполнения (счётчик команд).

Говоря простым языком, это способность программы, собранной для архитектуры x86, работать практически на любой x86-совместимой системе. При этом такая программа не будет работать, например, на ARM системе.

С аппаратной точки зрения архитектура процессора — это некий набор свойств и качеств, присущий целому семейству процессоров (Skylake – процессоры Intel Core 5 и 6 поколений).

Если тема кажется сложной, можно начать со статьи о том, чем CPU отличается от GPU.

Виды архитектур

В этой статье мы рассмотрим самые распространенные и актуальные архитектуры с программной точки зрения, кроме узкоспециализированных (графических, математических, тензорных).

CISC

CISC (англ. Complex Instruction Set Computer — «компьютер с полным набором команд») — тип процессорной архитектуры, в первую очередь, с нефиксированной длиной команд, а также с кодированием арифметических действий в одной команде и небольшим числом регистров, многие из которых выполняют строго определенную функцию.

Самый яркий пример CISC архитектуры — это x86 (он же IA-32) и x86_64 (он же AMD64).

В CISC процессорах одна команда может быть заменена ей аналогичной, либо группой команд, выполняющих ту же функцию. Отсюда вытекают плюсы и минусы архитектуры: высокая производительность благодаря тому, что несколько команд могут быть заменены одной аналогичной, но большая цена по сравнению с RISC процессорами из-за более сложной архитектуры, в которой многие команды сложнее раскодировать.

RISC

RISC (англ. Reduced Instruction Set Computer — «компьютер с сокращённым набором команд») — архитектура процессора, в котором быстродействие увеличивается за счёт упрощения инструкций: их декодирование становится более простым, а время выполнения — меньшим. Первые RISC-процессоры не имели даже инструкций умножения и деления и не поддерживали работу с числами с плавающей запятой.

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

Примеры RISC-архитектур: PowerPC, серия архитектур ARM (ARM7, ARM9, ARM11, Cortex).

В общем случае RISC быстрее CISC. Даже если системе RISC приходится выполнять 4 или 5 команд вместо одной, которую выполняет CISC, RISC все равно выигрывает в скорости, так как RISC-команды выполняются в 10 раз быстрее.

Отсюда возникает закономерный вопрос: почему многие всё ещё используют CISC, когда есть RISC? Всё дело в совместимости. x86_64 всё ещё лидер в desktop-сегменте только по историческим причинам. Так как старые программы работают только на x86, то и новые desktop-системы должны быть x86(_64), чтобы все старые программы и игры могли работать на новой машине.

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

MISC

MISC (англ. Minimal Instruction Set Computer — «компьютер с минимальным набором команд»).

Ещё более простая архитектура, используемая в первую очередь для ещё большего уменьшения итоговой цены и энергопотребления процессора. Используется в IoT-сегменте и недорогих компьютерах, например, роутерах.

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

VLIW

VLIW (англ. Very Long Instruction Word — «очень длинная машинная команда») — архитектура процессоров с несколькими вычислительными устройствами. Характеризуется тем, что одна инструкция процессора содержит несколько операций, которые должны выполняться параллельно.

По сути является архитектурой CISC со своим аналогом спекулятивного исполнения команд, только сама спекуляция выполняется во время компиляции, а не во время работы программы, из-за чего уязвимости Meltdown и Spectre невозможны для этих процессоров. Компиляторы для процессоров этой архитектуры сильно привязаны к конкретным процессорам. Например, в следующем поколении максимальная длина «очень длинной команды» может из условных 256 бит стать 512 бит, и тут приходится выбирать между увеличением производительности путём компиляции под новый процессор и обратной совместимостью со старым процессором. Опять же, Open Sourсe позволяет простой перекомпиляцией получить программу под конкретный процессор.

Примеры архитектуры: Intel Itanium, Эльбрус-3.

Виртуальные архитектуры

Но раз нельзя запустить программу одной архитектуры на другой, то откуда берутся магические JAR-файлы, которые можно запустить на любой машине? Это пример виртуальной JVM-архитектуры, которая, по сути, эмулируется на целевой реальной машине. Поэтому достаточно JVM-машины для целевой архитектуры для запуска на ней любой Java-программы. Другим примером виртуальной архитектуры является .NET CIL.

Из минусов виртуальных архитектур можно выделить меньшую производительность по сравнению с реальными архитектурами. Этот минус нивелируется с помощью JIT- и AOT-компиляции. Однако большим плюсом будет кроссплатформенность.

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

Иван Борисов

Архитектуры систем поддержки принятия решений

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

  1. Функциональная СППР.
  2. Независимые витрины данных.
  3. Двухуровневое хранилище данных.
  4. Трехуровневое хранилище данных.

Функциональная СППР

Функциональная СППР (Рисунок 1) является наиболее простой с архитектурной точки зрения. Такие системы часто встречаются на практике, в особенности в организациях с невысоким уровнем аналитической культуры и недостаточно развитой информационной инфраструктурой.

Рисунок 1. Функциональная СППР

Характерной чертой функциональной СППР является то, что анализ осуществляется с использованием данных из оперативных систем.
Преимущества:

  • Быстрое внедрение за счет отсутствия этапа перегрузки данных в специализированную систему
  • Минимальные затраты за счет использования одной платформы

Недостатки:

  • Единственный источник данных, потенциально сужающий круг вопросов, на которые может ответить система
  • Оперативные системы характеризуются очень низким качеством данных с точки зрения их роли в поддержке принятия стратегических решений. В силу отсутствия этапа очистки данных, данные функциональной СППР, как правило, обладают невысоким качеством
  • Большая нагрузка на оперативную систему. Сложные запросы могут привести к остановке работы оперативной системы, что весьма нежелательно

СППР с использованием независимых витрин данных

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

Рисунок 2. Независимые витрины данных

Преимущества:

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

Недостатки:

  • Данные хранятся многократно в различных витринах данных. Это приводит к дублированию данных и, как следствие, к увеличению расходов на хранение и потенциальным проблемам, связанным с необходимостью поддержания непротиворечивости данных
  • Потенциально очень сложный процесс наполнения витрин данных при большом количестве источников данных
  • Данные не консолидируются на уровне предприятия, таким образом, отсутствует единая картина бизнеса

СППР на основе двухуровневого хранилища данных

Двухуровневое хранилище данных (Рисунок 3) строится централизованно для предоставления информации в рамках компании. Для поддержки такой архитектуры необходима выделенная команда профессионалов в области хранилищ данных.

Рисунок 3. Двухуровневое хранилище данных

Это означает, что вся организация должна согласовать все определения и процессы преобразования данных.

Преимущества:

  • Данные хранятся в единственном экземпляре
  • Минимальные затраты на хранение данных
  • Отсутствуют проблемы, связанные с синхронизацией нескольких копий данных
  • Данные консолидируются на уровне предприятия, что позволяет иметь единую картину бизнеса

Недостатки:

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

СППР на основе трёхуровневого хранилища данных

Рисунок 4. Трёхуровневое хранилище данных

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

Преимущества:

  • Создание и наполнение витрин данных упрощено, поскольку наполнение происходит из единого стандартизованного надежного источника очищенных нормализованных данных
  • Витрины данных синхронизированы и совместимы с корпоративным представлением. Имеется корпоративная модель данных. Существует возможность сравнительно лёгкого расширения хранилища и добавления новых витрин данных
  • Гарантированная производительность

Недостатки:

  • Существует избыточность данных, ведущая к росту требований на хранение данных
  • Требуется согласованность с принятой архитектурой многих областей с потенциально различными требованиями (например, скорость внедрения иногда конкурирует с требованиями следовать архитектурному подходу)

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

Подробное описание преимуществ и недостатков каждого варианта архитектуры можно найти в литературе.

Литература

  1. Devlin, B., «Data warehouse: from architecture to implementation». Addison Wesley Longman, Inc. (1997). ISBN 0-201-96425-2.
  2. Спирли, Э., «Корпоративные хранилища данных. Планирование, разраотка и реализация. Т.1». Издательство: Вильямс (2001). ISBN 5-8459-0191-X.

Для удобства отслеживания новых публикаций на сайте рекомендую подписаться на рассылку или подписаться на канал RSS.

 

Если вы нашли в сети интересные ссылки на ресурсы по технологиям хранилищ данных, OLAP, CRM или data mining, и хотите поделиться ими с другими, присылайте их. Я с удовольствием размещу их на этом сайте.

Популярные страницы:

Советы разработчику хранилищ данных

OLAP

Моделирование

Книги

Книги на русском языке

Бесплатные книги

Производители OLAP

CRM

Производители CRM

Управление метаданными

Коллекция ссылок

Архитектура | Определение, методы, типы, школы, теория и факты

Foster and Partners: The Great Court

Смотреть все СМИ

Ключевые люди:
Ивонн Фаррелл Шелли Макнамара Балкришна Доши Леонардо да Винчи Микеланджело
Похожие темы:
Западная архитектура Латиноамериканская архитектура японская архитектура Китайская архитектура Египетское искусство и архитектура

Просмотреть весь соответствующий контент →

Резюме

Прочтите краткий обзор этой темы

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

Характеристиками, которые отличают произведение архитектуры от других построенных сооружений, являются (1) пригодность произведения для использования людьми в целом и его приспособляемость к конкретной человеческой деятельности, (2) стабильность и постоянство конструкции построение и (3) передача опыта и идей через его форму. Все эти условия должны быть соблюдены в архитектуре. Второе является константой, в то время как первое и третье различаются по относительной важности в зависимости от социальной функции зданий. Если функция в основном утилитарная, как на фабрике, общение имеет меньшее значение. Если функция в основном выразительная, как в монументальной гробнице, полезность не имеет большого значения. В некоторых зданиях, таких как церкви и ратуши, полезность и связь могут иметь одинаковое значение.

Настоящая статья посвящена прежде всего формам, элементам, методам и теории архитектуры. Для истории архитектуры в древности см. разделы о Древней Греции и Риме в западной архитектуре; а также анатолийское искусство и архитектура; арабское искусство и архитектура; Египетское искусство и архитектура; иранское искусство и архитектура; месопотамское искусство и архитектура; и сирийско-палестинское искусство и архитектура. Для более поздних исторических и региональных трактовок архитектуры см. Африканская архитектура; китайская архитектура; японская архитектура; корейская архитектура; Океаническое искусство и архитектура; западная архитектура; Среднеазиатское искусство; исламское искусство; искусство Южной Азии; и искусства Юго-Восточной Азии. Для обсуждения места архитектуры и архитектурной теории в сфере искусства см. эстетика. Родственные формы художественного самовыражения: см. г.; дизайн интерьера; и городское планирование.

Типы архитектуры устанавливаются не архитекторами, а обществом в соответствии с потребностями его различных институтов. Общество ставит цели и поручает архитектору найти средства их достижения. Этот раздел статьи посвящен архитектурной типологии, роли общества в определении видов архитектуры и планированию — роли архитектора в адаптации проектов к конкретным целям и к общим физическим потребностям людей.

Архитектура | Определение, методы, типы, школы, теория и факты

Foster and Partners: The Great Court

Смотреть все СМИ

Ключевые люди:
Ивонн Фаррелл Шелли Макнамара Балкришна Доши Леонардо да Винчи Микеланджело
Похожие темы:
Западная архитектура Латиноамериканская архитектура японская архитектура Китайская архитектура Египетское искусство и архитектура

Просмотреть весь соответствующий контент →

Резюме

Прочтите краткий обзор этой темы

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

Характеристиками, которые отличают произведение архитектуры от других построенных сооружений, являются (1) пригодность произведения для использования людьми в целом и его приспособляемость к конкретной человеческой деятельности, (2) стабильность и постоянство конструкции построение и (3) передача опыта и идей через его форму. Все эти условия должны быть соблюдены в архитектуре. Второе является константой, в то время как первое и третье различаются по относительной важности в зависимости от социальной функции зданий. Если функция в основном утилитарная, как на фабрике, общение имеет меньшее значение. Если функция в основном выразительная, как в монументальной гробнице, полезность не имеет большого значения. В некоторых зданиях, таких как церкви и ратуши, полезность и связь могут иметь одинаковое значение.

Настоящая статья посвящена прежде всего формам, элементам, методам и теории архитектуры. Для истории архитектуры в древности см. разделы о Древней Греции и Риме в западной архитектуре; а также анатолийское искусство и архитектура; арабское искусство и архитектура; Египетское искусство и архитектура; иранское искусство и архитектура; месопотамское искусство и архитектура; и сирийско-палестинское искусство и архитектура. Для более поздних исторических и региональных трактовок архитектуры см. Африканская архитектура; китайская архитектура; японская архитектура; корейская архитектура; Океаническое искусство и архитектура; западная архитектура; Среднеазиатское искусство; исламское искусство; искусство Южной Азии; и искусства Юго-Восточной Азии.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *