Технология обработки данных
Этот термин используется в двух разных значениях:
- В информатике обработка данных в оперативной памяти (PIM) — это архитектура компьютера , в которой операции с данными доступны непосредственно в памяти данных, а не должны сначала передаваться в регистры ЦП . [1] Это может улучшить энергопотребление и производительность перемещения данных между процессором и основной памятью.
- В программной инженерии обработка в памяти представляет собой программную архитектуру , в которой база данных хранится полностью в оперативной памяти (ОЗУ) или флэш-памяти, так что обычные операции доступа, в частности операции чтения или запроса, не требуют доступа к дисковому хранилищу . [2] Это может обеспечить более быстрые операции с данными, такие как «объединения», а также более быструю отчетность и принятие решений в бизнесе. [3]
Очень большие наборы данных могут быть разделены между взаимодействующими системами в виде сеток данных в памяти .
Аппаратное обеспечение (PIM)
PIM может быть реализована следующим образом: [4]
- Обработка с использованием памяти (PuM)
- Добавление ограниченных возможностей обработки (например, блоков умножения с плавающей точкой, операций со строками размером 4 КБ, таких как копирование или обнуление, побитовых операций над двумя строками) к обычным модулям памяти (например, модулям DIMM); или
- Добавление возможностей обработки к контроллерам памяти, чтобы данные, к которым осуществляется доступ, не нужно было пересылать в ЦП или затрагивать кэш ЦП, а обрабатывались немедленно.
- Обработка около памяти (PnM)
- Новые трехмерные конфигурации кремния со слоями памяти и слоями обработки.
Применение технологии in-memory в повседневной жизни
Технологии обработки в памяти часто используются современными смартфонами и планшетами для повышения производительности приложений. Это может привести к более быстрой загрузке приложений и более приятному пользовательскому опыту.
- Обработка в памяти может использоваться игровыми консолями, такими как PlayStation и Xbox, для повышения скорости игры. [5] [ проверка не удалась ] Быстрый доступ к данным имеет решающее значение для обеспечения плавного игрового процесса.
- Некоторые носимые устройства, такие как умные часы и фитнес-трекеры, могут включать обработку в памяти для быстрой обработки данных датчиков и предоставления пользователям обратной связи в реальном времени. Несколько обычных гаджетов используют обработку в памяти для повышения производительности и отзывчивости. [6]
- Обработка в памяти используется смарт-телевизорами для улучшения навигации по интерфейсу и доставки контента. Она используется в цифровых камерах для обработки изображений в реальном времени, фильтрации и эффектов. [7] Голосовые помощники и другие системы домашней автоматизации могут выиграть от более быстрого понимания и реагирования на команды пользователя.
- Обработка в памяти также используется встроенными системами в устройствах и высококлассных цифровых камерах для эффективной обработки данных. Благодаря методам обработки в памяти некоторые устройства IoT отдают приоритет быстрой обработке данных и времени отклика. [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
При большом количестве пользователей для конфигурации в памяти требуется большой объем оперативной памяти , что, в свою очередь, влияет на стоимость оборудования. Инвестиции, скорее всего, будут уместны в ситуациях, когда скорость ответа на запрос является высоким приоритетом, и когда наблюдается значительный рост объема данных и увеличение спроса на средства отчетности; они все еще могут быть нерентабельными, когда информация не подвержена быстрым изменениям. Безопасность — еще одно соображение, поскольку инструменты в памяти предоставляют конечным пользователям огромные объемы данных. Производители советуют гарантировать, что доступ к данным предоставляется только авторизованным пользователям.
Смотрите также
Ссылки
- ^ Ghose, S. (ноябрь 2019 г.). «Обработка в памяти: перспектива, обусловленная рабочей нагрузкой» (PDF) . IBM Journal of Research and Development . 63 (6): 3:1–19. doi :10.1147/JRD.2019.2934048. S2CID 202025511.
- ^ Чжан, Хао; Ган Чэнь; Бэн Чин Уи; Киан-Ли Тан; Мэйхуэй Чжан (июль 2015 г.). «Управление и обработка больших данных в памяти: обзор». Труды IEEE по инжинирингу знаний и данных . 27 (7): 1920–1948. doi : 10.1109/TKDE.2015.2427795 .
- ^ Платтнер, Хассо; Цайер, Александр (2012). Управление данными в памяти: технология и приложения. Springer Science & Business Media. ISBN 9783642295744.
- ^ «Курс обработки в памяти: Лекция 1: Изучение парадигмы PIM для будущих систем — весна 2022 г.». YouTube . 10 марта 2022 г.
- ^ Пак, Кейт (27.07.2023). «Samsung расширяет сокращение производства микросхем памяти, вместо этого сосредоточится на высокопроизводительных микросхемах искусственного интеллекта». TechCrunch . Получено 05.12.2023 .
- ^ Тан, Киан-Ли; Цай, Цинчао; Уи, Бэн Чин; Вонг, Вэн-Фай; Яо, Чанг; Чжан, Хао (2015-08-12). «Базы данных в памяти: проблемы и возможности с точки зрения программного обеспечения и оборудования». ACM SIGMOD Record . 44 (2): 35–40. doi :10.1145/2814710.2814717. ISSN 0163-5808. S2CID 14238437.
- ^ Фатемиех, Сейед Эрфан; Решадинежад, Мохаммад Реза; Тахеринеджад, Нима (2022). «Приближенные вычисления в памяти с использованием мемристивной логики IMPLY и ее применение к обработке изображений». Международный симпозиум IEEE по схемам и системам (ISCAS) 2022 г. стр. 3115–3119. doi : 10.1109/ISCAS48785.2022.9937475. ISBN 978-1-6654-8485-5. S2CID 253462291 . Получено 2023-12-05 .
- ^ "Что такое обработка в памяти (PIM) и как она работает?". Бизнес-аналитика . Получено 2023-12-05 .
- ^ Гилл, Джон (2007). «Изменение парадигмы бизнес-анализа с помощью технологий баз данных в памяти». Business Intelligence Journal . 12 (2): 58–62. Архивировано из оригинала 24-09-2015.
- ^ Эрлс, А. (2011). Советы по оценке, развертыванию и управлению инструментами аналитики в памяти (PDF) . Tableau. Архивировано из оригинала (PDF) 2012-04-25.
- ^ "In_memory Analytics". yellowfin. стр. 6.
- ^ Коте, Спарджан. "Вычисления в оперативной памяти в бизнес-аналитике". Архивировано из оригинала 24 апреля 2011 г.
- ^ "Анализ опроса: почему внедрение BI и аналитики остается низким и как расширить его охват". Gartner . Получено 2023-12-05 .
- ^ Upchurch, E.; Sterling, T.; Brockman, J. (2004). "Анализ и моделирование компромиссов в дизайне архитектуры Advanced PIM". Труды конференции ACM/IEEE SC2004. Питтсбург, Пенсильвания, США: IEEE. стр. 12. doi :10.1109/SC.2004.11. ISBN 978-0-7695-2153-4. S2CID 9089044.