Кэш в памяти для управления мобильными данными

Источник · Перевод автора

Более десяти лет мобильные данные были предметом исследований специалистов по данным и ИТ из-за неотъемлемых проблем, связанных с их управлением. Мобильные вычисления – отличное нововведение и показатель цифровой зрелости компании, но за это приходится платить. Это нововведение связано с проблемами, связанными с прерывистыми сетевыми подключениями, низкой пропускной способностью и нехваткой ресурсов или инфраструктуры. Для обеспечения наилучшего качества обслуживания предприятиям следует найти способ обеспечить поддержание качества как данных, так и услуг. Это означает, что целью должны быть согласованность и согласованность данных, а также обеспечение высокой доступности и быстрого реагирования.

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

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

Поддержание согласованности и целостности данных

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

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

Двухуровневое кэширование для отключенной работы

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

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

Обновить распространение и распространение

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

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

Вывод

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