Обработка в памяти
Эта статья содержит контент, написанный как реклама . ( Ноябрь 2018 г. ) |
Этот термин используется для двух разных вещей:
- В информатике , обработка в памяти (PIM) — это компьютерная архитектура в которой операции с данными доступны непосредственно в памяти данных, а не должны быть сначала перенесены в регистры ЦП . [1] Это может улучшить энергопотребление и производительность перемещения данных между процессором и основной памятью.
- В разработке программного обеспечения обработка в памяти — это архитектура программного обеспечения , в которой база данных полностью хранится в оперативной памяти (ОЗУ) или флэш-памяти, так что обычный доступ, в частности операции чтения или запроса, не требует доступа к дисковому хранилищу . [2] Это может позволить ускорить операции с данными, такие как «объединения», а также ускорить составление отчетов и принятие решений в бизнесе. [3]
Чрезвычайно большие наборы данных могут быть разделены между взаимодействующими системами в виде сеток данных в памяти .
Аппаратное обеспечение (ПИМ)
[ редактировать ]PIM может быть реализован путем: [4]
- Обработка с использованием памяти (PuM)
- Добавление ограниченных возможностей обработки (например, блоков умножения с плавающей запятой, операций со строками 4 КБ, таких как копирование или нуль, побитовые операции с двумя строками) к обычным модулям памяти (например, модулям DIMM); или
- Добавление возможностей обработки к контроллерам памяти, чтобы данные, к которым осуществляется доступ, не нужно было пересылать в ЦП или влиять на кеш ЦП, а обрабатывались немедленно.
- Обработка рядом с памятью (PnM)
- Новые трехмерные структуры кремния со слоями памяти и слоями обработки.
Применение технологии in-memory в повседневной жизни
[ редактировать ]Методы обработки в памяти часто используются современными смартфонами и планшетами для повышения производительности приложений. Это может привести к ускорению загрузки приложений и более приятному пользовательскому опыту.
- Обработка в памяти может использоваться игровыми консолями, такими как PlayStation и Xbox, для повышения скорости игры. [5] [ не удалось пройти проверку ] Быстрый доступ к данным имеет решающее значение для обеспечения плавного игрового процесса.
- Некоторые носимые устройства, такие как умные часы и фитнес-трекеры, могут включать обработку в памяти для быстрой обработки данных датчиков и предоставления пользователям обратной связи в режиме реального времени. Некоторые распространенные гаджеты используют обработку в памяти для повышения производительности и скорости реагирования. [6]
- Обработка в памяти используется смарт-телевизорами для улучшения навигации по интерфейсу и доставки контента. Он используется в цифровых камерах для обработки изображений, фильтрации и эффектов в реальном времени. [7] Голосовые помощники и другие системы домашней автоматизации могут выиграть от более быстрого понимания и реагирования на заказы пользователей.
- Обработка в памяти также используется встроенными системами в устройствах и высококлассных цифровых камерах для эффективной обработки данных. Благодаря методам обработки в памяти некоторые устройства Интернета вещей отдают приоритет быстрой обработке данных и времени отклика. [8]
Программное обеспечение
[ редактировать ]Доступ к данным на основе диска
[ редактировать ]Структуры данных
[ редактировать ]При использовании дисковой технологии данные загружаются на жесткий диск компьютера в виде множества таблиц и многомерных структур, к которым выполняются запросы. Дисковые технологии часто представляют собой системы управления реляционными базами данных (СУБД), часто основанные на языке структурированных запросов ( SQL ), такие как SQL Server , MySQL , Oracle и многие другие. СУБД разработаны с учетом требований обработки транзакций . При использовании базы данных, которая поддерживает вставку и обновление, а также выполнение агрегирования, соединения (типичные для решений BI) обычно выполняются очень медленно. Еще одним недостатком является то, что SQL предназначен для эффективной выборки строк данных, в то время как запросы BI обычно включают выборку частичных строк данных, требующую тяжелых вычислений.
Для повышения производительности запросов многомерные базы данных или кубы OLAP могут быть созданы , также называемые многомерной онлайн-аналитической обработкой (MOLAP). Проектирование куба может оказаться сложным и длительным процессом, а изменение структуры куба для адаптации к динамически меняющимся потребностям бизнеса может оказаться обременительным. Кубы предварительно заполняются данными для ответа на конкретные запросы, и хотя они повышают производительность, они по-прежнему не оптимальны для ответа на все специальные запросы. [9]
Сотрудники информационных технологий (ИТ) могут тратить значительное время на разработку для оптимизации баз данных, построения индексов и агрегатов , проектирования кубов и звездообразных схем , моделирования данных и анализа запросов. [10]
Скорость обработки
[ редактировать ]Чтение данных с жесткого диска происходит намного медленнее (возможно, в сотни раз) по сравнению с чтением тех же данных из оперативной памяти. Производительность сильно снижается, особенно при анализе больших объемов данных. Хотя SQL является очень мощным инструментом, произвольные сложные запросы с дисковой реализацией занимают относительно много времени и часто приводят к снижению производительности обработки транзакций. Чтобы получить результаты в течение приемлемого времени отклика, многие хранилища данных были разработаны для предварительного расчета сводок и ответа только на конкретные запросы. Для повышения производительности необходимы оптимизированные алгоритмы агрегации.
Доступ к данным в памяти
[ редактировать ]Как при использовании базы данных в памяти, так и при использовании сетки данных вся информация изначально загружается в ОЗУ или флэш-память, а не на жесткие диски . При использовании сетки данных обработка происходит на три порядка быстрее, чем в реляционных базах данных, которые имеют расширенные функциональные возможности, такие как ACID , которые снижают производительность в качестве компенсации за дополнительную функциональность. Появление баз данных, ориентированных на столбцы , в которых схожая информация хранится вместе, позволяет хранить данные более эффективно и с большей степенью сжатия . Это позволяет хранить огромные объемы данных в одном физическом пространстве, уменьшая объем памяти, необходимый для выполнения запроса, и увеличивая скорость обработки. Многие пользователи и поставщики программного обеспечения интегрировали флэш-память в свои системы, чтобы обеспечить более экономичное масштабирование систем для более крупных наборов данных.
Пользователи запрашивают данные, загруженные в память системы, тем самым избегая замедления доступа к базе данных и узких мест в производительности . Это отличается от кэширования , очень широко используемого метода повышения производительности запросов, тем, что кэши представляют собой подмножества очень конкретных заранее определенных организованных данных. Благодаря инструментам, хранящимся в памяти, данные, доступные для анализа, могут быть такими же большими, как витрина данных или небольшое хранилище данных, которое полностью находится в памяти. К нему могут быстро получить доступ несколько одновременно работающих пользователей или приложений на детальном уровне, что открывает возможности для расширенной аналитики, масштабирования и увеличения скорости приложения. Теоретически улучшение скорости доступа к данным составляет от 10 000 до 1 000 000 раз по сравнению с диском. [ нужна ссылка ] Это также сводит к минимуму необходимость настройки производительности ИТ-персоналом и обеспечивает более быстрое обслуживание конечных пользователей.
Преимущества технологии обработки в памяти
[ редактировать ]Определенные разработки в области компьютерных технологий и потребности бизнеса привели к увеличению относительных преимуществ технологии in-memory. [11]
- Согласно закону Мура , количество транзисторов на единицу площади удваивается примерно каждые два года. Это отражается на изменениях цены, производительности, упаковки и возможностей компонентов. Цена оперативной памяти и вычислительная мощность ЦП, в частности, за последние десятилетия улучшились. Обработка ЦП, память и дисковое хранилище подпадают под некоторые вариации этого закона. Кроме того, аппаратные инновации, такие как многоядерная архитектура , флэш-память NAND , параллельные серверы и увеличенные возможности обработки памяти, способствовали технической и экономической осуществимости подходов в памяти.
- В свою очередь, инновации в программном обеспечении, такие как базы данных, ориентированные на столбцы, методы сжатия и обработка сводных таблиц, позволяют создавать эффективные продукты, работающие в памяти. [12]
- Появление 64-битных операционных систем , которые позволяют получить доступ к гораздо большему объему оперативной памяти (до 100 ГБ и более), чем 2 или 4 ГБ, доступным в 32-битных системах . Предоставляя терабайты (1 ТБ = 1024 ГБ) пространства для хранения и анализа, 64-разрядные операционные системы делают обработку в памяти масштабируемой. Использование флэш-памяти позволяет более экономично масштабировать системы до многих терабайт.
- Увеличение объемов данных означает, что традиционные хранилища данных могут быть менее способны обрабатывать данные своевременно и точно. Процесс извлечения, преобразования и загрузки (ETL), который периодически обновляет дисковые хранилища данных операционными данными, может привести к задержкам и устаревшим данным. Обработка в памяти может обеспечить более быстрый доступ к терабайтам данных для улучшения отчетности в реальном времени.
- Обработка в памяти может быть доступна по более низкой цене по сравнению с обработкой на диске, и ее легче развертывать и обслуживать. По данным исследования Gartner, [13] развертывание традиционных инструментов BI может занять до 17 месяцев.
- Снижается энергопотребление и увеличивается пропускная способность за счет меньшей задержки доступа, большей пропускной способности памяти и аппаратного параллелизма. [14]
Применение в бизнесе
[ редактировать ]Ряд продуктов в памяти обеспечивает возможность подключения к существующим источникам данных и доступ к визуально насыщенным интерактивным информационным панелям. Это позволяет бизнес-аналитикам и конечным пользователям создавать собственные отчеты и запросы без особого обучения или опыта. Удобная навигация и возможность изменять запросы на лету приносят пользу многим пользователям. Поскольку эти информационные панели могут заполняться свежими данными, пользователи имеют доступ к данным в реальном времени и могут создавать отчеты в течение нескольких минут. Обработка в памяти может оказаться особенно полезной в центрах обработки вызовов и управлении складами.
При обработке в памяти исходная база данных запрашивается только один раз вместо доступа к базе данных каждый раз при выполнении запроса, что исключает повторяющуюся обработку и снижает нагрузку на серверы баз данных. Запланировав заполнение базы данных в памяти на ночь, серверы баз данных можно использовать для рабочих целей в часы пик.
Внедрение технологии in-memory
[ редактировать ]При большом количестве пользователей большой объем оперативной памяти для in-memory конфигурации необходим , что, в свою очередь, влияет на затраты на оборудование. Инвестиции, скорее всего, окажутся подходящими в ситуациях, когда скорость ответа на запросы имеет высокий приоритет, а также когда наблюдается значительный рост объема данных и увеличение спроса на средства отчетности; он все еще может оказаться нерентабельным, если информация не подвержена быстрым изменениям. Безопасность является еще одним соображением, поскольку инструменты в памяти предоставляют конечным пользователям огромные объемы данных. Производители советуют обеспечить доступ к данным только авторизованным пользователям.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Гоуз, С. (ноябрь 2019 г.). «Обработка в памяти: взгляд на рабочую нагрузку» (PDF) . Журнал исследований и разработок IBM . 63 (6): 3:1–19. дои : 10.1147/JRD.2019.2934048 . S2CID 202025511 .
- ^ Чжан, Хао; Ган Чен; Бенг Чин Оой; Киан-Ли Тан; Мэйхуэй Чжан (июль 2015 г.). «Управление и обработка больших данных в памяти: обзор» . Транзакции IEEE по знаниям и инженерии данных . 27 (7): 1920–1948. дои : 10.1109/TKDE.2015.2427795 .
- ^ Платтнер, Хассо; Зейер, Александр (2012). Управление данными в памяти: технологии и приложения . Springer Science & Business Media. ISBN 9783642295744 .
- ^ «Курс «Обработка в памяти»: Лекция 1: Исследование парадигмы PIM для систем будущего — весна 2022 г.» . Ютуб .
- ^ Пак, Кейт (27 июля 2023 г.). «Samsung сокращает производство чипов памяти и вместо этого сосредоточится на высококачественных чипах искусственного интеллекта» . ТехКранч . Проверено 5 декабря 2023 г.
- ^ Тан, Киан-Ли; Цай, Цинчао; Оой, Бенг Чин; Вонг, Венг-Фай; Яо, Чанг; Чжан, Хао (12 августа 2015 г.). «Базы данных в памяти: проблемы и возможности с точки зрения программного и аппаратного обеспечения» . Запись ACM SIGMOD . 44 (2): 35–40. дои : 10.1145/2814710.2814717 . ISSN 0163-5808 . S2CID 14238437 .
- ^ Фатемие, Сейед Эрфан; Решадинежад, Мохаммад Реза; Тахинежад, Нима (2022). «Приблизительные вычисления в памяти с использованием Memristive IMPLY Logic и ее применение для обработки изображений» . Международный симпозиум IEEE по схемам и системам (ISCAS) 2022 года . стр. 3115–3119. дои : 10.1109/ISCAS48785.2022.9937475 . ISBN 978-1-6654-8485-5 . S2CID 253462291 . Проверено 5 декабря 2023 г.
- ^ «Что такое обработка в памяти (PIM) и как она работает?» . Бизнес-аналитика . Проверено 5 декабря 2023 г.
- ^ Гилл, Джон (2007). «Изменение парадигмы бизнес-аналитики с помощью технологий баз данных в памяти» . Журнал бизнес-аналитики . 12 (2): 58–62. Архивировано из оригинала 24 сентября 2015 г.
- ^ Эрлс, А. (2011). Советы по оценке, развертыванию и управлению инструментами аналитики в памяти (PDF) . Таблица. Архивировано из оригинала (PDF) 25 апреля 2012 г.
- ^ «Аналитика в_памяти» . желтоперый. п. 6.
- ^ Котэ, Спаржан. «Вычисления в памяти в бизнес-аналитике» . Архивировано из оригинала 24 апреля 2011 года.
- ^ «Анализ опросов: почему внедрение BI и аналитики остается низким и как расширить их охват» . Гартнер . Проверено 5 декабря 2023 г.
- ^ Апчерч, Э.; Стерлинг, Т.; Брокман, Дж. (2004). «Анализ и моделирование компромиссов при проектировании усовершенствованной архитектуры PIM» . Материалы конференции ACM/IEEE SC2004 . Питтсбург, Пенсильвания, США: IEEE. п. 12. дои : 10.1109/SC.2004.11 . ISBN 978-0-7695-2153-4 . S2CID 9089044 .