Технология обработки данных
Этот термин используется для двух разных вещей:
- В информатике обработка в памяти (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] развертывание традиционных инструментов бизнес-аналитики может занять до 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. doi : 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 г.
- ^ "Аналитика In_memory" . желтоперый. п. 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.