RU2648608C2 - Система телеметрии для облачной системы синхронизации - Google Patents

Система телеметрии для облачной системы синхронизации Download PDF

Info

Publication number
RU2648608C2
RU2648608C2 RU2014140203A RU2014140203A RU2648608C2 RU 2648608 C2 RU2648608 C2 RU 2648608C2 RU 2014140203 A RU2014140203 A RU 2014140203A RU 2014140203 A RU2014140203 A RU 2014140203A RU 2648608 C2 RU2648608 C2 RU 2648608C2
Authority
RU
Russia
Prior art keywords
synchronization
file
telemetry
report
error
Prior art date
Application number
RU2014140203A
Other languages
English (en)
Other versions
RU2014140203A (ru
Inventor
Ричард ЧУНГ
Роджер ЛУЕДЕР
Original Assignee
МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи filed Critical МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи
Publication of RU2014140203A publication Critical patent/RU2014140203A/ru
Application granted granted Critical
Publication of RU2648608C2 publication Critical patent/RU2648608C2/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • G06F11/1662Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Abstract

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

Description

Уровень техники изобретения
[0001] Современный пользователь компьютеров может иметь множество компьютерных устройств, таких как настольный компьютер, портативный компьютер, планшетный компьютер или сотовый телефон с вычислительной мощностью, называемый «смартфоном». Пользователь может хранить файлы в одном устройстве, синхронизируемом с файлами по множеству других устройств. Пользователь может переносить любые изменения с некоторым файлом в одном устройстве в другие копии этого файла в других устройствах.
Сущность изобретения
[0002] Данный раздел Сущность изобретения предоставляется для введения подбора понятий в упрощенной форме, которые дополнительно описываются ниже в разделе Подробное описание. Данный раздел Сущность изобретения не предназначается для обозначения ключевых признаков или существенных признаков заявляемого изобретения, а также не предназначается для использования с целью накладывания ограничений на объем заявляемого изобретения.
[0003] Варианты осуществления, обсуждаемые ниже, относятся к системе телеметрии, следящей за облачной системой синхронизации для улучшения правильности и качества функционирования. Прокси-агент службы может принимать набор метаданных соответствующего файла, относящийся к соответствующему файлу, хранящемуся в облачной учетной записи пользователя облачной системы синхронизации. Прокси-агент службы может выполнять проверку синхронизации набора метаданных соответствующего файла с локальным файлом, сохраненным в клиентском устройстве. Прокси-агент службы может создавать отчет телеметрии, описывающий ошибку синхронизации, определенную посредством проверки синхронизации.
Перечень фигур чертежей
[0004] Для описания принципа, по которому могут быть получены описанные выше и другие преимущества и признаки, приводится более конкретное описание, также раскрываемое посредством ссылок на конкретные варианты осуществления изобретения, которые изображены на сопроводительных чертежах. Понимая, что на данных чертежах изображены только типичные варианты осуществления и что данные чертежи не предназначены, поэтому, ограничивать их объем, варианты реализации будут описываться и объясняться с помощью дополнительных особенностей и подробностей с использованием сопроводительных чертежей.
[0005] На Фиг.1 изображен, в блок-схеме, один вариант осуществления сети с синхронизацией в облаке.
[0006] На Фиг.2 изображен, в блок-схеме, один вариант осуществления вычислительного устройства.
[0007] На Фиг.3 изображен, в блок-схеме, один вариант осуществления сообщения c набором метаданных соответствующего файла.
[0008] На Фиг.4 изображен, в блок-схеме, один вариант осуществления отчета телеметрии.
[0009] На Фиг.5 изображен, в блок-схеме, один вариант осуществления записи телеметрии.
[0010] На Фиг.6 изображен, в блок-схеме, один вариант осуществления обзорного отчета.
[0011] На Фиг.7 изображен, в блок-схеме последовательности операций, один вариант осуществления способа синхронизации локального файла с использованием клиентского устройства.
[0012] На Фиг.8 изображен, в блок-схеме последовательности операций, один вариант осуществления способа выполнения проверки синхронизации.
[0013] На Фиг.9 изображен, в блок-схеме последовательности операций, один вариант осуществления способа синхронизации соответствующего файла с использованием облачного сервера.
[0014] На Фиг.10 изображен, в блок-схеме последовательности операций, один вариант осуществления способа обработки отчета телеметрии в сервере телеметрии.
Подробное описание
[0015] Ниже подробно обсуждаются варианты осуществления. В то время как обсуждаются конкретные варианты реализации, следует понимать, что это делается только в иллюстративных целях. Специалисту будет понятно, что без отступления от сущности и объема изобретения согласно данному раскрытию могут использоваться другие составляющие и конфигурации. Варианты реализации могут быть машинно-реализуемым способом, материальным машиночитаемым носителем, на котором сохранен набор команд, детализирующих способ, для по меньшей мере одного процессора или клиентского устройства.
[0016] Пользователь может содержать копию файла данных на множестве устройств, таких как планшетный компьютер, портативный компьютер, настольный компьютер и смартфон. Файл с данными может быть текстовым файлом, файлом цифрового изображения, аудиофайлом, видеофайлом или исполняемым приложением программного обеспечения. Пользователь может сохранять копию этого файла с данными с использованием облачных вычислений. Облачные вычисления позволяет прокси-агенту службы выгружать некоторые функции пользовательского устройства в одно или более сетевых устройств, называемых облаком.
[0017] Пользователь может осуществлять доступ к любой облачной службе, предоставляемой облаком, с использованием учетной записи пользователя в облаке. Облако может выполнять функции обработки и резервного копирования для пользовательского устройства. Пользователь может хранить копию файла с данными на облачном сервере, соединяющемся, по меньшей мере, периодически через сеть с каждым устройством, связанным с пользователем. Каждый раз, когда файл с данными обновляется на одном пользовательском устройстве, файл с данными может синхронизироваться с копией на облачном сервере и любом другом пользовательском устройстве с облачной учетной записью пользователя.
[0018] Система телеметрии может получать данные от каждой конечной точки облака для слежения за правильностью и качеством функционирования в течение работы облачной службы, такой как облачная система синхронизации. Клиентское устройство может следить за синхронизацией и создавать отчет телеметрии для отправки в сервер телеметрии. Клиентское устройство может использовать метаданные файла для проверки того, что синхронизация произошла корректно. Клиентское устройство может также сообщать о любых нарушениях утверждений или остановах синхронизации, которые происходят в течение процесса синхронизации.
[0019] Сервер телеметрии может затем использовать эти данные для документирования и диагностирования любых ошибок синхронизации, которые возникают в течение процесса синхронизации. Сервер телеметрии может идентифицировать любые распространенные ошибки или шаблоны ошибок и автоматически предоставлять исправление ошибок для коррекции этих ошибок. Сервер телеметрии может отправлять обзорный отчет пользователю клиентского устройства или администратору облачной системы синхронизации. Обзорный отчет может организовывать данные телеметрии в информационную запись функционирования всей службы, охватывающую облачную систему синхронизации, информационные записи функционирования совокупности пользователей, охватывающую различные демографические группы пользователей облачной системы синхронизации, и информационную запись функционирования отдельного пользователя.
[0020] Таким образом, в одном варианте осуществления система телеметрии может следить за облачной системой синхронизации для улучшения функционирования. Прокси-агент службы может принимать набор метаданных соответствующего файла, относящийся к соответствующему файлу, хранящемуся в облачной учетной записи пользователя облачной системы синхронизации. Прокси-агент службы может выполнять проверку синхронизации набора метаданных соответствующего файла с локальным файлом, хранящимся в клиентском устройстве. Прокси-агент службы может создавать отчет телеметрии, описывающий ошибку синхронизации, определенную посредством проверки синхронизации.
[0021] На Фиг.1 изображен, в блок-схеме, один вариант осуществления сети 100 с синхронизацией в облаке. Клиентское устройство 110 может хранить локальный файл 112, такой как текстовый файл, файл цифрового аудио, файл цифрового изображения, файл цифрового видео, приложение или файл с другими данными. Клиентское устройство 110 может быть настольным компьютером, портативным компьютером, карманным компьютером, смартфоном или другим вычислительным устройством. Клиентское устройство 110 может использовать прокси-агент 114 службы, чтобы он действовал в качестве клиентского интерфейса с облаком для подписки на облачную службе, такую как облачная система синхронизации. Прокси-агент 114 службы может реализовывать клиентское средство 116 синхронизации для поддержания синхронизированных копий локального файла 112 всюду по сети 100 с синхронизацией в облаке.
[0022] Прокси-агент 114 службы может использовать соединение 120 с сетью передачи данных для соединения с облачным сервером 130. Облачный сервер 130 может хранить учетную запись 132 пользователя в облаке для пользователя, связанного с клиентским устройством 110. Учетная запись 132 пользователя в облаке может содержать соответствующий файл 134 для локального файла 112, хранящегося в клиентском устройстве 110. Соответствующий файл 134 является копией версии локального файла 112, хранящегося в клиентском устройстве 110. Облачный сервер 130 может реализовывать средство 136 синхронизации в облаке для синхронизации локального файла 112 с соответствующим файлом 134 по предварительно установленному расписанию или каждый раз, когда обновляется либо локальный файл 112, либо соответствующий файл 134.
[0023] Дополнительно, ассоциированное пользовательское устройство 140 может иметь связанный с ним прокси-агент 142 службы, действующий в качестве воплощения учетной записи 132 пользователя в облаке, поддерживающей соответствующий файл 134. Ассоциированное пользовательское устройство 140 может использовать связанное с ним средство 144 синхронизации для синхронизации соответствующего файла 134 либо с соответствующим файлом 134 на облачном сервере 130, либо с локальным файлом 112 в клиентском устройстве 110. Ассоциированное пользовательское устройство 140 является любым устройством, регистрируемым в учетной записи 132 пользователя в облаке. Ассоциированное пользовательское устройство 140 можно считать отдельным клиентским устройством 110 и наоборот.
[0024] Сервер 150 телеметрии может поддерживать систему телеметрии в облаке для слежения за правильностью и качеством функционирования облачной системы синхронизации. Доступ к серверу 150 телеметрии может осуществляться через облачный сервер 130 или может осуществляться непосредственно через соединение 120 с сетью передачи данных. Сервер 150 телеметрии может принимать отчет телеметрии от клиентского устройства 110 или облачного сервера 130, описывающий правильность и качество функционирования синхронизации, включая любые ошибки синхронизации, которые могли произойти. Сервер 150 телеметрии может затем предоставлять клиентскому устройству 110 обзорный отчет, который следует показывать пользователю для описания функционирования облачной системы синхронизации. Сервер 150 телеметрии может содержать базу 152 данных известных ошибок для хранения распространенных ошибок или шаблонов ошибок, и исправления ошибок или пользовательские действия, которые могут корректировать эти ошибки.
[0025] На Фиг.2 изображена блок-схема примерного вычислительного устройства 200, которое может действовать в качестве клиентского устройства 110, ассоциированного пользовательского устройства 140, облачного сервера 130 или сервера 150 телеметрии. Вычислительное устройство 200 может объединять одно или более из аппаратного обеспечения, программного обеспечения, встроенного микропрограммного обеспечения (firmware) и технологии система-на-микросхеме для реализации системы телеметрии или облачной системы синхронизации. Вычислительное устройство 200 может включать в себя шину 210, процессор 220, память 230, постоянное запоминающее устройство (ROM) 240, устройство 250 хранения данных, устройство 260 ввода, устройство 270 вывода и сетевой интерфейс 280. Шина 210 или другая система связи между компонентами, может разрешать осуществление связи среди компонентов вычислительного устройства 200.
[0026] Процессор 220 может включать в себя по меньшей мере один традиционный процессор или микропроцессор, который интерпретирует и исполняет набор команд. Память 230 может быть оперативным запоминающим устройством (RAM) или другим типом устройства динамического хранения, которое хранит информацию и команды для исполнения процессором 220. Память 230 может также хранить временные переменные или другую промежуточную информацию, используемую в течение исполнения команд процессором 220. ROM 240 может включать в себя традиционное устройство ROM или другой тип устройства статического хранения, которое хранит статическую информацию и команды для процессора 220. Устройство 250 хранения данных может включать в себя любой тип материального машиночитаемого носителя, такого как, например, магнитный или оптический носитель записей и его соответствующий привод. Материальный машиночитаемый носитель является физическим носителем, хранящим машиночитаемый код или команды, в противоположность временному носителю или сигналу. Устройство 250 хранения данных может хранить набор команд, детализирующих способ, которые при их исполнении одним или более процессорами предписывают упомянутому одному или более процессорам выполнять способ. Устройство 250 хранения данных может также быть базой данных или интерфейсом базы данных для хранения записей телеметрии.
[0027] Устройство 260 ввода может включать в себя один или более традиционных механизмов, которые разрешают пользователю вводить информацию в вычислительное устройство 200, таких как клавиатура, мышь, устройство распознавания голоса, микрофон, гарнитура, сенсорный экран и т.д. Устройство 270 вывода может включать в себя один или более традиционных механизмов, которые выводят данные пользователю, включая дисплейное устройство, принтер, один или более громкоговорителей, гарнитуру или носитель, такой как запоминающее устройство, или магнитный или оптический диск и соответствующий привод. Сетевой интерфейс 280 может включать в себя любой подобный приемопередатчику механизм, который предоставляет вычислительному устройству 200 возможность осуществления связи с другими устройствами или сетями. Сетевой интерфейс 280 может быть беспроводным, проводным или оптическим интерфейсом.
[0028] Вычислительное устройство 200 может выполнять такие функции в ответ на исполнение процессором 220 последовательности команд, содержащихся в считываемом компьютером носителе, таком как, например, память 230, магнитный диск или оптический диск. Такие команды могут быть считаны в память 230 из другого считываемого компьютером носителя, такого как устройство 250 хранения данных или из отдельного устройства через интерфейс 280 связи.
[0029] На Фиг.3 изображен, в блок-схеме, один вариант осуществления сообщения 300 с набором метаданных соответствующего файла. Сообщение 300 с набором метаданных соответствующего файла может иметь адрес 302 клиентского устройства для указания клиентского устройства 110, в которое отправляется сообщение 300 с набором метаданных соответствующего файла. Сообщение 300 с набором метаданных соответствующего файла может передавать набор 304 метаданных соответствующего файла в клиентское устройство 110. Набор 304 метаданных соответствующего файла описывает характеристики соответствующего файла 134. Набор 304 метаданных соответствующего файла может иметь имя 306 файла, идентифицирующее соответствующий файл 134, иерархию 308 файла, описывающую местоположение хранения соответствующего файла 134, размер 310 соответствующего файла 134, хэш-значение 312 файла для соответствующего файла 134 и временную отметку 314, идентифицирующую последний момент времени, когда соответствующий файл 134 был изменен. Хэш-значение 312 файла является значением, созданным посредством применения хеш-функции к содержимому соответствующего файла 134. Посредством сравнения хэш-значения 312 файла для соответствующего файла 134 с хэш-значением 312 файла для локального файла 112 процессор может определять, является ли соответствующий файл 134 тем же самым, что и локальный файл 112.
[0030] На Фиг.4 изображен, в блок-схеме, один вариант осуществления отчета 400 телеметрии. Отчет 400 телеметрии может иметь адрес 402 сервера телеметрии для указания сервера 150 телеметрии, в который отправляется отчет 400 телеметрии. Отчет 400 телеметрии может передавать набор 404 данных телеметрии в сервер 150 телеметрии. Набор 404 данных телеметрии может описывать функционирование облачной системы синхронизации в течение синхронизации. Набор 404 данных телеметрии может содержать любое количество типов данных телеметрии.
[0031] Например, набор 404 данных телеметрии может иметь идентификатор 406 пользователя, описывающий клиентское устройство 110. Набор 404 данных телеметрии может иметь описание 408 файла с данными, описывающее локальный файл 112 или соответствующий файл 134, такое как тип файла и создатель файла. Набор 404 данных телеметрии может иметь описание 410 программного обеспечения (SW), описывающее программное обеспечение, используемое для считывания локального файла 112 или соответствующего ему файла 134, такое как номер версии или разработчик.
[0032] Набор 404 данных телеметрии может иметь данные 412 ошибки синхронизации, описывающие ошибку синхронизации, идентифицированную посредством проверки синхронизации, наряду со временем 414 события, относящимся к этой ошибке синхронизации. Время 414 события может указывать время ошибки синхронизации, определенной посредством временной отметки 314 метаданных, а не временем проверки синхронизации.
[0033] Данные 416 нарушения утверждения в наборе 404 данных телеметрии могут описывать нарушение утверждения, которое произошло в течение синхронизации локального файла 112 и соответствующего файла 134, наряду с любыми данными 418 журнала утверждений, взятых во время нарушения утверждения. Данные 416 нарушения утверждения могут сообщать о любых нарушенных утверждениях, таких как утверждение в отладочной сборке, утверждение в розничной сборке, утверждение в поставочной сборке или другом, в сервер 150 телеметрии для отладки.
[0034] Данные 420 останова синхронизации в наборе 404 данных телеметрии могут описывать останов синхронизации, который произошел в течение синхронизации локального файла 112 и соответствующего файла 134, наряду с любыми данными 422 журнала остановов, взятых во время останова синхронизации. Прокси-агент 114 службы может попытаться самостоятельно осуществить диагностику какого-либо нарушения для продолжения синхронизации. Если, например, выгрузка нарушается из «нарушенного предварительного условия», а перечень последовательных изменений возвращает ошибку, указывающую отсутствие совершения какой-либо модификации и отсутствие какого-либо продолжения, то прокси-агент 114 службы может идентифицировать останов. Прокси-агент 114 службы может идентифицировать останов на основе отсутствия дальнейшего продолжения, совершаемого, пока служба в облаке не сделает возможной выгрузку или не вернет причину нарушения для выгрузки.
[0035] Набор 404 данных телеметрии может описывать метрику 424 функционирования синхронизации, следящую за синхронизацией локального файла 112 и соответствующего файла 134, включая то, является ли синхронизация успешной. Метрика 424 функционирования синхронизации описывает выполнение синхронизации, например, частоту нарушений или успешных выполнений, время вызова синхронизации, использование ширины полосы пропускания, использование процессора в клиентском устройстве 110, и другие метрики. Метрика 424 функционирования синхронизации может исключать ресурсы, используемые процессом телеметрии.
[0036] На Фиг.5 изображен, в блок-схеме, один вариант осуществления записи 500 телеметрии. Сервер 150 телеметрии может хранить запись 500 телеметрии. Сервер 150 телеметрии или администратор может сравнивать запись 500 телеметрии с отчетом 400 телеметрии для идентификации каких-либо новых проблем. Запись 500 телеметрии может иметь набор 502 пользовательских демографических данных, описывающий пользователя, связанного с учетной записью 132 пользователя в облаке. Например, набор 502 пользовательских демографических данных может описывать местоположение пользователя, тип файлов, синхронизируемых пользователем, и другие данные о пользователе и файлах пользователя. Запись 500 телеметрии может иметь профиль 504 устройства, описывающий клиентское устройство 110, отправляющее отчет 400 телеметрии. Например, профиль 504 устройства может описывать тип клиентского устройства 110, обработку, скорость соединения, память или другие характеристики клиентского устройства 110. Запись 500 телеметрии может связывать набор 502 пользовательских демографических данных и профиль 504 устройства с набором 404 данных телеметрии.
[0037] На Фиг.6 изображен, в блок-схеме, один вариант осуществления обзорного отчета 600. Обзорный отчет 600 может иметь адрес 602 клиентского устройства для указания клиентского устройства 110, в которое отправляется обзорный отчет 600. Обзорный отчет 600 может передавать набор 604 обзорных данных в клиентское устройство 110. Набор 604 обзорных данных может иметь исправление 606 ошибки для коррекции какой-либо ошибки синхронизации, идентифицированной в отчете 400 телеметрии.
[0038] Набор 604 обзорных данных может иметь запись 608 функционирования всей службы, запись 610 функционирования совокупности пользователей или запись 612 функционирования отдельного пользователя. Запись 608 функционирования всей службы может следить за всем функционированием облачной системы синхронизации, таким как время работы, частота успешных выполнений и другие метрики, описывающие функционирование облачной системы синхронизации. Дополнительно, запись 608 функционирования всей службы может следить за количеством файлов, синхронизируемых корректно облачной системой синхронизации, таких как локальные файлы 112 без каких-либо соответствующих им файлов 134, соответствующие файлы 134 без каких-либо локальных файлов 112, локальные файлы 112 с другим размером файла по отношению к соответствующему файлу 134, локальные файлы 112 с другой версией по отношению к соответствующим файлам 134, локальные файлы 112 с другими временными отметками по отношению к соответствующим файлам 134 и другие метрики. Запись 610 функционирования совокупности пользователей может собирать группы пользователей на основе демографии и тенденций в функционировании для показа правильности и качества функционирования групп пользователей. Запись 612 функционирования отдельного пользователя может следить за качеством функционирования и правильностью устройств, связанных с пользователем клиентского устройства 110, или может ограничиться клиентским устройством 110. Запись 612 функционирования отдельного пользователя может быть представлена в качестве настраиваемой пользователем временной шкалы 614. Пользователь может настраивать настраиваемую пользователем временную шкалу 614 посредством выбора того, какие метрики следует отображать в виде временной шкалы.
[0039] На Фиг.7 изображен, в блок-схеме последовательности операций, один вариант осуществления способа 700 синхронизации локального файла 112 с использованием клиентского устройства 110. Прокси-агент 114 службы может сохранять локальный файл 112 в клиентском устройстве 110 (Этап 702). Прокси-агент 114 службы может синхронизировать локальный файл 112 с соответствующим файлом 134, хранящимся в облачной учетной записи 132 пользователя облачной системы синхронизации (Этап 704). Прокси-агент 114 службы может следить за синхронизацией локального файла 112 и соответствующего файла 134 для записывания метрики 424 функционирования синхронизации для отчета 400 телеметрии (Этап 706). Прокси-агент 114 службы может принимать набор 304 метаданных соответствующего файла, относящийся к соответствующему файлу 134, хранящемуся в облачной учетной записи 132 пользователя облачной системы синхронизации, от по меньшей мере одного из облачного сервера 130 или ассоциированного пользовательское устройства 140 (Этап 708). Прокси-агент 114 службы может создавать набор метаданных локального файла для сравнения с набором 304 метаданных соответствующего файла для проверки синхронизации (Этап 710).
[0040] Прокси-агент 114 службы может записывать метрики 424 функционирования синхронизации для отчета 400 телеметрии (Этап 712). Прокси-агент 114 службы может выполнять проверку синхронизации набора 304 метаданных соответствующего файла с локальным файлом 112, хранящимся в клиентском устройстве 110, после завершения синхронизации между локальным файлом 112 и соответствующим файлом 134 (Этап 714). Если при проверке синхронизации определено, что произошла ошибка синхронизации (Этап 716), то прокси-агент 114 службы может записывать данные 412 ошибки синхронизации и время 414 события для отчета 400 телеметрии (Этап 718). Прокси-агент 114 службы может выполнять повторную синхронизацию локального файла 112 с соответствующим файлом 134 (Этап 720). Если прокси-агент 114 службы принимает нарушение утверждения в течение синхронизации локального файла 112 и соответствующего файла 134 (Этап 722), то прокси-агент 114 службы может записывать нарушение 416 утверждения и набор 418 данных журнала утверждений для отчета 400 телеметрии (Этап 724). Если прокси-агент 114 службы распознает останов синхронизации в течение синхронизации локального файла 112 и соответствующего файла 134 (Этап 726), то прокси-агент 114 службы может записывать останов 420 синхронизации и набор 422 данных журнала остановов для отчета 400 телеметрии (Этап 728). Прокси-агент 114 службы может создавать отчет 400 телеметрии для описания функционирования синхронизации, ошибки 412 синхронизации и времени 414 события, определенных посредством проверки синхронизации, нарушения 416 утверждения и набора 418 данных журнала утверждений, и останова 420 синхронизации и набора 422 данных журнала остановов (Этап 730). Прокси-агент 114 службы может отправлять отчет 400 телеметрии в сервер 150 телеметрии (Этап 732).
[0041] На Фиг.8 изображен, в блок-схеме последовательности операций, один вариант осуществления способа 800 выполнения проверки синхронизации. Прокси-агент 114 службы может идентифицировать локальный файл 112, который соответствует соответствующему файлу 134, с использованием имени 306 файла и иерархии 308 файла (Этап 802). Прокси-агент 114 службы может сравнивать набор 304 метаданных соответствующего файла с набором метаданных локального файла (Этап 804). Если размер 310 набора 304 метаданных соответствующего файла отличается от размера набора метаданных локального файла (Этап 806), то прокси-агент 114 службы может идентифицировать ошибку синхронизации (Этап 808). Если хэш-значение 312 файла из набора 304 метаданных соответствующего файла отличается от хэш-значения файла из набора метаданных локального файла (Этап 810) прокси-агент 114 службы может идентифицировать ошибку синхронизации (Этап 808). Прокси-агент 114 службы может определять из временной отметки 314 из набора метаданных соответствующего файла время события, относящееся к ошибке синхронизации (Этап 812).
[0042] Многие из функций телеметрии, выполняемых клиентским устройством 110, могут быть выполнены облачным сервером 130. На Фиг.9 изображен, в блок-схеме последовательности операций, один вариант осуществления способа 900 синхронизации соответствующего файла с использованием облачного сервера. Облачный сервер 130 может синхронизировать локальный файл 112, хранящийся в клиентском устройстве 110, с соответствующим файлом 134, хранящимся в облачной учетной записи 132 пользователя облачной системы синхронизации (Этап 902). Облачный сервер 130 может следить за синхронизацией локального файла 112 и соответствующего файла 134 (Этап 904). Облачный сервер 130 может принимать набор 304 метаданных соответствующего файла, относящийся к соответствующему файлу 134, хранящемуся в облачной учетной записи 132 пользователя облачной системы синхронизации (Этап 906). Облачный сервер 130 может принимать набор метаданных локального файла для сравнения с набором 304 метаданных соответствующего файла для проверки синхронизации (Этап 908).
[0043] Облачный сервер 130 может записывать метрику 424 функционирования синхронизации в отчет 400 телеметрии (Этап 910). Облачный сервер 130 может выполнять проверку синхронизации набора 304 метаданных соответствующего файла с локальным файлом 112, хранящимся в клиентском устройстве 110 (Этап 912). Если при проверке синхронизации определено, что произошла ошибка синхронизации (Этап 914), то облачный сервер 130 может записывать данные 412 ошибки синхронизации и время 414 события для отчета 400 телеметрии (Этап 916). Облачный сервер 130 может выполнять повторную синхронизацию локального файла 112 с соответствующим файлом 134 (Этап 918). Если облачный сервер 130 принимает нарушение утверждения в течение синхронизации локального файла 112 и соответствующего файла 134 (Этап 920), то облачный сервер 130 может записывать нарушение 416 утверждения и набор 418 данных журнала утверждений в отчет 400 телеметрии (Этап 922). Если облачный сервер 130 распознает останов синхронизации в течение синхронизации локального файла 112 и соответствующего файла 134 (Этап 924), то облачный сервер 130 может записывать останов 420 синхронизации и набор 422 данных журнала остановов в отчет 400 телеметрии (Этап 926). Облачный сервер 130 может создавать отчет 400 телеметрии для описания функционирования синхронизации, ошибки 412 синхронизации и времени 414 события, определенных посредством проверки синхронизации, нарушения 416 утверждения и набора 418 данных журнала утверждений, и останова 420 синхронизации и набора 422 данных журнала остановов (Этап 928). Облачный сервер 130 может отправлять отчет 400 телеметрии в сервер 150 телеметрии (Этап 930).
[0044] На Фиг.10 изображен, в блок-схеме последовательности операций, один вариант осуществления способа 1000 обработки отчета телеметрии в сервере 150 телеметрии. Сервер 150 телеметрии может принимать от клиентского устройства 110 отчет 400 телеметрии, имеющий составленный в клиентском устройстве 110 набор 404 данных телеметрии, описывающий службу в облаке, связанную с учетной записью 132 пользователя в облаке для пользователя (Этап 1002). Сервер 150 телеметрии может связывать набор 404 данных телеметрии с набором 502 пользовательских демографических данных, относящимся к учетной записи 132 пользователя в облаке (Этап 1004). Сервер 150 телеметрии может связывать набор 404 данных телеметрии с профилем 504 устройства, относящимся к клиентскому устройству 110 (Этап 1006).
[0045] Сервер 150 телеметрии может сравнивать ошибку синхронизации в отчете 600 телеметрии с базой 152 данных известных ошибок для нахождения соответствующей ошибки (Этап 1008). Если в базе 152 данных известных ошибок создана соответствующая ошибка (Этап 1010), то сервер 150 телеметрии может выбирать исправление 606 ошибки для обзорного отчета 600 на основе этой соответствующей ошибки (Этап 1012). Сервер 150 телеметрии может отправлять обновленный обзорный отчет 600, если исправление 606 ошибки создано после данного факта. Сервер 150 телеметрии может получать запись 608 функционирования всей службы для обзорного отчета 600 (Этап 1014). Сервер 150 телеметрии может получать запись 610 функционирования совокупности пользователей для обзорного отчета 600 (Этап 1016). Сервер 150 телеметрии может получать запись 612 функционирования отдельного пользователя для обзорного отчета 600 (Этап 1018). Сервер 150 телеметрии может создавать настраиваемую пользователем временную шкалу 614 на основе записи 612 функционирования отдельного пользователя (Этап 1020). Сервер 150 телеметрии может создавать обзорный отчет 600, основывающийся частично на наборе 404 данных телеметрии (Этап 1022). Обзорный отчет 600 может иметь запись 608 функционирования всей службы, запись 610 функционирования совокупности пользователей, запись 612 функционирования отдельного пользователя или настраиваемую пользователем временную шкалу 614. Сервер 150 телеметрии может отправлять обзорный отчет 600 в клиентское устройство 110 (Этап 1024).
[0046] Несмотря на то, что изобретение было описано на языке, характерном для конструктивных признаков и/или методологических действий, следует понимать, что объем изобретения, определяемый прилагаемой формулой изобретения, не обязательно ограничивается характерными признаками или действиями, описанными выше. Скорее, данные характерные признаки и действия, описанные выше, раскрываются в качестве примерных форм для реализации формулы изобретения.
[0047] Варианты осуществления в объеме настоящего изобретения могут также включать в себя постоянные считываемые компьютером носители информации для переноса или содержания исполняемых компьютером команд или структур данных, сохраненных на них. Такие постоянные считываемые компьютером носители информации могут быть любыми доступными носителями, к которым может быть осуществлен доступ посредством компьютера общего назначения или специализированного компьютера. В качестве примера, а не ограничения, такие постоянные считываемые компьютером носители информации могут содержать RAM, ROM, EEPROM, CD-ROM или другие хранилища на оптических дисках, хранилища на магнитных дисках или другие магнитные запоминающие устройства, или любой другой носитель, который может использоваться для переноса или хранения необходимого средства программного кода в виде исполняемых компьютером команд или структур данных. Сочетания вышеупомянутого также должны содержаться в объеме постоянного считываемого компьютером носителя информации.
[0048] Варианты осуществления могут также быть реализованы в распределенных вычислительных окружениях, где задачи выполняются локальными и удаленными устройствами обработки данных, которые соединяются (либо посредством проводных линий связи, либо беспроводных линий связи, либо их сочетанием) через сеть связи.
[0049] Исполняемые компьютером команды включают в себя, например, команды и данные, которые предписывают компьютеру общего назначения, специализированному компьютеру или устройству обработки особого назначения выполнять конкретную функцию или группу функций. Исполняемые компьютером команды также включают в себя программные модули, которые исполняются компьютерами в автономном или сетевом окружениях. В целом, программные модули включают в себя подпрограммы, программы, объекты, компоненты и структуры данных и т.д., которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Исполняемые компьютером команды, связанные с ними структуры данных и программные модули представляют собой примеры средств программного кода для выполнения этапов способов, раскрытых в данном документе. Конкретная последовательность таких исполнимых команд или связанных с ними структур данных представляет собой примеры соответствующих действий для реализации функций, описанных на таких этапах.
[0050] Несмотря на то, что вышеупомянутое описание может содержать особые подробности, не следует полагать, что они каким-либо образом накладывают ограничения на формулу изобретения. Другие конфигурации описанных вариантов осуществления являются частью объема данного раскрытия. Например, принципы действия данного раскрытия могут применяться к каждому отдельному пользователю, причем каждый пользователь может отдельно развертывать такую систему. Это позволяет каждому пользователю использовать преимущества данного раскрытия, даже если какое-либо из большого количества возможных применений не использует функциональность, описанную в данном документе. Каждое из множества примеров электронных устройств может обрабатывать содержимое различными возможными способами. Варианты реализации не обязательно находятся в одной системе, используемой всеми конечными пользователями. Соответственно, только прилагаемая формула изобретения и ее правовые эквиваленты должны определять изобретение, а не какие-либо упомянутые конкретные примеры.

Claims (36)

1. Машинно-реализуемый способ слежения за облачной системой синхронизации, содержащий этапы, на которых:
в процессе синхронизации, посылают локальный файл на сервер для синхронизации с соответствующим ему файлом;
принимают набор метаданных соответствующего файла, описывающий характеристики соответствующего файла, причем набор метаданных соответствующего файла содержит хэш-значение файла соответствующего файла, полученное посредством применения хэш-функции к содержимому соответствующего файла;
генерируют набор метаданных локального файла, содержащий хэш-значение файла локального файла, полученное посредством применения упомянутой хэш-функции к содержимому локального файла;
выполняют проверку синхронизации посредством сравнения хэш-значения файла соответствующего файла с хэш-значением файла локального файла, чтобы определить, имела ли место ошибка синхронизации в течение синхронизации;
создают отчет телеметрии, описывающий синхронизацию, включая ошибку синхронизации, определенную посредством упомянутой проверки синхронизации;
отправляют отчет телеметрии на сервер телеметрии; и
принимают обзорный отчет от сервера телеметрии, причем обзорный отчет содержит исправление ошибки, относящееся к известной ошибке, соответствующей ошибке синхронизации.
2. Способ по п.1, дополнительно содержащий этап, на котором представляют обзорный отчет, включающий в себя по меньшей мере одну из информационной записи функционирования отдельного пользователя и информационной записи функционирования совокупности пользователей.
3. Способ по п.1, дополнительно содержащий этап, на котором определяют из набора метаданных соответствующего файла время события, относящееся к ошибке синхронизации.
4. Способ по п.1, в котором набор метаданных соответствующего файла принимают от по меньшей мере одного из облачного сервера и ассоциированного пользовательского устройства.
5. Способ по п.1, дополнительно содержащий этап, на котором представляют настраиваемую пользователем временную шкалу на основе информационной записи функционирования отдельного пользователя в обзорном отчете.
6. Способ по п.1, дополнительно содержащий этап, на котором выполняют повторную синхронизацию локального файла с соответствующим ему файлом.
7. Способ по п.1, дополнительно содержащий этап, на котором принимают нарушение утверждения во время синхронизации локального файла и соответствующего ему файла для отчета телеметрии.
8. Способ по п.1, дополнительно содержащий этап, на котором принимают останов синхронизации во время синхронизации локального файла и соответствующего ему файла для отчета телеметрии.
9. Способ по п.1, дополнительно содержащий этап, на котором записывают метрику функционирования синхронизации для отчета телеметрии.
10. Материальный машиночитаемый носитель, на котором сохранен набор команд, которые при их исполнении одним или более процессорами предписывают одному или более процессорам выполнять способ слежения за облачной системой синхронизации, содержащий этапы, на которых:
принимают от клиентского устройства отчет телеметрии, содержащий набор данных телеметрии, описывающий синхронизацию между локальным файлом и соответствующим ему файлом;
идентифицируют в отчете телеметрии ошибку синхронизации, определенную посредством проверки синхронизации, каковая проверка синхронизации содержит сравнение хэш-значения файла соответствующего файла с хэш-значением файла локального файла;
создают обзорный отчет, содержащий исправление ошибки, относящееся к известной ошибке, соответствующей идентифицированной ошибке синхронизации; и
отправляют обзорный отчет в клиентское устройство.
11. Материальный машиночитаемый носитель по п. 10, в котором способ дополнительно содержит этап, на котором сравнивают ошибку синхронизации в отчете телеметрии с базой данных известных ошибок для нахождения соответствующей ей ошибки.
12. Материальный машиночитаемый носитель по п. 10, в котором способ дополнительно содержит этап, на котором выбирают исправление ошибки для обзорного отчета на основе упомянутой соответствующей ошибки.
13. Материальный машиночитаемый носитель по п. 10, в котором способ дополнительно содержит этап, на котором агрегируют информационные записи функционирования пользователей, охватывающие разные демографические группы пользователей облачной системы синхронизации.
14. Материальный машиночитаемый носитель по п. 10, в котором способ дополнительно содержит этап, на котором связывают упомянутый набор данных телеметрии с по меньшей мере одним из набора пользовательских демографических данных для облачной учетной записи пользователя и профиля устройства для клиентского устройства.
15. Материальный машиночитаемый носитель по п. 10, в котором способ дополнительно содержит этап, на котором собирают информационную запись функционирования совокупности пользователей для обзорного отчета.
16. Материальный машиночитаемый носитель по п. 10, в котором способ дополнительно содержит этап, на котором собирают информационную запись функционирования отдельного пользователя для обзорного отчета.
17. Материальный машиночитаемый носитель по п. 10, в котором способ дополнительно содержит этап, на котором создают настраиваемую пользователем временную шкалу на основе информационной записи функционирования отдельного пользователя.
18. Клиентское устройство, выполненное с возможностью слежения за облачной системой синхронизации, содержащее:
хранилище данных, приспособленное для хранения локального файла и хэш-значения файла локального файла, причем хэш-значение файла локального файла получено применением хэш-функции к содержимому локального файла;
процессор, выполненный с возможностью:
в процессе синхронизации, посылать локальный файл на сервер для синхронизации с соответствующим ему файлом,
выполнять проверку синхронизации посредством сравнения хэш-значения файла соответствующего файла, полученного применением упомянутой хэш-функции к содержимому соответствующего файла, с хэш-значением файла локального файла, чтобы определить, имела ли место ошибка синхронизации в течение процесса синхронизации, и
создавать отчет телеметрии, описывающий процесс синхронизации, включая ошибку синхронизации, определенную посредством упомянутой проверки синхронизации; и
сетевой интерфейс, выполненный с возможностью принимать упомянутый соответствующий файл, отправлять отчет телеметрии на сервер телеметрии и принимать обзорный отчет от сервера телеметрии, причем обзорный отчет содержит исправление ошибки, относящееся к известной ошибке, соответствующей ошибке синхронизации.
19. Клиентское устройство по п.18, при этом в отчете телеметрии имеется по меньшей мере одно из данных нарушения утверждения, данных останова синхронизации и метрики функционирования синхронизации.
RU2014140203A 2012-04-05 2013-04-03 Система телеметрии для облачной системы синхронизации RU2648608C2 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/439,859 US10089323B2 (en) 2012-04-05 2012-04-05 Telemetry system for a cloud synchronization system
US13/439,859 2012-04-05
PCT/US2013/035049 WO2013152058A2 (en) 2012-04-05 2013-04-03 Telemetry system for a cloud synchronization system

Publications (2)

Publication Number Publication Date
RU2014140203A RU2014140203A (ru) 2016-04-20
RU2648608C2 true RU2648608C2 (ru) 2018-03-26

Family

ID=48142965

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2014140203A RU2648608C2 (ru) 2012-04-05 2013-04-03 Система телеметрии для облачной системы синхронизации

Country Status (11)

Country Link
US (2) US10089323B2 (ru)
EP (1) EP2834759B1 (ru)
JP (1) JP6385336B2 (ru)
KR (1) KR102051692B1 (ru)
CN (1) CN104246767B (ru)
AU (1) AU2013243512B2 (ru)
BR (1) BR112014023106B1 (ru)
CA (1) CA2866449C (ru)
MX (1) MX352126B (ru)
RU (1) RU2648608C2 (ru)
WO (1) WO2013152058A2 (ru)

Families Citing this family (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8326814B2 (en) 2007-12-05 2012-12-04 Box, Inc. Web-based file management system and service
GB2500356A (en) 2011-01-20 2013-09-18 Box Inc Real time notification of activities that occur in a web-based collaboration environment
US9015601B2 (en) 2011-06-21 2015-04-21 Box, Inc. Batch uploading of content to a web-based collaboration environment
US9063912B2 (en) 2011-06-22 2015-06-23 Box, Inc. Multimedia content preview rendering in a cloud content management system
EP2729877A4 (en) 2011-07-08 2015-06-17 Box Inc DESKTOP APPLICATION FOR ACCESS AND INTERACTION WITH JOBS IN A CLOUD-BASED CONTENT MANAGEMENT SYSTEM AND SYNCHRONIZATION MECHANISMS THEREFOR
WO2013009328A2 (en) 2011-07-08 2013-01-17 Box.Net, Inc. Collaboration sessions in a workspace on cloud-based content management system
US9197718B2 (en) 2011-09-23 2015-11-24 Box, Inc. Central management and control of user-contributed content in a web-based collaboration environment and management console thereof
US8515902B2 (en) 2011-10-14 2013-08-20 Box, Inc. Automatic and semi-automatic tagging features of work items in a shared workspace for metadata tracking in a cloud-based content management system with selective or optional user contribution
US9098474B2 (en) 2011-10-26 2015-08-04 Box, Inc. Preview pre-generation based on heuristics and algorithmic prediction/assessment of predicted user behavior for enhancement of user experience
US11210610B2 (en) 2011-10-26 2021-12-28 Box, Inc. Enhanced multimedia content preview rendering in a cloud content management system
US8990307B2 (en) 2011-11-16 2015-03-24 Box, Inc. Resource effective incremental updating of a remote client with events which occurred via a cloud-enabled platform
GB2500152A (en) 2011-11-29 2013-09-11 Box Inc Mobile platform file and folder selection functionalities for offline access and synchronization
US9019123B2 (en) 2011-12-22 2015-04-28 Box, Inc. Health check services for web-based collaboration environments
US9904435B2 (en) 2012-01-06 2018-02-27 Box, Inc. System and method for actionable event generation for task delegation and management via a discussion forum in a web-based collaboration environment
US11232481B2 (en) 2012-01-30 2022-01-25 Box, Inc. Extended applications of multimedia content previews in the cloud-based content management system
US9965745B2 (en) 2012-02-24 2018-05-08 Box, Inc. System and method for promoting enterprise adoption of a web-based collaboration environment
US9195636B2 (en) 2012-03-07 2015-11-24 Box, Inc. Universal file type preview for mobile devices
US9054919B2 (en) 2012-04-05 2015-06-09 Box, Inc. Device pinning capability for enterprise cloud service and storage accounts
US9575981B2 (en) 2012-04-11 2017-02-21 Box, Inc. Cloud service enabled to handle a set of files depicted to a user as a single file in a native operating system
US9307006B2 (en) * 2012-04-11 2016-04-05 Salesforce.Com, Inc. System and method for synchronizing data objects in a cloud based social networking environment
US9413587B2 (en) 2012-05-02 2016-08-09 Box, Inc. System and method for a third-party application to access content within a cloud-based platform
US9396216B2 (en) 2012-05-04 2016-07-19 Box, Inc. Repository redundancy implementation of a system which incrementally updates clients with events that occurred via a cloud-enabled platform
US9691051B2 (en) 2012-05-21 2017-06-27 Box, Inc. Security enhancement through application access control
US9027108B2 (en) 2012-05-23 2015-05-05 Box, Inc. Systems and methods for secure file portability between mobile applications on a mobile device
US8914900B2 (en) 2012-05-23 2014-12-16 Box, Inc. Methods, architectures and security mechanisms for a third-party application to access content in a cloud-based platform
US9053302B2 (en) 2012-06-08 2015-06-09 Oracle International Corporation Obligation system for enterprise environments
US9021099B2 (en) 2012-07-03 2015-04-28 Box, Inc. Load balancing secure FTP connections among multiple FTP servers
US9792320B2 (en) 2012-07-06 2017-10-17 Box, Inc. System and method for performing shard migration to support functions of a cloud-based service
GB2505072A (en) 2012-07-06 2014-02-19 Box Inc Identifying users and collaborators as search results in a cloud-based system
US9712510B2 (en) 2012-07-06 2017-07-18 Box, Inc. Systems and methods for securely submitting comments among users via external messaging applications in a cloud-based platform
US9473532B2 (en) 2012-07-19 2016-10-18 Box, Inc. Data loss prevention (DLP) methods by a cloud service including third party integration architectures
US9794256B2 (en) 2012-07-30 2017-10-17 Box, Inc. System and method for advanced control tools for administrators in a cloud-based service
US8868574B2 (en) 2012-07-30 2014-10-21 Box, Inc. System and method for advanced search and filtering mechanisms for enterprise administrators in a cloud-based environment
US8745267B2 (en) 2012-08-19 2014-06-03 Box, Inc. Enhancement of upload and/or download performance based on client and/or server feedback information
US9369520B2 (en) 2012-08-19 2016-06-14 Box, Inc. Enhancement of upload and/or download performance based on client and/or server feedback information
US9558202B2 (en) 2012-08-27 2017-01-31 Box, Inc. Server side techniques for reducing database workload in implementing selective subfolder synchronization in a cloud-based environment
US9135462B2 (en) 2012-08-29 2015-09-15 Box, Inc. Upload and download streaming encryption to/from a cloud-based platform
US9311071B2 (en) 2012-09-06 2016-04-12 Box, Inc. Force upgrade of a mobile application via a server side configuration file
US9195519B2 (en) 2012-09-06 2015-11-24 Box, Inc. Disabling the self-referential appearance of a mobile application in an intent via a background registration
US9117087B2 (en) 2012-09-06 2015-08-25 Box, Inc. System and method for creating a secure channel for inter-application communication based on intents
US9838370B2 (en) 2012-09-07 2017-12-05 Oracle International Corporation Business attribute driven sizing algorithms
US9069979B2 (en) 2012-09-07 2015-06-30 Oracle International Corporation LDAP-based multi-tenant in-cloud identity management system
US9621435B2 (en) 2012-09-07 2017-04-11 Oracle International Corporation Declarative and extensible model for provisioning of cloud based services
US10148530B2 (en) 2012-09-07 2018-12-04 Oracle International Corporation Rule based subscription cloning
US10521746B2 (en) 2012-09-07 2019-12-31 Oracle International Corporation Recovery workflow for processing subscription orders in a computing infrastructure system
US9467355B2 (en) 2012-09-07 2016-10-11 Oracle International Corporation Service association model
US9667470B2 (en) 2012-09-07 2017-05-30 Oracle International Corporation Failure handling in the execution flow of provisioning operations in a cloud environment
US9397884B2 (en) 2012-09-07 2016-07-19 Oracle International Corporation Workflows for processing cloud services
US9253113B2 (en) 2012-09-07 2016-02-02 Oracle International Corporation Customizable model for throttling and prioritizing orders in a cloud environment
US9542400B2 (en) 2012-09-07 2017-01-10 Oracle International Corporation Service archive support
US9292833B2 (en) 2012-09-14 2016-03-22 Box, Inc. Batching notifications of activities that occur in a web-based collaboration environment
US10200256B2 (en) 2012-09-17 2019-02-05 Box, Inc. System and method of a manipulative handle in an interactive mobile user interface
US9553758B2 (en) 2012-09-18 2017-01-24 Box, Inc. Sandboxing individual applications to specific user folders in a cloud-based service
US10915492B2 (en) 2012-09-19 2021-02-09 Box, Inc. Cloud-based platform enabled with media content indexed for text-based searches and/or metadata extraction
US9959420B2 (en) 2012-10-02 2018-05-01 Box, Inc. System and method for enhanced security and management mechanisms for enterprise administrators in a cloud-based environment
US9495364B2 (en) 2012-10-04 2016-11-15 Box, Inc. Enhanced quick search features, low-barrier commenting/interactive features in a collaboration platform
US9705967B2 (en) 2012-10-04 2017-07-11 Box, Inc. Corporate user discovery and identification of recommended collaborators in a cloud platform
US9665349B2 (en) 2012-10-05 2017-05-30 Box, Inc. System and method for generating embeddable widgets which enable access to a cloud-based collaboration platform
US9756022B2 (en) 2014-08-29 2017-09-05 Box, Inc. Enhanced remote key management for an enterprise in a cloud-based environment
EP2784717A1 (en) 2012-10-17 2014-10-01 Box, Inc. Remote key management in a cloud-based environment
US10235383B2 (en) 2012-12-19 2019-03-19 Box, Inc. Method and apparatus for synchronization of items with read-only permissions in a cloud-based environment
US9396245B2 (en) 2013-01-02 2016-07-19 Box, Inc. Race condition handling in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US9953036B2 (en) 2013-01-09 2018-04-24 Box, Inc. File system monitoring in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US9507795B2 (en) * 2013-01-11 2016-11-29 Box, Inc. Functionalities, features, and user interface of a synchronization client to a cloud-based environment
US10599671B2 (en) 2013-01-17 2020-03-24 Box, Inc. Conflict resolution, retry condition management, and handling of problem files for the synchronization client to a cloud-based platform
US9608958B2 (en) 2013-03-12 2017-03-28 Oracle International Corporation Lightweight directory access protocol (LDAP) join search mechanism
US9652460B1 (en) * 2013-05-10 2017-05-16 FotoIN Mobile Corporation Mobile media information capture and management methods and systems
US10725968B2 (en) 2013-05-10 2020-07-28 Box, Inc. Top down delete or unsynchronization on delete of and depiction of item synchronization with a synchronization client to a cloud-based platform
US10846074B2 (en) 2013-05-10 2020-11-24 Box, Inc. Identification and handling of items to be ignored for synchronization with a cloud-based platform by a synchronization client
GB2515192B (en) 2013-06-13 2016-12-14 Box Inc Systems and methods for synchronization event building and/or collapsing by a synchronization component of a cloud-based platform
US9805050B2 (en) 2013-06-21 2017-10-31 Box, Inc. Maintaining and updating file system shadows on a local device by a synchronization client of a cloud-based platform
US10229134B2 (en) 2013-06-25 2019-03-12 Box, Inc. Systems and methods for managing upgrades, migration of user data and improving performance of a cloud-based platform
US10110656B2 (en) 2013-06-25 2018-10-23 Box, Inc. Systems and methods for providing shell communication in a cloud-based platform
US9535924B2 (en) 2013-07-30 2017-01-03 Box, Inc. Scalability improvement in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US9704137B2 (en) 2013-09-13 2017-07-11 Box, Inc. Simultaneous editing/accessing of content by collaborator invitation through a web-based or mobile application to a cloud-based collaboration platform
GB2518298A (en) 2013-09-13 2015-03-18 Box Inc High-availability architecture for a cloud-based concurrent-access collaboration platform
US9213684B2 (en) 2013-09-13 2015-12-15 Box, Inc. System and method for rendering document in web browser or mobile device regardless of third-party plug-in software
US8892679B1 (en) 2013-09-13 2014-11-18 Box, Inc. Mobile device, methods and user interfaces thereof in a mobile device platform featuring multifunctional access and engagement in a collaborative environment provided by a cloud-based platform
US10509527B2 (en) 2013-09-13 2019-12-17 Box, Inc. Systems and methods for configuring event-based automation in cloud-based collaboration platforms
US9535909B2 (en) 2013-09-13 2017-01-03 Box, Inc. Configurable event-based automation architecture for cloud-based collaboration platforms
US10866931B2 (en) 2013-10-22 2020-12-15 Box, Inc. Desktop application for accessing a cloud collaboration platform
US9405904B1 (en) * 2013-12-23 2016-08-02 Symantec Corporation Systems and methods for providing security for synchronized files
US10530854B2 (en) 2014-05-30 2020-01-07 Box, Inc. Synchronization of permissioned content in cloud-based environments
US9602514B2 (en) 2014-06-16 2017-03-21 Box, Inc. Enterprise mobility management and verification of a managed application by a content provider
US10164901B2 (en) 2014-08-22 2018-12-25 Oracle International Corporation Intelligent data center selection
US9894119B2 (en) 2014-08-29 2018-02-13 Box, Inc. Configurable metadata-based automation and content classification architecture for cloud-based collaboration platforms
US10574442B2 (en) 2014-08-29 2020-02-25 Box, Inc. Enhanced remote key management for an enterprise in a cloud-based environment
US10038731B2 (en) 2014-08-29 2018-07-31 Box, Inc. Managing flow-based interactions with cloud-based shared content
US9893952B2 (en) * 2015-01-09 2018-02-13 Microsoft Technology Licensing, Llc Dynamic telemetry message profiling and adjustment
US9639715B2 (en) 2015-04-27 2017-05-02 Microsoft Technology Licensing, Llc Protecting user identifiable information in the transfer of telemetry data
US10992748B1 (en) * 2015-06-18 2021-04-27 EMC IP Holding Company LLC Verification of event-based synchronization
US10721298B1 (en) 2015-06-18 2020-07-21 EMC IP Holding Company LLC Learning client preferences to optimize event-based synchronization
US10242024B1 (en) 2015-06-18 2019-03-26 EMC IP Holding Company LLC Dynamic reprioritization of content download during synchronization
US10235331B1 (en) 2015-06-18 2019-03-19 EMC IP Holding Company LLC Event-based synchronization in a file sharing environment
US10282255B2 (en) * 2015-07-15 2019-05-07 Microsoft Technology Licensing, Llc Coordinating file synchronization between a sync engine and another application that supports document collaboration
US10762054B2 (en) 2016-07-22 2020-09-01 Microsoft Technology Licensing, Llc Cloud content states determination logic
US10025671B2 (en) * 2016-08-08 2018-07-17 International Business Machines Corporation Smart virtual machine snapshotting
US10263835B2 (en) * 2016-08-12 2019-04-16 Microsoft Technology Licensing, Llc Localizing network faults through differential analysis of TCP telemetry
US20180335902A1 (en) * 2017-05-16 2018-11-22 Apple Inc. Techniques for dynamically displaying relevant files for selection
US10795812B1 (en) * 2017-06-30 2020-10-06 EMC IP Holding Company LLC Virtual copy forward method and system for garbage collection in cloud computing networks
US10747643B2 (en) 2018-05-23 2020-08-18 Dropbox, Inc. System for debugging a client synchronization service
US10970193B2 (en) 2018-05-23 2021-04-06 Dropbox, Inc. Debugging a client synchronization service
CN109032536B (zh) * 2018-08-31 2021-08-10 郑州云海信息技术有限公司 基于分布式集群系统的数据存储方法、装置、系统及设备
CN110995734B (zh) * 2019-12-12 2020-12-15 深圳大学 基于纠错码的云存储审计方法、系统及计算机设备
WO2021243344A1 (en) * 2020-05-26 2021-12-02 Hewlett-Packard Development Company, L.P. Repair instructions
CN111596933B (zh) * 2020-07-09 2024-08-16 腾讯科技(深圳)有限公司 文件处理方法、装置、电子设备及计算机可读存储介质
US11880347B2 (en) * 2020-11-23 2024-01-23 Microsoft Technology Licensing, Llc. Tuning large data infrastructures
US11782764B2 (en) 2021-07-07 2023-10-10 International Business Machines Corporation Differentiated workload telemetry
US11928131B2 (en) 2021-09-27 2024-03-12 International Business Machines Corporation Synchronized activation of datasets in multicloud computing environment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1681652A2 (en) * 2005-01-14 2006-07-19 Microsoft Corporation Method nad system for synchronizing multiple user revisions to a shared object
US20070283050A1 (en) * 2006-06-05 2007-12-06 Seagate Technology, Llc Scheduling reporting of synchronization states
US20100293142A1 (en) * 2009-05-12 2010-11-18 Revinetix, Inc. System and method for transmitting needed portions of a data file between networked computers

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6401104B1 (en) 1999-07-03 2002-06-04 Starfish Software, Inc. System and methods for synchronizing datasets using cooperation among multiple synchronization engines
US7917628B2 (en) * 1999-12-02 2011-03-29 Western Digital Technologies, Inc. Managed peer-to-peer applications, systems and methods for distributed data access and storage
JP4001452B2 (ja) 2000-07-19 2007-10-31 三菱電機株式会社 情報整合性管理システム
US7134116B1 (en) * 2001-04-30 2006-11-07 Mips Technologies, Inc. External trace synchronization via periodic sampling
US7216338B2 (en) * 2002-02-20 2007-05-08 Microsoft Corporation Conformance execution of non-deterministic specifications for components
AU2003255972A1 (en) 2002-09-03 2004-03-29 Nokia Corporation Method, device and system for synchronizing of data providing for the handling of an interrupted synchronization process
JP4224289B2 (ja) 2002-11-20 2009-02-12 日本電信電話株式会社 データの複製管理方法
KR100491541B1 (ko) 2003-08-01 2005-05-25 니트젠테크놀러지스 주식회사 네트웍 환경에서의 컨텐츠 동기화 시스템 및 동기화 방법
US7735065B2 (en) 2003-11-14 2010-06-08 Kalpit Jain Aggregation and prioritization of application issue data
US7283986B2 (en) 2004-04-08 2007-10-16 International Business Machines Corporation End-to-end business integration testing tool
TWI252413B (en) * 2004-12-10 2006-04-01 Hon Hai Prec Ind Co Ltd System and method for updating remote computer files
US20060230349A1 (en) 2005-04-06 2006-10-12 Microsoft Corporation Coalesced per-file device synchronization status
EP2492813A3 (en) 2005-09-27 2013-01-30 Onaro Method And Systems For Validating Accessibility And Currency Of Replicated Data
CN100462995C (zh) 2005-12-10 2009-02-18 腾讯科技(深圳)有限公司 一种图像文件的验证及使用方法
CN101005428A (zh) 2006-01-19 2007-07-25 华为技术有限公司 一种检测与解决数据同步冲突的实现方法
CN101009516B (zh) 2006-01-26 2011-05-04 华为技术有限公司 一种进行数据同步的方法、系统及装置
US7840540B2 (en) 2006-04-20 2010-11-23 Datascout, Inc. Surrogate hashing
US7933296B2 (en) 2007-03-02 2011-04-26 Microsoft Corporation Services for data sharing and synchronization
US20080254777A1 (en) 2007-04-10 2008-10-16 S5 Wireless, Inc. Systems and methods for facilitating automatic generation of metadata about data that is collected by a mobile device
US8825758B2 (en) * 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
US20090196311A1 (en) 2008-01-31 2009-08-06 Microsoft Corporation Initiation and expiration of objects in a knowledge based framework for a multi-master synchronization environment
US9135321B2 (en) 2008-02-06 2015-09-15 Microsoft Technology Licensing, Llc Synchronization infrastructure for networked devices, applications and services in a loosely coupled multi-master synchronization environment
US20090300169A1 (en) 2008-06-03 2009-12-03 Microsoft Corporation Synchronization throttling based on user activity
JP5217776B2 (ja) 2008-08-25 2013-06-19 日本電気株式会社 クライアントサーバシステム、クライアントコンピュータ、ファイル管理方法及びそのプログラム
US9208315B2 (en) 2009-03-17 2015-12-08 Microsoft Corporation Identification of telemetry data
CN101582920B (zh) 2009-06-09 2012-09-05 中兴通讯股份有限公司 一种分布式文件系统中校验和同步数据块的方法及装置
JP5585062B2 (ja) 2009-12-04 2014-09-10 ソニー株式会社 情報処理装置、情報処理方法、データ管理サーバおよびデータ同期システム
US8503984B2 (en) 2009-12-23 2013-08-06 Amos Winbush, III Mobile communication device user content synchronization with central web-based records and information sharing system
US8904352B2 (en) * 2010-06-23 2014-12-02 Sap Se Systems and methods for processing source code during debugging operations
US20120066759A1 (en) * 2010-09-10 2012-03-15 Cisco Technology, Inc. System and method for providing endpoint management for security threats in a network environment
US8707035B2 (en) * 2012-03-30 2014-04-22 Decho Corporation High privacy of file synchronization with sharing functionality

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1681652A2 (en) * 2005-01-14 2006-07-19 Microsoft Corporation Method nad system for synchronizing multiple user revisions to a shared object
RU2404450C2 (ru) * 2005-01-14 2010-11-20 Майкрософт Корпорейшн Способ и система для синхронизации множественных пользовательских ревизий совместно используемого объекта
US20070283050A1 (en) * 2006-06-05 2007-12-06 Seagate Technology, Llc Scheduling reporting of synchronization states
US20100293142A1 (en) * 2009-05-12 2010-11-18 Revinetix, Inc. System and method for transmitting needed portions of a data file between networked computers

Also Published As

Publication number Publication date
CA2866449A1 (en) 2013-10-10
RU2014140203A (ru) 2016-04-20
WO2013152058A2 (en) 2013-10-10
US20180365264A1 (en) 2018-12-20
KR102051692B1 (ko) 2019-12-03
US11086825B2 (en) 2021-08-10
US20130268491A1 (en) 2013-10-10
US10089323B2 (en) 2018-10-02
JP6385336B2 (ja) 2018-09-05
WO2013152058A3 (en) 2014-06-05
MX352126B (es) 2017-11-09
CN104246767A (zh) 2014-12-24
BR112014023106B1 (pt) 2021-10-05
KR20150096312A (ko) 2015-08-24
EP2834759A2 (en) 2015-02-11
CA2866449C (en) 2021-01-05
CN104246767B (zh) 2018-08-14
AU2013243512A1 (en) 2014-09-25
MX2014011988A (es) 2014-11-10
JP2015520435A (ja) 2015-07-16
AU2013243512B2 (en) 2017-11-02
BR112014023106A2 (pt) 2017-06-20
EP2834759B1 (en) 2020-11-25

Similar Documents

Publication Publication Date Title
RU2648608C2 (ru) Система телеметрии для облачной системы синхронизации
US10565077B2 (en) Using cognitive technologies to identify and resolve issues in a distributed infrastructure
EP3387528B1 (en) Updating dependent services
US11544137B2 (en) Data processing platform monitoring
US12079342B2 (en) Data lineage management
US20150213100A1 (en) Data synchronization method and system
US20210182156A1 (en) System and method for a backup and recovery of application data using containerized backups
US8683263B2 (en) Cooperative client and server logging
KR102044046B1 (ko) 텔레메트리 파일 해시 및 충돌 검출 기법
US10061863B2 (en) Asset manager
US9626328B1 (en) Method and system for on-demand aggregated logging for distributed systems
WO2017157111A1 (zh) 防止内存数据丢失的的方法、装置和系统
US10432490B2 (en) Monitoring single content page application transitions
CN114518984A (zh) 一种埋点信息的上报方法、装置、存储介质及终端设备
US20120173658A1 (en) Schema Validation Proxy
US20210173626A1 (en) Fencing execution of external tools during software changes
US10289691B2 (en) Dynamic replication of networked files
CN115858267A (zh) 一种电路的测试方法、装置、电子设备和存储介质
CN118656357A (zh) 一种数据迁移方法、装置、电子设备、存储介质及产品
CN117234814A (zh) 数据库集群切换方法、装置、电子设备及可读存储介质
US10579497B2 (en) Providing context simulation
CN113742539A (zh) 作品授权方法、装置、介质和计算设备
CN118445266A (zh) 一种数据迁移验证方法、系统、电子设备及存储介质

Legal Events

Date Code Title Description
HZ9A Changing address for correspondence with an applicant