WO2015087019A1 - Method of synchronization of data between a set of terminals - Google Patents

Method of synchronization of data between a set of terminals Download PDF

Info

Publication number
WO2015087019A1
WO2015087019A1 PCT/FR2014/053312 FR2014053312W WO2015087019A1 WO 2015087019 A1 WO2015087019 A1 WO 2015087019A1 FR 2014053312 W FR2014053312 W FR 2014053312W WO 2015087019 A1 WO2015087019 A1 WO 2015087019A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
terminal
terminals
synchronization
list
Prior art date
Application number
PCT/FR2014/053312
Other languages
French (fr)
Inventor
Luc D'URSO
Original Assignee
Wooxo
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 Wooxo filed Critical Wooxo
Priority to EP14825423.8A priority Critical patent/EP3080968A1/en
Publication of WO2015087019A1 publication Critical patent/WO2015087019A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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
    • G06F16/1787Details of non-transparently synchronising file systems

Definitions

  • the present invention relates to means for sharing and synchronizing data between a plurality of terminals. It relates more particularly to means for sharing and synchronizing files stored according to different organizations specific to each terminal.
  • a user usually has several terminals through which he accesses, creates or modifies data, typically office files, photographs, videos, or presentations.
  • Synchronization systems have been developed to allow the sharing and synchronization of files between the different terminals, as they are connected to the Internet.
  • such systems rely on the deployment of a synchronization application on each terminal and on the provision of a directory dedicated to synchronization, in which the user copies or creates the files to be synchronized between the terminals.
  • a first synchronization directory is created by the synchronization application when it is installed on the user's laptop
  • a second synchronization directory is created by the synchronization application when it is installed on the tablet of the user.
  • To share a folder A having a plurality of office files, from the laptop the user copies this folder A in the first synchronization directory.
  • the synchronization application and the synchronization system are then responsible for copying the folder A and its contents in the second synchronization directory on the user's tablet.
  • the user can then access the contents of the A folder from his tablet.
  • the user can optionally update the contents of the A folder from his tablet. This update will then be reflected by the synchronization system in the first synchronization directory of the laptop.
  • this type of system suffers from several limitations.
  • One limitation is that all synchronized files must be contained in the synchronization directory. This problem arises especially when one of the terminals has a storage capacity superior to the others.
  • the disk space required to synchronize said data on the user's mobile phone can be prove too important.
  • the synchronization directory of each terminal must be able to accommodate all the data to be synchronized.
  • Another limitation is the need to rearrange the storage of the files to be synchronized according to the organization required by the synchronization system.
  • the obligation to use a dedicated synchronization directory forces the user to superimpose a new organization to its usual ranking logic. For example, if the user usually stores his photographs in a subdirectory titled "my photos" of his personal space, he will have to, to synchronize his photographs between his terminals, either move or duplicate the subdirectory "my pictures" in the synchronization directory.
  • synchronization systems offer very limited adaptability, and exclude, from synchronization, the user-specific data processed by an application server.
  • an application server is adapted to process data for a plurality of distinct users. Using a single synchronization directory for multiple users is therefore neither efficient nor generally desirable.
  • One of the objects of the invention is to provide efficient means for sharing and synchronizing data between a plurality of terminals.
  • Another object of the invention is to provide synchronization means suitable for adapt to the organization modes and the storage capacities of each of the terminals, and in particular to the application servers.
  • Another object of the invention is to provide synchronization means enabling a user to access all his data, distributed over all of his terminals, without restrictions due to the storage capacity of the terminal used to access said data.
  • Another object of the invention is to provide synchronization means respecting the storage organization specific to each terminal, in particular the existing organization of directories and files, and not requiring the use of a specific predefined organization at synchronization.
  • Another object of the invention is to enable the synchronization of data between different types of terminals, in particular between computers, tablets, mobile phones and application servers.
  • the invention relates to a method for synchronizing data between a set of terminals accessible to a user.
  • the method comprises the following steps, implemented by a first terminal of the set of terminals: selection of a second terminal from among all the terminals; obtaining a storage organization specific to the second terminal, and selecting in said organization a path to a set of data; receiving and storing all selected data; maintaining synchronization of all data between the first and second terminals.
  • the storage space available on the first terminal is limited, and more particularly less important than all the data on the second terminal, synchronization can be performed. It is then possible not only to access at any time all the data stored on the second terminal, but also to optimize the space occupied on the first terminal, because only the selected set of data is actually transferred.
  • the storage organization of the second terminal being obtained and used to select the data set, no constraint weighs on said organization: it is not necessary for the data to be made available on the second terminal according to a specific or specific storage organization. This is therefore particularly useful for synchronizing data that can not be stored according to a specific organization without duplication, especially in the case of application server that uses a clean storage organization and often not adaptable.
  • the terminals belong for example to one or more of the following categories: a desktop computer, a laptop, a mobile phone, a tablet, an application server, a data storage system, in particular a storage system network or "Network Attached Storage” in English, network connection equipment provided with storage means, in particular boxes or “boxes” made available by telecommunications operators to access their network and including storage means such as hard drives.
  • a terminal of the application server category for example provides a service for processing word processing, spreadsheet, contact and calendar management, messaging, business software - for example management or access to a business database, or an access portal and / or data / knowledge sharing.
  • the set of terminals accessible to a user includes in particular the terminals of which the user is the owner and / or the person authorized to use the terminals and / or the person having the access rights required to access the terminals and / or the data set.
  • Each terminal may comprise computer means, typically computing means such as processors, as well as storage means such as hard disks and / or the "FLASH" type rewritable semiconductor mass memory.
  • Each terminal can store using the storage means the data according to a specific organization.
  • the capacity of the storage means of each available terminal is not necessarily equal to that of the other terminals.
  • the terminals, in particular the first terminal may comprise display and interaction means - for example a touch screen, a set consisting of a keyboard, a mouse and a screen - to enable a user interact with locally executed applications.
  • the data set is for example a file.
  • the dataset can also be an image, sound, video, data structure, text, etc.
  • the dataset path is a way to locate the location of the dataset in the storage organization.
  • the typology of the organization is a tree with files contained in directories and subdirectories.
  • the storage organization includes a description of the files contained in directories and subdirectories.
  • a file A can be stored on a terminal at the location indicated by the path / Rep1 / RepB / A while on another terminal the same file A will be stored in the location indicated by the path d access / Rep2 / RepB / rep3 / A.
  • this arrangement makes it possible to synchronize only the tree of the storage organization and at the same time not to not synchronize folders, specifically not to synchronize the contents of files in folders. Indeed, the contents of the files are not synchronized, but the contents of the files remain accessible to the user. Thus, thanks to this arrangement, the bandwidth consumed is optimized because the amount of data exchanged is reduced.
  • the data set is accessible on the first terminal, including when the first terminal does not have access to the Internet.
  • these are detected and then transmitted to all the terminals on which the set has been synchronized.
  • the corresponding locally stored dataset is updated accordingly.
  • the set of data received by the first terminal can be stored on the first terminal according to a storage organization substantially similar to the own storage organization of the second terminal.
  • a storage organization substantially similar to the own storage organization of the second terminal.
  • synchronization is facilitated, and it is possible to keep a single storage organization between multiple terminals if necessary.
  • the same path can be considered a similar storage organization for a particular data set.
  • the method also comprises the following steps: following the selection of the path to the set of data, selection between a synchronization operation and a download operation; in case of selection of the synchronization operation, reception and storage of the selected set of data; then maintaining synchronization of all the data between the first and the second terminal; in case of selection of the download operation, reception and storage of all data selected according to a storage organization specific to the first terminal.
  • the possibility of downloading the data set instead of synchronizing it.
  • this choice can be made by the user.
  • the set of data downloaded is stored on the terminal implementing the method, according to the organization of said terminal.
  • the path to the downloaded dataset may be different from the path chosen in the second step.
  • the choice of another path can be made by the user. In the case of user modifications of the locally recorded data set, the latter will not be carried over to the corresponding data stored on the terminal having transmitted the data.
  • the method may further comprise the following steps: obtaining a list of synchronized data sets between the first terminal and the other terminals of the set of terminals; for each dataset in the dataset list, obtaining the date of the last review and / or edit; for each set of data in the list of data sets, if the date of the last consultation and / or modification is greater than a threshold, stopping the maintenance of the synchronization of all the data on the first terminal.
  • the method makes it possible to optimize the use of the resources, allowing not only not to to synchronize data unnecessarily, but also to allow the deletion of such data locally. However, even when this data is deleted from the first terminal, it remains available on the second terminal and can be synchronized again.
  • the steps of obtaining the list of synchronized data sets, obtaining the date of the last consultation and / or modification, and stopping the maintenance of the synchronization are for example repeated at a determined time interval.
  • the time interval and the threshold may be substantially identical.
  • the threshold is for example substantially equal to two months, which corresponds to a particularly effective duration in terms of optimization, since it has been found that this is the average duration between the creation phase of a game of data and the end of the edition of said game, during which time the bulk of synchronization needs is manifested.
  • the invention relates to a terminal, adapted to implement the method according to the first aspect, and comprising communication means configured to allow the exchange of data with a set of terminals accessible to a user.
  • the invention relates to a system comprising communication means and a plurality of terminals according to the second aspect.
  • the invention relates to a computer program comprising instructions for performing the steps of the method according to the first aspect, when said program is executed by a processor.
  • Each of these programs can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any form What other form is desirable?
  • scripting languages such as in particular such, javascript, python, perl that allow code generation "on demand” and do not require significant overhead for their generation or modification.
  • the invention relates to a computer-readable recording medium on which is recorded a computer program comprising instructions for executing the steps of the method according to the first aspect.
  • the information carrier may be any entity or any device capable of storing the program.
  • the medium may comprise storage means, such as a ROM, for example a CD-ROM or a microelectronic circuit ROM, or a magnetic recording means, for example a diskette or a hard disk.
  • the information medium may be a transmissible medium such as an electrical or optical signal, which may be conveyed by an electrical or optical cable, by radio or by other means.
  • the program according to the invention can be downloaded in particular on an Internet or Intranet network.
  • the information carrier may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
  • FIG. 1 is a diagram of a system for sharing and synchronizing data between a plurality of terminals according to one embodiment
  • FIG. 2 is a block diagram of a method for sharing and synchronizing data between a plurality of terminals according to one embodiment
  • FIG. 3 is a schematic example of a user interface according to the invention for enabling the selection of one of the terminals accessible to the user;
  • FIG. 4 is a schematic example of a user interface according to the invention for enabling the selection of the access path to the data to be downloaded and / or synchronized in the storage organization of the selected terminal;
  • FIG. 5 is a schematic example of a user interface according to the invention, to allow the choice between a download or synchronization operation;
  • FIG. 6 is a block diagram of a synchronization optimization method, according to one embodiment.
  • FIG. 1 schematically illustrates a system for sharing and synchronizing data between a plurality of terminals according to one embodiment. It comprises a management system 10 provided with means for coupling to a cloud-based computer infrastructure 12, more generally referred to as the Anglo-Saxon term "cloud computing".
  • the management system 10 comprises computer means, typically computing means such as processors, as well as storage devices such as hard disks and RAM.
  • the computer means of the management system 10 make it possible in particular to manage the synchronization of data between terminals 14, and more particularly the management of the transfer of data between the terminals 14 and the security and / or access rights of the users of the system. .
  • the following terminals 14 are represented: a desktop computer 14a, a mobile phone 14b, a tablet 14c and an application server 14d.
  • the application server 14d provides, for example, a service for processing word processing, spreadsheet, contact and calendar management, messaging, business software - for example management or access to a database business data.
  • the terminals 14 could comprise one or more of the following terminals (not shown): a data storage system, in particular a Network Attached Storage ("Network Attached Storage”), network connection equipment provided with means storage, in particular boxes or "boxes" made available by telecommunications operators to access their network and comprising storage means such as hard disks.
  • Network Attached Storage Network Attached Storage
  • each terminal 14 comprises computer means, typically computing means such as processors, as well as storage means such as hard disks and / or the "FLASH" type rewritable semiconductor mass memory.
  • Each terminal 14 stores using the storage means the data according to a proper organization.
  • the application server 14d stores using the storage means the data relating to the (x) service (s) delivered to the user, according to a specific organization.
  • the capacity of the storage means of each available terminal 14 is not necessarily equal to that of the other terminals.
  • Each terminal 14 also comprises means for coupling to the infrastructure 12, typically via an Internet network.
  • Some terminals, for example the desktop computer 14a, the mobile phone 14b, and the tablet 14c may include display and interaction means - for example a touch screen, a set consisting of a keyboard, a mouse and a screen - to allow a user to interact with locally executed applications.
  • Each terminal 14 is provided with a synchronization module 16.
  • the synchronization module 16 is for example an application, installed on the terminal, adapted to access the data stored locally, and configured to implement a user interface and communicate with the management system 10, to enable sharing and synchronization of data with the other terminals.
  • FIG. 2 illustrates, by a block diagram, a method of sharing and synchronizing data between a plurality of terminals according to one embodiment.
  • the method is particularly adapted to be implemented by the synchronization module 16 on one of the terminals.
  • the method is implemented by the synchronization module 16 of the desktop computer 14a.
  • the user wishes to access and / or synchronize, from his desktop computer 14a, an image contained in a file entitled "Plan.JPG" and stored, on the mobile phone 14b, in the directory "Docs.” .
  • the path to the "Plan.JPG" file is "/Docs./Plan.JPG".
  • a first step 1 10 one of the terminals, included in a list of terminals to which the user has access, is selected.
  • the list of accessible terminals can be obtained by the synchronization module 16 by sending a request to the management system 10, which sends back said list, or the modifications of said list since the reception of the last request.
  • the list of accessible terminals can also be maintained locally by the synchronization module 16 and created and / or updated during a configuration phase.
  • FIG. 3 A schematic example of a user interface, implemented by the synchronization module 16 to allow the user to select one of the terminals of said list, is illustrated in FIG. 3.
  • the list includes an entry for the desktop computer 14a, an input for the mobile phone 14b, an input for the tablet 14c, and an input for the application server 14d. The user can thus choose the terminal to which he wishes to access, in this case, the mobile phone 14b.
  • a path to the data to be downloaded and / or synchronized is identified in the storage organization specific to the terminal selected during the first step.
  • the storage organization of said terminal can be obtained by the synchronization module 16 by sending a request to the management system 10, which in turn transmits said organization or the modifications of said organization since the reception of the last request.
  • the typology of the organization is a tree with files contained in directories.
  • a user interface allowing navigation in the organization can be implemented by the synchronization module 16. Such an interface is shown schematically. In this example, the user browses the tree in which the mobile phone 14b stores the data, until identifying the path to the file "Plan.JPG", namely "/Docs./ plan.jpg ".
  • a third step 130 the choice between a synchronization or download operation is performed for the data corresponding to the path chosen during the second step 120.
  • the synchronization module 16 can be configured to provide the user with an interface allowing him to make this choice. Such an interface is shown schematically in FIG. 5. In this example, the user chooses from a menu whether he wishes to download the "Plan.JPG" file.
  • the synchronization module 16 can be configured to automatically choose between download or synchronization, depending for example on a configuration parameter or an earlier choice of the user.
  • the data corresponding to the path chosen during the second step 120 are downloaded during a fourth step 140.
  • the file "Plan.JPG” will be downloaded from the mobile phone 16b to the computer 14a.
  • the downloaded data will be stored on the terminal implementing the method, according to the organization of said terminal.
  • the path to downloaded data may be different from the path chosen during the second step.
  • the choice of another path for storing the downloaded data may be proposed to the user. For example, the user can choose to store on the computer 14a the file "Plan.JPG" in a location corresponding to the path "/ MyFiles / My Documents / Maps / Plan.JPG".
  • the data corresponding to the path chosen during the second step 120 are synchronized during a fifth step 150.
  • the file "Plan.JPG” will be downloaded from the mobile phone 16b to the computer 14a, then stored on the computer 14a keeping according to the organization of the mobile phone 16b. In particular, the path to the downloaded data will be identical to the path chosen during the second step.
  • the file "Plan.JPG” will be stored on the computer 14a at the location corresponding to the path "/Docs./Plan.JPG".
  • the file "Plan.JPG" and synchronized will now be accessible on the computer 14a, including when the computer 14a will not be able to access the infrastructure 12, for example when he will not have access to Internet. Then during a step 160 of maintaining the synchronization, all the data is kept synchronized between the first and the second terminal. In particular, in the event of changes by the user of the locally registered file, the latter will initially be detected and then transmitted via the infrastructure to all the terminals on which the file has been synchronized. The detection of the modifications can in particular be carried out by the synchronization module 16. When these modifications are received, the corresponding locally stored file is updated accordingly.
  • the changes made are detected by the synchronization module 16 of the computer 14a, which transmits them via the infrastructure 12 , on the mobile phone 14b.
  • the synchronization module of the mobile phone 14b receives these modifications, and updates the file "Plan.JPG" on the mobile phone 14b accordingly.
  • a method for optimizing the fifth synchronization step is implemented.
  • This optimization method may in particular be implemented by the synchronization module 16.
  • FIG. 6 schematically illustrates the steps of such a method.
  • the optimization method includes an optional programming step 210 of a scheduled synchronization optimization task.
  • the periodicity of the execution of the scheduled optimization task is chosen, for example a number of days, weeks, months and / or years. A periodicity of two months is for example selected.
  • the scheduled task has the following steps:
  • the information necessary for constituting the list can be obtained from the synchronization module 16.
  • the list can also be created and updated when a new file is synchronized on the terminal executing the optimization process. This list can still be obtained and / or managed by the infrastructure 12.
  • a step 230 during which, for each file of the list of files synchronized on the terminal executing the optimization process, it is checked whether said file has been opened on the terminal since the last execution of the scheduled task;
  • a step 240 during which all the files, which have not been opened on the terminal since the last execution of the scheduled task, are removed from the list of files to be synchronized.
  • the synchronization module will receive a request to terminate the synchronization of said files, so that subsequent changes are not carried over to other terminals.

Abstract

Method of synchronization of data between a set of terminals. The invention relates to means for sharing and synchronizing data between a set of terminals. In particular, the synchronizing means are adapted to be implemented on a first terminal from among the set of terminals and comprise: • means adapted for allowing the selection of a second terminal from among said terminals; • means for obtaining a storage organization specific to the second terminal, and for allowing the selection in said organization of a path for access to a set of data; • means of receiving and storing the selected set of data; • means of maintaining the synchronization of the set of data between the first and the second terminal.

Description

PROCÉDÉ DE SYNCHRONISATION DE DONNÉES ENTRE UN ENSEMBLE DE  METHOD FOR SYNCHRONIZING DATA BETWEEN A SET OF
TERMINAUX  TERMINALS
La présente invention se rapporte à des moyens de partage et de synchronisation de données entre une pluralité de terminaux. Elle concerne plus particulièrement des moyens pour partager et synchroniser des fichiers stockés selon différentes organisations propres à chaque terminal. The present invention relates to means for sharing and synchronizing data between a plurality of terminals. It relates more particularly to means for sharing and synchronizing files stored according to different organizations specific to each terminal.
Un utilisateur dispose usuellement de plusieurs terminaux grâce auxquels il accède, crée ou modifie des données, typiquement des fichiers bureautiques, des photographies, des vidéos, ou des présentations. A user usually has several terminals through which he accesses, creates or modifies data, typically office files, photographs, videos, or presentations.
Des systèmes de synchronisation ont été développés afin de permettre le partage et la synchronisation de fichiers entre les différents terminaux, dès lors que ces derniers sont connectés à Internet. En particulier, de tels systèmes reposent sur le déploiement d'une application de synchronisation sur chaque terminal et sur la mise à disposition d'un répertoire dédié à la synchronisation, dans lequel l'utilisateur copie ou crée les fichiers à synchroniser entre les terminaux. Par exemple, un premier répertoire de synchronisation est créé par l'application de synchronisation lors de son installation sur l'ordinateur portable de l'utilisateur, un deuxième répertoire de synchronisation étant créé par l'application de synchronisation lors de son installation sur la tablette de l'utilisateur. Pour partager un dossier A comportant une pluralité de fichiers bureautiques, depuis l'ordinateur portable, l'utilisateur copie ce dossier A dans le premier répertoire de synchronisation. L'application de synchronisation et le système de synchronisation se chargent alors de copier le dossier A et son contenu dans le deuxième répertoire de synchronisation sur la tablette de l'utilisateur. L'utilisateur peut alors accéder au contenu du dossier A depuis sa tablette. L'utilisateur peut éventuellement mettre à jour le contenu du dossier A depuis sa tablette. Cette mise à jour sera alors répercutée, par le système de synchronisation, dans le premier répertoire de synchronisation de l'ordinateur portable. Cependant, ce type de systèmes souffre de plusieurs limitations. Une limitation tient au fait que l'ensemble des fichiers synchronisés doit être contenu dans le répertoire de synchronisation. Ce problème se présente notamment lorsqu'un des terminaux dispose d'une capacité de stockage supérieure aux autres. Par exemple, si un des terminaux est un serveur d'entreprise sur lequel une grande quantité de données professionnelles est mise à disposition de l'utilisateur, l'espace disque requis pour synchroniser lesdites données sur le téléphone mobile de l'utilisateur peut s'avérer trop important. En effet, le répertoire de synchronisation de chaque terminal doit pouvoir accueillir l'ensemble des données à synchroniser. Synchronization systems have been developed to allow the sharing and synchronization of files between the different terminals, as they are connected to the Internet. In particular, such systems rely on the deployment of a synchronization application on each terminal and on the provision of a directory dedicated to synchronization, in which the user copies or creates the files to be synchronized between the terminals. For example, a first synchronization directory is created by the synchronization application when it is installed on the user's laptop, a second synchronization directory is created by the synchronization application when it is installed on the tablet of the user. To share a folder A having a plurality of office files, from the laptop, the user copies this folder A in the first synchronization directory. The synchronization application and the synchronization system are then responsible for copying the folder A and its contents in the second synchronization directory on the user's tablet. The user can then access the contents of the A folder from his tablet. The user can optionally update the contents of the A folder from his tablet. This update will then be reflected by the synchronization system in the first synchronization directory of the laptop. However, this type of system suffers from several limitations. One limitation is that all synchronized files must be contained in the synchronization directory. This problem arises especially when one of the terminals has a storage capacity superior to the others. For example, if one of the terminals is an enterprise server on which a large amount of business data is made available to the user, the disk space required to synchronize said data on the user's mobile phone can be prove too important. Indeed, the synchronization directory of each terminal must be able to accommodate all the data to be synchronized.
Une autre limitation se trouve dans la nécessité de réorganiser le stockage des fichiers à synchroniser selon l'organisation requise par le système de synchronisation. Ainsi, l'obligation d'utiliser un répertoire de synchronisation dédié contraint l'utilisateur à superposer une nouvelle organisation à sa logique de classement habituelle. Par exemple, si l'utilisateur stocke habituellement ses photographies dans un sous-répertoire intitulé «mes photos» de son espace personnel, il devra, pour synchroniser ses photographies entre ses terminaux, soit déplacer soit dupliquer le sous-répertoire «mes photo» dans le répertoire de synchronisation. Another limitation is the need to rearrange the storage of the files to be synchronized according to the organization required by the synchronization system. Thus, the obligation to use a dedicated synchronization directory forces the user to superimpose a new organization to its usual ranking logic. For example, if the user usually stores his photographs in a subdirectory titled "my photos" of his personal space, he will have to, to synchronize his photographs between his terminals, either move or duplicate the subdirectory "my pictures" in the synchronization directory.
En outre, de tels systèmes de synchronisation offrent une adaptabilité très restreinte, et excluent, de la synchronisation, les données propres à l'utilisateur traitées par un serveur d'application. En effet, un serveur d'application est adapté pour traiter des données pour une pluralité d'utilisateurs distincts. Utiliser un répertoire unique de synchronisation pour plusieurs utilisateurs n'est donc ni efficace ni généralement souhaitable. In addition, such synchronization systems offer very limited adaptability, and exclude, from synchronization, the user-specific data processed by an application server. Indeed, an application server is adapted to process data for a plurality of distinct users. Using a single synchronization directory for multiple users is therefore neither efficient nor generally desirable.
C'est pourquoi il existe encore un besoin pour des moyens efficaces de partage et de synchronisation de données entre une pluralité de terminaux, lesdits moyens étant aptes à s'adapter aux modes d'organisation et aux capacités de stockage de chacun des terminaux. This is why there is still a need for efficient means of sharing and synchronization of data between a plurality of terminals, said means being able to adapt to the organization modes and storage capacities of each of the terminals.
Un des objets de l'invention est de fournir des moyens efficaces de partage et de synchronisation de données entre une pluralité de terminaux. Un autre objet de l'invention est de fournir des moyens de synchronisation aptes à s'adapter aux modes d'organisation et aux capacités de stockage de chacun des terminaux, et en particulier aux serveurs applicatifs. Un autre objet de l'invention est de fournir des moyens de synchronisation permettant à un utilisateur d'accéder à toutes ses données, réparties sur l'ensemble de ses terminaux, sans restrictions dues à la capacité de stockage du terminal utilisé pour accéder auxdites données. Un autre objet de l'invention est de fournir des moyens de synchronisation respectant l'organisation de stockage propre à chaque terminal, en particulier l'organisation existante des répertoires et des fichiers, et ne nécessitant pas l'emploi d'une organisation prédéfinie spécifique à la synchronisation. Un autre objet de l'invention est de permettre la synchronisation de données entre différents types de terminaux, en particulier entre des ordinateurs, des tablettes, des téléphones mobiles et des serveurs d'application. One of the objects of the invention is to provide efficient means for sharing and synchronizing data between a plurality of terminals. Another object of the invention is to provide synchronization means suitable for adapt to the organization modes and the storage capacities of each of the terminals, and in particular to the application servers. Another object of the invention is to provide synchronization means enabling a user to access all his data, distributed over all of his terminals, without restrictions due to the storage capacity of the terminal used to access said data. . Another object of the invention is to provide synchronization means respecting the storage organization specific to each terminal, in particular the existing organization of directories and files, and not requiring the use of a specific predefined organization at synchronization. Another object of the invention is to enable the synchronization of data between different types of terminals, in particular between computers, tablets, mobile phones and application servers.
Un ou plusieurs de ces objets sont remplis par le procédé, le terminal, le système, le programme d'ordinateur et le support d'enregistrement selon les revendications indépendantes. Les revendications dépendantes fournissent en outre des solutions à ces objets et/ou d'autres avantages. One or more of these objects are filled by the method, the terminal, the system, the computer program and the recording medium according to the independent claims. The dependent claims further provide solutions to these objects and / or other advantages.
Plus particulièrement, selon un premier aspect, l'invention se rapporte à un procédé de synchronisation de données entre un ensemble de terminaux accessibles à un utilisateur. Le procédé comporte les étapes suivantes, mises en œuvre par un premier terminal de l'ensemble de terminaux: sélection d'un deuxième terminal parmi l'ensemble des terminaux; obtention d'une organisation de stockage propre au deuxième terminal, et sélection dans ladite organisation d'un chemin d'accès à un ensemble de données; réception et stockage de l'ensemble des données sélectionné; maintien de la synchronisation de l'ensemble des données entre le premier et le deuxième terminal. En permettant de synchroniser sur le premier terminal seulement un ensemble de données précis présent sur le deuxième terminal, et non la totalité des données présentes, il est alors possible de ne transférer sur le premier terminal que l'ensemble de données sélectionné. Ainsi si l'espace de stockage disponible sur le premier terminal est limité, et plus particulièrement moins important que la totalité des données présentes sur le deuxième terminal, la synchronisation pourra être effectuée. Il est alors possible non seulement d'accéder à tout instant à la totalité des données stockées sur le deuxième terminal, mais aussi d'optimiser l'espace occupé sur le premier terminal, car seul l'ensemble de données sélectionné est effectivement transféré. En outre, l'organisation de stockage du deuxième terminal étant obtenue et utilisée pour sélectionner l'ensemble de données, aucune contrainte ne pèse sur ladite organisation: il n'est pas nécessaire que les données soient mises à disposition sur le deuxième terminal selon une organisation de stockage spécifique ou particulière. Cela est donc particulièrement utile pour synchroniser des données qui ne peuvent être stockées selon une organisation précise sans duplication, notamment dans le cas de serveur d'application qui utilise une organisation de stockage propre et souvent peu adaptable. More particularly, according to a first aspect, the invention relates to a method for synchronizing data between a set of terminals accessible to a user. The method comprises the following steps, implemented by a first terminal of the set of terminals: selection of a second terminal from among all the terminals; obtaining a storage organization specific to the second terminal, and selecting in said organization a path to a set of data; receiving and storing all selected data; maintaining synchronization of all data between the first and second terminals. By making it possible to synchronize on the first terminal only a precise set of data present on the second terminal, and not all of the data present, it is then possible to transfer to the first terminal only the selected data set. Thus if the storage space available on the first terminal is limited, and more particularly less important than all the data on the second terminal, synchronization can be performed. It is then possible not only to access at any time all the data stored on the second terminal, but also to optimize the space occupied on the first terminal, because only the selected set of data is actually transferred. In addition, the storage organization of the second terminal being obtained and used to select the data set, no constraint weighs on said organization: it is not necessary for the data to be made available on the second terminal according to a specific or specific storage organization. This is therefore particularly useful for synchronizing data that can not be stored according to a specific organization without duplication, especially in the case of application server that uses a clean storage organization and often not adaptable.
Les terminaux appartiennent par exemple à l'une ou plusieurs des catégories suivantes: un ordinateur de bureau, un ordinateur portable, un téléphone mobile, une tablette, un serveur d'application, un système de stockage de données, en particulier un système de stockage réseau ou «Network Attached Storage» en anglais, des équipements de connections au réseau pourvus de moyens de stockage, en particulier des boîtiers ou «box» mis à disposition par des opérateurs de télécommunications pour accéder à leur réseau et comportant des moyens de stockage comme des disques durs. En particulier, pour un terminal de la catégorie serveur d'application, fournit par exemple un service pour traiter des tâches bureautiques de type traitement de texte, tableur, gestion des contacts et des agendas, messagerie, un logiciel métier - par exemple un logiciel de gestion ou d'accès à une base de données métiers, ou encore un portail d'accès et/ou de partages de données/connaissances. L'ensemble de terminaux accessibles à un utilisateur regroupe notamment les terminaux dont l'utilisateur est le propriétaire et/ou la personne autorisée à utiliser les terminaux et/ou la personne ayant les droits d'accès requis pour accéder aux terminaux et/ou à l'ensemble de données. Chaque terminal peut comprendre des moyens informatiques, typiquement des moyens de calcul comme des processeurs, ainsi que des moyens de stockage comme des disques durs et/ou de la mémoire de masse à semi-conducteurs réinscriptible de type «FLASH». Chaque terminal peut stocker à l'aide des moyens de stockage les données selon une organisation propre. En outre, la capacité des moyens de stockage de chaque terminal disponible n'est pas nécessairement égale à celle des autres terminaux. Les terminaux, en particulier le premier terminal, peuvent comporter des moyens d'affichage et d'interaction — par exemple un écran tactile, un ensemble composé d'un clavier, d'une souris et d'un écran - pour permettre à un utilisateur d'interagir avec les applications exécutées localement. The terminals belong for example to one or more of the following categories: a desktop computer, a laptop, a mobile phone, a tablet, an application server, a data storage system, in particular a storage system network or "Network Attached Storage" in English, network connection equipment provided with storage means, in particular boxes or "boxes" made available by telecommunications operators to access their network and including storage means such as hard drives. In particular, for a terminal of the application server category, for example provides a service for processing word processing, spreadsheet, contact and calendar management, messaging, business software - for example management or access to a business database, or an access portal and / or data / knowledge sharing. The set of terminals accessible to a user includes in particular the terminals of which the user is the owner and / or the person authorized to use the terminals and / or the person having the access rights required to access the terminals and / or the data set. Each terminal may comprise computer means, typically computing means such as processors, as well as storage means such as hard disks and / or the "FLASH" type rewritable semiconductor mass memory. Each terminal can store using the storage means the data according to a specific organization. In addition, the capacity of the storage means of each available terminal is not necessarily equal to that of the other terminals. The terminals, in particular the first terminal, may comprise display and interaction means - for example a touch screen, a set consisting of a keyboard, a mouse and a screen - to enable a user interact with locally executed applications.
L'ensemble de données est par exemple un fichier. L'ensemble de données peut également être une image, un son, une vidéo, une structure de données, un texte, etc. The data set is for example a file. The dataset can also be an image, sound, video, data structure, text, etc.
Le chemin d'accès à l'ensemble de données est un moyen permettant de localiser dans l'organisation de stockage l'emplacement de l'ensemble de données. Typiquement, la typologie de l'organisation est une arborescence comprenant des fichiers contenus dans des répertoires et des sous-répertoires. Plus précisément, l'organisation de stockage comprend une description des fichiers contenus dans des répertoires et des sous-répertoires. Par organisation de stockage différente, il faut comprendre que, selon le terminal, l'emplacement où un même ensemble de données est stocké peut être différent, et que le chemin d'accès est donc différent. Par exemple, un fichier A peut être stocké sur un terminal à l'emplacement repéré par le chemin d'accès/Rep1/RepB/A tandis que sur un autre terminal le même fichier A sera stocké à l'emplacement repéré par le chemin d'accès/Rep2/RepB/Rep3/A. The dataset path is a way to locate the location of the dataset in the storage organization. Typically, the typology of the organization is a tree with files contained in directories and subdirectories. Specifically, the storage organization includes a description of the files contained in directories and subdirectories. By different storage organization, it should be understood that, depending on the terminal, the location where the same set of data is stored may be different, and the path is different. For example, a file A can be stored on a terminal at the location indicated by the path / Rep1 / RepB / A while on another terminal the same file A will be stored in the location indicated by the path d access / Rep2 / RepB / rep3 / A.
Avantageusement, cette disposition permet de synchroniser uniquement l'arborescence de l'organisation de stockage et par la même occasion de ne pas synchroniser les dossiers, plus précisément de ne pas synchroniser les contenus des fichiers présents dans les dossiers. En effet, les contenus des fichiers ne sont pas synchronisés, mais les contenus des fichiers restent accessibles à l'utilisateur. Ainsi, grâce à cette disposition, la bande passante consommée est optimisée car la quantité des données échangée est diminuée. Advantageously, this arrangement makes it possible to synchronize only the tree of the storage organization and at the same time not to not synchronize folders, specifically not to synchronize the contents of files in folders. Indeed, the contents of the files are not synchronized, but the contents of the files remain accessible to the user. Thus, thanks to this arrangement, the bandwidth consumed is optimized because the amount of data exchanged is reduced.
Dans un mode de réalisation, une fois synchronisé, l'ensemble de données est accessible sur le premier terminal, y compris lorsque le premier terminal n'a pas accès à Internet. En cas de modifications de l'ensemble de données, ces dernières sont détectées, puis transmises à tous les terminaux sur lesquels l'ensemble a été synchronisé. Lorsque ces modifications sont reçues, l'ensemble de données stocké localement correspondant est mis à jour en conséquence. In one embodiment, once synchronized, the data set is accessible on the first terminal, including when the first terminal does not have access to the Internet. In the event of changes to the data set, these are detected and then transmitted to all the terminals on which the set has been synchronized. When these changes are received, the corresponding locally stored dataset is updated accordingly.
L'ensemble des données reçu par le premier terminal peut être stocké sur le premier terminal selon une organisation de stockage sensiblement similaire à l'organisation de stockage propre au deuxième terminal. Ainsi, la synchronisation est facilitée, et il est possible de conserver une organisation de stockage unique entre plusieurs terminaux si nécessaire. Typiquement, un même chemin d'accès peut être considéré une organisation de stockage similaire pour un ensemble de données particulier. The set of data received by the first terminal can be stored on the first terminal according to a storage organization substantially similar to the own storage organization of the second terminal. Thus, synchronization is facilitated, and it is possible to keep a single storage organization between multiple terminals if necessary. Typically, the same path can be considered a similar storage organization for a particular data set.
Dans un mode de réalisation, le procédé comporte également les étapes suivantes: suite à la sélection du chemin d'accès à l'ensemble de données, sélection entre une opération de synchronisation et une opération de téléchargement; en cas de sélection de l'opération de synchronisation, réception et stockage de l'ensemble des données sélectionné; puis maintien de la synchronisation de l'ensemble des données entre le premier et le deuxième terminal; en cas de sélection de l'opération de téléchargement, réception et stockage de l'ensemble des données sélectionné selon une organisation de stockage propre au premier terminal. In one embodiment, the method also comprises the following steps: following the selection of the path to the set of data, selection between a synchronization operation and a download operation; in case of selection of the synchronization operation, reception and storage of the selected set of data; then maintaining synchronization of all the data between the first and the second terminal; in case of selection of the download operation, reception and storage of all data selected according to a storage organization specific to the first terminal.
Ainsi, il est possible de laisser la possibilité de télécharger l'ensemble de données au lieu de la synchroniser. En particulier, ce choix peut être réalisé par l'utilisateur. L'ensemble de données téléchargées est stocké sur le terminal mettant en œuvre le procédé, selon l'organisation dudit terminal. En particulier, le chemin d'accès à l'ensemble de données téléchargé peut être différent du chemin d'accès choisi au cours de la deuxième étape. Le choix d'un autre chemin d'accès peut être réalisé par l'utilisateur. En cas de modifications par l'utilisateur de l'ensemble de données enregistré localement, ces dernières ne seront pas reportées sur les données correspondantes stockées sur le terminal ayant transmis les données. Thus, it is possible to leave the possibility of downloading the data set instead of synchronizing it. In particular, this choice can be made by the user. The set of data downloaded is stored on the terminal implementing the method, according to the organization of said terminal. In particular, the path to the downloaded dataset may be different from the path chosen in the second step. The choice of another path can be made by the user. In the case of user modifications of the locally recorded data set, the latter will not be carried over to the corresponding data stored on the terminal having transmitted the data.
Le procédé peut encore comporter les étapes suivantes: obtention d'une liste d'ensembles de données synchronisées entre le premier terminal et les autres terminaux de l'ensemble de terminaux; pour chaque ensemble de données de la liste d'ensembles de données, obtention de la date de la dernière consultation et/ou modification; pour chaque ensemble de données de la liste d'ensembles de données, si la date de la dernière consultation et/ou modification est supérieure à un seuil, arrêt du maintien de la synchronisation de l'ensemble des données sur le premier terminal. The method may further comprise the following steps: obtaining a list of synchronized data sets between the first terminal and the other terminals of the set of terminals; for each dataset in the dataset list, obtaining the date of the last review and / or edit; for each set of data in the list of data sets, if the date of the last consultation and / or modification is greater than a threshold, stopping the maintenance of the synchronization of all the data on the first terminal.
En effet, il a été généralement constaté, en analysant les besoins typiques d'utilisateurs, qu'un même ensemble de données doit être synchronisé sur une période assez courte. En effet, l'utilité de la synchronisation existent essentiellement suite à la création de cet ensemble de données, dans la phase d'édition et de mises à jour, et jusqu'à l'étape de finalisation. Aussi, en proposant d'arrêter automatiquement la synchronisation des données non modifiées depuis un intervalle de temps déterminé, le procédé permet d'optimiser l'utilisation des ressources, en permettant non seulement de ne pas synchroniser inutilement des données, mais en outre de permettre la suppression desdites données localement. Toutefois, même lorsque ces données sont supprimées du premier terminal, elles demeurent disponibles sur le deuxième terminal et peuvent être à nouveau synchronisées. Indeed, it has generally been found, by analyzing the typical needs of users, that the same set of data must be synchronized over a relatively short period. Indeed, the usefulness of the synchronization essentially exist after the creation of this set of data, in the editing and updates phase, and up to the finalization stage. Also, by proposing to automatically stop the synchronization of the unmodified data for a given time interval, the method makes it possible to optimize the use of the resources, allowing not only not to to synchronize data unnecessarily, but also to allow the deletion of such data locally. However, even when this data is deleted from the first terminal, it remains available on the second terminal and can be synchronized again.
Les étapes d'obtention de la liste d'ensembles de données synchronisées, d'obtention de la date de la dernière consultation et/ou modification, et d'arrêt du maintien de la synchronisation sont par exemple répétées à un intervalle de temps déterminé. L'intervalle de temps et le seuil peuvent être sensiblement identiques. Le seuil est par exemple sensiblement égal à deux mois, ce qui correspond à une durée particulièrement efficace en matière d'optimisation, puisqu'il a été constaté qu'il s'agit de la durée moyenne entre la phase de création d'un jeu de données et la fin de l'édition dudit jeu, durée au cours de laquelle l'essentiel des besoins en synchronisation se manifeste. The steps of obtaining the list of synchronized data sets, obtaining the date of the last consultation and / or modification, and stopping the maintenance of the synchronization are for example repeated at a determined time interval. The time interval and the threshold may be substantially identical. The threshold is for example substantially equal to two months, which corresponds to a particularly effective duration in terms of optimization, since it has been found that this is the average duration between the creation phase of a game of data and the end of the edition of said game, during which time the bulk of synchronization needs is manifested.
Selon un deuxième aspect, l'invention se rapporte à un terminal, adapté à mettre en œuvre le procédé selon le premier aspect, et comportant des moyens de communication configurés pour permettre l'échange de données avec un ensemble de terminaux accessibles à un utilisateur. According to a second aspect, the invention relates to a terminal, adapted to implement the method according to the first aspect, and comprising communication means configured to allow the exchange of data with a set of terminals accessible to a user.
Selon le troisième aspect, l'invention se rapporte à un système comportant des moyens de communication et une pluralité de terminaux selon le deuxième aspect. According to the third aspect, the invention relates to a system comprising communication means and a plurality of terminals according to the second aspect.
Selon un troisième aspect, l'invention se rapporte à un programme d'ordinateur comportant des instructions pour l'exécution des étapes du procédé selon le premier aspect, lorsque ledit programme est exécuté par un processeur. According to a third aspect, the invention relates to a computer program comprising instructions for performing the steps of the method according to the first aspect, when said program is executed by a processor.
Chacun de ces programmes peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitablelsEPjEn particulier, il est possible d'utiliser des langages de script, tels que notamment tel, javascript, python, perl qui permettent une génération de code «à la demande» et ne nécessitent pas de surcharge significative pour leur génération ou leur modification. Each of these programs can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any form What other form is desirable? In particular, it is possible to use scripting languages, such as in particular such, javascript, python, perl that allow code generation "on demand" and do not require significant overhead for their generation or modification.
Selon un quatrième aspect, l'invention se rapporte à un support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions pour l'exécution des étapes du procédé selon le premier aspect. According to a fourth aspect, the invention relates to a computer-readable recording medium on which is recorded a computer program comprising instructions for executing the steps of the method according to the first aspect.
Le support d'informations peut être n'importe quelle entité ou n'importe quel dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD-ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une disquette ou un disque dur. D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé par un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau Internet ou Intranet. Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. The information carrier may be any entity or any device capable of storing the program. For example, the medium may comprise storage means, such as a ROM, for example a CD-ROM or a microelectronic circuit ROM, or a magnetic recording means, for example a diskette or a hard disk. On the other hand, the information medium may be a transmissible medium such as an electrical or optical signal, which may be conveyed by an electrical or optical cable, by radio or by other means. The program according to the invention can be downloaded in particular on an Internet or Intranet network. Alternatively, the information carrier may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
D'autres particularités et avantages de la présente invention Other features and advantages of the present invention
apparaîtront, dans la description ci-après de modes de réalisation, en référence aux dessins annexés, dans lesquels: will become apparent in the following description of embodiments with reference to the accompanying drawings, in which:
• la figure 1 est un schéma d'un système de partage et de synchronisation de données entre une pluralité de terminaux selon un mode de réalisation; FIG. 1 is a diagram of a system for sharing and synchronizing data between a plurality of terminals according to one embodiment;
• la figure 2 est un synoptique d'un procédé de partage et de synchronisation de données entre une pluralité de terminaux selon un mode de réalisation; • la figure 3 est un exemple schématique d'une interface utilisateur selon l'invention, pour permettre la sélection d'un des terminaux accessibles à l'utilisateur; FIG. 2 is a block diagram of a method for sharing and synchronizing data between a plurality of terminals according to one embodiment; FIG. 3 is a schematic example of a user interface according to the invention for enabling the selection of one of the terminals accessible to the user;
• la figure 4 est un exemple schématique d'une interface utilisateur selon l'invention, pour permettre la sélection du chemin d'accès aux données à télécharger et/ou synchroniser dans l'organisation de stockage du terminal sélectionné; FIG. 4 is a schematic example of a user interface according to the invention for enabling the selection of the access path to the data to be downloaded and / or synchronized in the storage organization of the selected terminal;
• la figure 5 est un exemple schématique d'une interface utilisateur selon l'invention, pour permettre le choix entre une opération de téléchargement ou de synchronisation; FIG. 5 is a schematic example of a user interface according to the invention, to allow the choice between a download or synchronization operation;
• la figure 6 est un synoptique d'un procédé d'optimisation de synchronisations, selon un mode de réalisation. FIG. 6 is a block diagram of a synchronization optimization method, according to one embodiment.
La figure 1 illustre schématiquement un système de partage et de synchronisation de données entre une pluralité de terminaux selon un mode de réalisation. Il comprend un système de gestion 10pourvu de moyens de couplage à une infrastructure 12 de type informatique dématérialisée, plus généralement désignée par le terme anglo-saxon de «cloud Computing». Le système de gestion 10 comprend des moyens informatiques, typiquement des moyens de calcul comme des processeurs, ainsi que des dispositifs de stockage comme des disques durs et de la mémoire vive. Les moyens informatiques du système de gestion 10 permettent notamment de gérer la synchronisation de données entre des terminaux 14, et plus particulièrement la gestion du transfert des données entre les terminaux 14 et de la sécurité et/ou des droits d'accès des utilisateurs du système. Figure 1 schematically illustrates a system for sharing and synchronizing data between a plurality of terminals according to one embodiment. It comprises a management system 10 provided with means for coupling to a cloud-based computer infrastructure 12, more generally referred to as the Anglo-Saxon term "cloud computing". The management system 10 comprises computer means, typically computing means such as processors, as well as storage devices such as hard disks and RAM. The computer means of the management system 10 make it possible in particular to manage the synchronization of data between terminals 14, and more particularly the management of the transfer of data between the terminals 14 and the security and / or access rights of the users of the system. .
Dans l'exemple de la figure 1 , les terminaux 14 suivant sont représentés: un ordinateur de bureau 14a, un téléphone mobile 14b, une tablette 14c et un serveur d'application 14d. Le serveur d'application 14d fournit par exemple un service pour traiter des tâches bureautiques de type traitement de texte, tableur, gestion des contacts et des agendas, messagerie, un logiciel métier - par exemple un logiciel de gestion ou d'accès à une base de données métiers. Les terminaux 14 pourraient comprendre l'un ou plusieurs des terminaux suivant (non représentés) : un système de stockage de données, en particulier un système de stockage réseau ou «Network Attached Storage» en anglais, des équipements de connections au réseau pourvus de moyens de stockage, en particulier des boîtiers ou «box» mis à disposition par des opérateurs de télécommunications pour accéder à leur réseau et comportant des moyens de stockage comme des disques durs. Par souci de clarté, dans la suite de la description, les données à partager et synchroniser sur ces terminaux 14 sont supposées accessibles à un même utilisateur, bien que le système de partage et de synchronisation de données selon l'invention prenne en charge une pluralité d'utilisateurs ayant chacun un ensemble de terminaux propres. Ce cas d'usage se présente notamment lorsque l'utilisateur est le propriétaire ou l'utilisateur autorisé de l'ordinateur de bureau 14a, du téléphone mobile 14b, et de la tablette 14c, et qu'il a les droits d'accès requis pour accéder à un ensemble de données sur le serveur d'application 14d. Chaque terminal 14 comprend des moyens informatiques, typiquement des moyens de calcul comme des processeurs, ainsi que des moyens de stockage comme des disques durs et/ou de la mémoire de masse à semi-conducteurs réinscriptible de type «FLASH». Chaque terminal 14 stocke à l'aide des moyens de stockage les données selon une organisation propre. En particulier, le serveur d'application 14d stocke à l'aide des moyens de stockage les données relatives au(x) service(s) rendu à l'utilisateur, selon une organisation propre. En outre, la capacité des moyens de stockage de chaque terminal 14 disponible n'est pas nécessairement égale à celle des autres terminaux. Chaque terminal 14 comporte également des moyens de couplage à l'infrastructure 12, typiquement par l'intermédiaire d'un réseau Internet. Certains terminaux, par exemple l'ordinateur de bureau 14a, le téléphone mobile 14b, et la tablette 14c, peuvent comprendre des moyens d'affichage et d'interaction— par exemple un écran tactile, un ensemble composé d'un clavier, d'une souris et d'un écran - pour permettre à un utilisateur d'interagir avec les applications exécutées localement. Chaque terminal 14 est pourvu d'un module de synchronisation 16. Le module de synchronisation 16 est par exemple une application, installée sur le terminal, adaptée pour accéder aux données stockées localement, et configurée de sorte à mettre en œuvre une interface utilisateur et communiquer avec le système de gestion 10, pour permettre le partage et la synchronisation de données avec les autres terminaux. In the example of FIG. 1, the following terminals 14 are represented: a desktop computer 14a, a mobile phone 14b, a tablet 14c and an application server 14d. The application server 14d provides, for example, a service for processing word processing, spreadsheet, contact and calendar management, messaging, business software - for example management or access to a database business data. The terminals 14 could comprise one or more of the following terminals (not shown): a data storage system, in particular a Network Attached Storage ("Network Attached Storage"), network connection equipment provided with means storage, in particular boxes or "boxes" made available by telecommunications operators to access their network and comprising storage means such as hard disks. For the sake of clarity, in the following description, the data to be shared and synchronized on these terminals 14 are assumed to be accessible to the same user, although the data sharing and synchronization system according to the invention supports a plurality of users. of users each having a set of own terminals. This use case occurs in particular when the user is the owner or the authorized user of the desktop computer 14a, the mobile phone 14b, and the tablet 14c, and has the required access rights. to access a dataset on the 14d application server. Each terminal 14 comprises computer means, typically computing means such as processors, as well as storage means such as hard disks and / or the "FLASH" type rewritable semiconductor mass memory. Each terminal 14 stores using the storage means the data according to a proper organization. In particular, the application server 14d stores using the storage means the data relating to the (x) service (s) delivered to the user, according to a specific organization. In addition, the capacity of the storage means of each available terminal 14 is not necessarily equal to that of the other terminals. Each terminal 14 also comprises means for coupling to the infrastructure 12, typically via an Internet network. Some terminals, for example the desktop computer 14a, the mobile phone 14b, and the tablet 14c may include display and interaction means - for example a touch screen, a set consisting of a keyboard, a mouse and a screen - to allow a user to interact with locally executed applications. Each terminal 14 is provided with a synchronization module 16. The synchronization module 16 is for example an application, installed on the terminal, adapted to access the data stored locally, and configured to implement a user interface and communicate with the management system 10, to enable sharing and synchronization of data with the other terminals.
La figure 2 illustre, par un synoptique, un procédé de partage et de synchronisation de données entre une pluralité de terminaux selon un mode de réalisation. Le procédé est notamment adapté à être mis en œuvre par le module de synchronisation 16 sur un des terminaux. Dans l'exemple qui suit, le procédé est mis en œuvre par le module de synchronisation 16 de l'ordinateur de bureau 14a. Dans cet exemple, l'utilisateur souhaite accéder à et/ou synchroniser, depuis son ordinateur de bureau 14a, une image contenue dans un fichier intitulé «Plan.JPG»et stocké, sur le téléphone mobile 14b, dans le répertoire «Docs.». Le chemin d'accès au fichier «Plan.JPG» est donc « /Docs./Plan.JPG». FIG. 2 illustrates, by a block diagram, a method of sharing and synchronizing data between a plurality of terminals according to one embodiment. The method is particularly adapted to be implemented by the synchronization module 16 on one of the terminals. In the following example, the method is implemented by the synchronization module 16 of the desktop computer 14a. In this example, the user wishes to access and / or synchronize, from his desktop computer 14a, an image contained in a file entitled "Plan.JPG" and stored, on the mobile phone 14b, in the directory "Docs." . The path to the "Plan.JPG" file is "/Docs./Plan.JPG".
Dans une première étape 1 10, un des terminaux, compris dans une liste regroupant les terminaux auxquels l'utilisateur a accès, est sélectionné. La liste des terminaux accessibles peut être obtenue par le module de synchronisation 16 en émettant une requête à destination du système de gestion 10, qui envoie en retour ladite liste, ou les modifications de ladite liste depuis la réception de la dernière requête. La liste des terminaux accessibles peut également être maintenue localement par le module de synchronisation 16 et créée et/ou mise à jour lors d'une phase de configuration. Un exemple schématique d'une interface utilisateur, mise en œuvre par le module de synchronisation 16 pour permettre à l'utilisateur de sélectionner un des terminaux de ladite liste, est illustré par la figure 3. Dans cet exemple, la liste comporte une entrée pour l'ordinateur de bureau 14a, une entrée pour le téléphone mobile 14b, une entrée pour la tablette 14c, et une entrée pour le serveur applicatif 14d. L'utilisateur peut ainsi choisir le terminal auquel il souhaite accéder, en l'espèce, le téléphone mobile 14b. In a first step 1 10, one of the terminals, included in a list of terminals to which the user has access, is selected. The list of accessible terminals can be obtained by the synchronization module 16 by sending a request to the management system 10, which sends back said list, or the modifications of said list since the reception of the last request. The list of accessible terminals can also be maintained locally by the synchronization module 16 and created and / or updated during a configuration phase. A schematic example of a user interface, implemented by the synchronization module 16 to allow the user to select one of the terminals of said list, is illustrated in FIG. 3. In this example, the list includes an entry for the desktop computer 14a, an input for the mobile phone 14b, an input for the tablet 14c, and an input for the application server 14d. The user can thus choose the terminal to which he wishes to access, in this case, the mobile phone 14b.
Dans une deuxième étape 120, un chemin d'accès aux données à télécharger et/ou synchroniser est identifié dans l'organisation de stockage propre au terminal sélectionné au cours de la première étape. En particulier, l'organisation de stockage dudit terminal peut être obtenue par le module de synchronisation 16 en émettant une requête à destination du système de gestion 10, qui transmet en retour ladite organisation ou les modifications de ladite organisation depuis la réception de la dernière requête. Typiquement, la typologie de l'organisation est une arborescence comprenant des fichiers contenus dans des répertoires. Pour permettre à l'utilisateur de sélectionner le chemin d'accès aux données à télécharger et/ou synchroniser, une interface utilisateur permettant la navigation dans l'organisation peut est mis en œuvre par le module de synchronisation 16. Une telle interface est représentée schématiquement sur la figure 4. Dans cet exemple, l'utilisateur parcourt l'arborescence selon laquelle le téléphone mobile 14b stocke les données, jusqu'à identifier le chemin d'accès au fichier «Plan.JPG», à savoir «/Docs./Plan.JPG». In a second step 120, a path to the data to be downloaded and / or synchronized is identified in the storage organization specific to the terminal selected during the first step. In particular, the storage organization of said terminal can be obtained by the synchronization module 16 by sending a request to the management system 10, which in turn transmits said organization or the modifications of said organization since the reception of the last request. Typically, the typology of the organization is a tree with files contained in directories. To enable the user to select the path to the data to be downloaded and / or synchronized, a user interface allowing navigation in the organization can be implemented by the synchronization module 16. Such an interface is shown schematically. In this example, the user browses the tree in which the mobile phone 14b stores the data, until identifying the path to the file "Plan.JPG", namely "/Docs./ plan.jpg ".
Dans une troisième étape 130, le choix entre une opération de synchronisation ou de téléchargement est effectué pour les données correspondant au chemin d'accès choisi au cours de la deuxième étape 120. Dans un mode de réalisation, le module de synchronisation 16 peut être configuré pour mettre à disposition de l'utilisateur une interface lui permettant d'effectuer ce choix. Une telle interface est représentée schématiquement sur la figure 5. Dans cet exemple, l'utilisateur choisit dans un menu s'il souhaite télécharger le fichier «Plan.JPG». Alternativement, le module de synchronisation 16 peut être configuré pour choisir automatiquement entre le téléchargement ou la synchronisation, en fonction par exemple d'un paramètre de configuration ou d'un choix antérieur de l'utilisateur. In a third step 130, the choice between a synchronization or download operation is performed for the data corresponding to the path chosen during the second step 120. In one embodiment, the synchronization module 16 can be configured to provide the user with an interface allowing him to make this choice. Such an interface is shown schematically in FIG. 5. In this example, the user chooses from a menu whether he wishes to download the "Plan.JPG" file. Alternatively, the synchronization module 16 can be configured to automatically choose between download or synchronization, depending for example on a configuration parameter or an earlier choice of the user.
Si, au cours de la troisième étape 130, le choix se porte sur une opération de téléchargement, les données correspondant au chemin d'accès choisi au cours de la deuxième étape 120 sont téléchargées au cours d'une quatrième étape 140. Dans l'exemple ici décrit, le fichier «Plan.JPG» sera donc téléchargé depuis le téléphone mobile 16b jusqu'à l'ordinateur 14a. Les données téléchargées seront stockées sur le terminal mettant en œuvre le procédé, selon l'organisation dudit terminal. En particulier, le chemin d'accès aux données téléchargées peut être différent du chemin d'accès choisi au cours de la deuxième étape. Le choix d'un autre chemin d'accès pour le stockage des données téléchargé peut être proposé à l'utilisateur. Par exemple, l'utilisateur peut choisir de stocker sur l'ordinateur 14a le fichier «Plan.JPG» à un emplacement correspondant au chemin d'accès «/MesFichiers/Mes Documents/Cartes/Plan.JPG». En cas de modifications par l'utilisateur du fichier enregistré localement, ces dernières ne seront pas reportées sur les données correspondantes stockées sur le terminal ayant transmis les données. Par exemple, si l'utilisateur modifie sur l'ordinateur 14a le fichier «Plan.JPG», le fichier «Plan.JPG» sur le téléphone portable 14b ne sera pas modifié. Optionnellement, une nouvelle version du fichier «Plan.JPG» sur l'ordinateur 14a pourra être créée. If, during the third step 130, the choice is for a download operation, the data corresponding to the path chosen during the second step 120 are downloaded during a fourth step 140. example described here, the file "Plan.JPG" will be downloaded from the mobile phone 16b to the computer 14a. The downloaded data will be stored on the terminal implementing the method, according to the organization of said terminal. In particular, the path to downloaded data may be different from the path chosen during the second step. The choice of another path for storing the downloaded data may be proposed to the user. For example, the user can choose to store on the computer 14a the file "Plan.JPG" in a location corresponding to the path "/ MyFiles / My Documents / Maps / Plan.JPG". In the event of changes by the user of the locally registered file, the latter will not be carried over to the corresponding data stored on the terminal having transmitted the data. For example, if the user modifies the file "Plan.JPG" on the computer 14a, the file "Plan.JPG" on the mobile phone 14b will not be modified. Optionally, a new version of the file "Plan.JPG" on the computer 14a can be created.
Si, au cours de la troisième étape 130, le choix se porte sur une opération de synchronisation, les données correspondant au chemin d'accès choisi au cours de la deuxième étape 120 sont synchronisées au cours d'une cinquième étape 150. Dans l'exemple ici décrit, le fichier «Plan.JPG» sera donc téléchargé depuis le téléphone mobile 16b jusqu'à l'ordinateur 14a, puis stockées sur l'ordinateur 14a en conservant selon l'organisation du téléphone mobile 16b. En particulier, le chemin d'accès aux données téléchargées sera identique au chemin d'accès choisi au cours de la deuxième étape. Le fichier «Plan.JPG» sera donc stocké sur l'ordinateur 14a à l'emplacement correspondant au chemin d'accès «/Docs./Plan.JPG». Le fichier «Plan.JPG» ainsi synchronisé sera désormais accessible sur l'ordinateur 14a, y compris lorsque l'ordinateur 14a ne sera pas en mesure d'accéder à l'infrastructure 12, par exemple lorsqu'il n'aura pas accès à Internet. Puis au cours d'une étape 160 de maintien de la synchronisation, l'ensemble des données est maintenu synchronisé entre le premier et le deuxième terminal. En particulier, en cas de modifications par l'utilisateur du fichier enregistré localement, ces dernières seront dans un premier temps détectées, puis transmises par l'intermédiaire de l'infrastructure, à tous les terminaux sur lesquels le fichier a été synchronisé. La détection des modifications peut en particulier être réalisée par le module de synchronisation 16. Lorsque ces modifications sont reçues, le fichier stocké localement correspondant est mis à jour en conséquence. Par exemple, si l'utilisateur modifie le fichier «Plan.JPG» sur son ordinateur 14a après avoir choisi de le synchroniser depuis le téléphone mobile 14b, les modifications apportées sont détectées par le module de synchronisation 16 de l'ordinateur 14a, qui les transmet, via l'infrastructure 12, au téléphone portable 14b. Le module de synchronisation du téléphone portable 14b reçoit ces modifications, et met à jour le fichier «Plan.JPG» sur le téléphone portable 14b en conséquence. If, during the third step 130, the choice is for a synchronization operation, the data corresponding to the path chosen during the second step 120 are synchronized during a fifth step 150. In the example described here, the file "Plan.JPG" will be downloaded from the mobile phone 16b to the computer 14a, then stored on the computer 14a keeping according to the organization of the mobile phone 16b. In particular, the path to the downloaded data will be identical to the path chosen during the second step. The file "Plan.JPG" will be stored on the computer 14a at the location corresponding to the path "/Docs./Plan.JPG". The file "Plan.JPG" and synchronized will now be accessible on the computer 14a, including when the computer 14a will not be able to access the infrastructure 12, for example when he will not have access to Internet. Then during a step 160 of maintaining the synchronization, all the data is kept synchronized between the first and the second terminal. In particular, in the event of changes by the user of the locally registered file, the latter will initially be detected and then transmitted via the infrastructure to all the terminals on which the file has been synchronized. The detection of the modifications can in particular be carried out by the synchronization module 16. When these modifications are received, the corresponding locally stored file is updated accordingly. For example, if the user modifies the file "Plan.JPG" on his computer 14a after choosing to synchronize it from the mobile phone 14b, the changes made are detected by the synchronization module 16 of the computer 14a, which transmits them via the infrastructure 12 , on the mobile phone 14b. The synchronization module of the mobile phone 14b receives these modifications, and updates the file "Plan.JPG" on the mobile phone 14b accordingly.
Dans un mode de réalisation, un procédé d'optimisation de la cinquième étape de synchronisation est mis en œuvre. Ce procédé d'optimisation peut en particulier être mis en œuvre par le module de synchronisation 16. La figure 6 illustre schématiquement les étapes d'un tel procédé. Le procédé d'optimisation comporte une étape optionnelle de programmation 210 d'une tâche planifiée d'optimisation de la synchronisation. Au cours de cette étape de programmation 210, la périodicité de l'exécution de la tâche planifiée d'optimisation est choisie, par exemple un nombre de jours, de semaines, de mois et/ou d'années. Une périodicité de deux mois est par exemple sélectionnée. La tâche planifiée comporte les étapes suivantes: In one embodiment, a method for optimizing the fifth synchronization step is implemented. This optimization method may in particular be implemented by the synchronization module 16. FIG. 6 schematically illustrates the steps of such a method. The optimization method includes an optional programming step 210 of a scheduled synchronization optimization task. During this programming step 210, the periodicity of the execution of the scheduled optimization task is chosen, for example a number of days, weeks, months and / or years. A periodicity of two months is for example selected. The scheduled task has the following steps:
• une étape 220 au cours de laquelle la liste des fichiers synchronisés sur le terminal exécutant le procédé d'optimisation est obtenue. Les informations nécessaires à la constitution de la liste peuvent être obtenues du module de synchronisation 16. La liste peut aussi être créée et mise à jour lorsqu'un nouveau fichier est synchronisé sur le terminal exécutant le procédé d'optimisation. Cette liste peut encore être obtenue et/ou gérée par l'infrastructure 12. A step 220 during which the list of synchronized files on the terminal running the optimization process is obtained. The information necessary for constituting the list can be obtained from the synchronization module 16. The list can also be created and updated when a new file is synchronized on the terminal executing the optimization process. This list can still be obtained and / or managed by the infrastructure 12.
• Une étape 230 au cours de laquelle on vérifie, pour chaque fichier de la liste des fichiers synchronisés sur le terminal exécutant le procédé d'optimisation, si ledit fichier a été ouvert sur le terminal depuis la dernière exécution de la tâche planifiée; A step 230 during which, for each file of the list of files synchronized on the terminal executing the optimization process, it is checked whether said file has been opened on the terminal since the last execution of the scheduled task;
• une étape 240, au cours de laquelle tous les fichiers, qui n'ont pas été ouverts sur le terminal depuis la dernière exécution de la tâche planifiée, sont supprimés de la liste des fichiers à synchroniser. Le module de synchronisation recevra par exemple une demande pour mettre fin à la synchronisation desdits fichiers, de sorte que les modifications ultérieures ne soient plus reportées sur les autres terminaux. A step 240, during which all the files, which have not been opened on the terminal since the last execution of the scheduled task, are removed from the list of files to be synchronized. For example, the synchronization module will receive a request to terminate the synchronization of said files, so that subsequent changes are not carried over to other terminals.

Claims

REVENDICATIONS
1 . Procédé de synchronisation de données entre un ensemble de terminaux (14a, 14b, 14c, 14d) accessibles à un utilisateur, caractérisé en ce qu'il comporte les étapes suivantes, mises en œuvre par un premier terminal de l'ensemble de terminaux: sélection (1 10) d'un deuxième terminal parmi l'ensemble des terminaux; obtention (120) d'une organisation de stockage propre au deuxième terminal, et sélection (120) dans ladite organisation d'un chemin d'accès à un ensemble de données; réception et stockage (150) de l'ensemble des données sélectionné; maintien de la synchronisation (160) de l'ensemble des données entre le premier et le deuxième terminal. 1. Method for synchronizing data between a set of terminals (14a, 14b, 14c, 14d) accessible to a user, characterized in that it comprises the following steps, implemented by a first terminal of the set of terminals: selection (1 10) a second terminal among all the terminals; obtaining (120) a storage organization specific to the second terminal, and selecting (120) in said organization an access path to a set of data; receiving and storing (150) the selected data set; maintaining synchronization (160) of all data between the first and second terminal.
2. Procédé selon la revendication 1 , dans lequel l'ensemble des données reçu par le premier terminal est stocké sur le premier terminal selon une organisation de stockage sensiblement similaire à l'organisation de stockage propre au deuxième terminal. 2. Method according to claim 1, in which all of the data received by the first terminal is stored on the first terminal according to a storage organization substantially similar to the storage organization specific to the second terminal.
3. Procédé selon l'une quelconque des revendications précédentes, comportant en outre les étapes suivantes: suite à la sélection (120) du chemin d'accès à l'ensemble de données, sélection entre une opération de synchronisation et une opération de téléchargement; en cas de sélection de l'opération de synchronisation, réception et stockage (150) de l'ensemble des données sélectionné; puis maintien de la synchronisation (160) de l'ensemble des données entre le premier et le deuxième terminal; en cas de sélection de l'opération de téléchargement, réception et stockage (140) de l'ensemble des données sélectionné selon une organisation de stockage propre au premier terminal. 3. Method according to any one of the preceding claims, further comprising the following steps: following the selection (120) of the access path to the data set, selection between a synchronization operation and a download operation; in case of selection of the operation of synchronization, reception and storage (150) of the selected set of data; then maintaining synchronization (160) of all the data between the first and the second terminal; in the event of selection of the downloading, reception and storage operation (140) of all the data selected according to a storage organization specific to the first terminal.
Procédé selon l'une quelconque des revendications précédentes, comportant en outre les étapes suivantes: Method according to any one of the preceding claims, further comprising the following steps:
• obtention (220) d'une liste d'ensembles de données synchronisées entre le premier terminal et les autres terminaux de l'ensemble de terminaux; • obtaining (220) a list of data sets synchronized between the first terminal and the other terminals of the set of terminals;
• pour chaque ensemble de données de la liste d'ensembles de données, obtention (230) de la date de la dernière consultation et/ou modification; • for each data set in the list of data sets, obtaining (230) the date of the last consultation and/or modification;
• pour chaque ensemble de données de la liste d'ensembles de données, si la date de la dernière consultation et/ou modification est supérieure à un seuil, arrêt (240) du maintien de la synchronisation de l'ensemble des données sur le premier terminal. • for each data set in the list of data sets, if the date of the last consultation and/or modification is greater than a threshold, stopping (240) of maintaining the synchronization of all the data on the first terminal.
Procédé selon la revendication 4, dans lequel les étapes d'obtention (220) de la liste d'ensembles de données synchronisées, d'obtention (230) de la date de la dernière consultation et/ou modification, et d'arrêt (240) du maintien de la synchronisation sont répétées à un intervalle de temps déterminé. Method according to claim 4, wherein the steps of obtaining (220) the list of synchronized data sets, obtaining (230) the date of the last consultation and/or modification, and stopping (240 ) of maintaining synchronization are repeated at a determined time interval.
Procédé selon la revendication 5, dans lequel l'intervalle de temps et le seuil sont sensiblement identiques. Method according to claim 5, in which the time interval and the threshold are substantially identical.
Procédé selon la revendication 5 ou 6, dans lequel le seuil est sensiblement égal à deux mois. Method according to claim 5 or 6, in which the threshold is substantially equal to two months.
Terminal (14a, 14b, 14c, 14d), comportant des moyens de communication configurés pour permettre l'échange de données avec un ensemble de terminaux (14a, 14b, 14c, 14d) accessibles à un utilisateur, caractérisé en ce qu'il comporte un module de synchronisation de données couplé aux moyens de communication, le module de synchronisation comportant: des moyens adaptés pour permettre la sélection (1 10) d'un deuxième terminal parmi l'ensemble des terminaux; des moyens pour obtenir (120) une organisation de stockage propre au deuxième terminal, et pour permettre la sélection (120) dans ladite organisation d'un chemin d'accès à un ensemble de données; des moyens de réception et de stockage (150) de l'ensemble des données sélectionné; des moyens de maintien de la synchronisation (160) de l'ensemble des données entre le premier et le deuxième terminal. Terminal (14a, 14b, 14c, 14d), comprising communication means configured to allow the exchange of data with a set of terminals (14a, 14b, 14c, 14d) accessible to a user, characterized in that it comprises a data synchronization module coupled to the communication means, the synchronization module comprising: means adapted to allow the selection (1 10) of a second terminal among all the terminals; means for obtaining (120) a storage organization specific to the second terminal, and for allowing the selection (120) in said organization of an access path to a set of data; means for receiving and storing (150) the selected set of data; means for maintaining synchronization (160) of all the data between the first and the second terminal.
Terminal selon la revendication 8, comportant en outre des moyens d'exécution d'une tâche d'optimisation configurés de sorte à: Terminal according to claim 8, further comprising means for executing an optimization task configured so as to:
• obtenir (220) d'une liste d'ensembles de données synchronisées entre le premier terminal et les autres terminaux de l'ensemble de terminaux; • obtain (220) a list of data sets synchronized between the first terminal and the other terminals of the set of terminals;
• pour chaque ensemble de données de la liste d'ensembles de données, obtenir (230) la date de la dernière consultation et/ou modification; • for each data set in the data set list, obtain (230) the date of the last consultation and/or modification;
• pour chaque ensemble de données de la liste d'ensembles de données, si la date de la dernière consultation et/ou modification est supérieure à un seuil, arrêter (240) du maintien de la synchronisation de l'ensemble des données sur le premier terminal. • for each data set in the list of data sets, if the date of the last consultation and/or modification is greater than a threshold, stop (240) maintaining the synchronization of all the data on the first terminal.
Terminal selon la revendication 9, dans lequel les moyens d'exécution sont configurés de sorte à mettre en œuvre la tâche d'optimisation à un intervalle de temps déterminé. Terminal according to claim 9, in which the execution means are configured so as to implement the optimization task at a determined time interval.
1 1 . Terminal selon la revendication 10, dans lequel l'intervalle de temps et le seuil sont sensiblement identiques. 1 1 . Terminal according to claim 10, in which the time interval and the threshold are substantially identical.
12. Terminal selon la revendication 10 ou 1 1 , dans lequel le seuil est sensiblement égal à deux mois. 12. Terminal according to claim 10 or 1 1, in which the threshold is substantially equal to two months.
13. Système comportant des moyens de communication et une pluralité de terminaux selon l'une quelconque des revendications 8 à 12. 13. System comprising communication means and a plurality of terminals according to any one of claims 8 to 12.
14. Programme d'ordinateur comportant des instructions pour l'exécution des étapes du procédé selon l'une quelconque des revendications 1 à 7, lorsque ledit programme est exécuté par un processeur. 14. Computer program comprising instructions for executing the steps of the method according to any one of claims 1 to 7, when said program is executed by a processor.
15. Support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions pour l'exécution des étapes du procédé selon l'une quelconque des revendications 1 à 7. 15. Computer-readable recording medium on which is recorded a computer program comprising instructions for executing the steps of the method according to any one of claims 1 to 7.
PCT/FR2014/053312 2013-12-12 2014-12-12 Method of synchronization of data between a set of terminals WO2015087019A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP14825423.8A EP3080968A1 (en) 2013-12-12 2014-12-12 Method of synchronization of data between a set of terminals

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1362457A FR3015071B1 (en) 2013-12-12 2013-12-12 METHOD FOR SYNCHRONIZING DATA BETWEEN A SET OF TERMINALS
FR13/62457 2013-12-12

Publications (1)

Publication Number Publication Date
WO2015087019A1 true WO2015087019A1 (en) 2015-06-18

Family

ID=50489220

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2014/053312 WO2015087019A1 (en) 2013-12-12 2014-12-12 Method of synchronization of data between a set of terminals

Country Status (3)

Country Link
EP (1) EP3080968A1 (en)
FR (1) FR3015071B1 (en)
WO (1) WO2015087019A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855772A (en) * 2019-11-08 2020-02-28 北京奇艺世纪科技有限公司 Cross-device data storage method, system, device, server and medium
CN115277680A (en) * 2022-07-29 2022-11-01 山石网科通信技术股份有限公司 File synchronization method for improving synchronization security

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080208870A1 (en) * 2007-02-26 2008-08-28 Microsoft Corporation Managing files on multiple computing devices
US8650498B1 (en) * 2009-05-04 2014-02-11 SugarSync, Inc. User interface for managing and viewing synchronization settings in a synchronization system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080208870A1 (en) * 2007-02-26 2008-08-28 Microsoft Corporation Managing files on multiple computing devices
US8650498B1 (en) * 2009-05-04 2014-02-11 SugarSync, Inc. User interface for managing and viewing synchronization settings in a synchronization system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"SugarSync User Guide, Version 3.01", 1 October 2012 (2012-10-01), pages 1 - 121, XP055128979, Retrieved from the Internet <URL:http://www.sugarsync.com/cskb/User_Guide/SugarSync_User's_Guide.pdf> [retrieved on 20140715] *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855772A (en) * 2019-11-08 2020-02-28 北京奇艺世纪科技有限公司 Cross-device data storage method, system, device, server and medium
CN110855772B (en) * 2019-11-08 2022-06-03 北京奇艺世纪科技有限公司 Cross-device data storage method, system, device, server and medium
CN115277680A (en) * 2022-07-29 2022-11-01 山石网科通信技术股份有限公司 File synchronization method for improving synchronization security
CN115277680B (en) * 2022-07-29 2024-04-19 山石网科通信技术股份有限公司 File synchronization method for improving synchronization security

Also Published As

Publication number Publication date
EP3080968A1 (en) 2016-10-19
FR3015071B1 (en) 2015-12-11
FR3015071A1 (en) 2015-06-19

Similar Documents

Publication Publication Date Title
US11200044B2 (en) Providing access to a hybrid application offline
US9898480B2 (en) Application recommendation using stored files
US9866508B2 (en) Aggregating and presenting recent activities for synchronized online content management systems
US8484260B2 (en) Method for a cloud-based meta-file system to virtually unify remote and local files across a range of devices&#39; local file systems
US11385788B2 (en) Sharing a file with a single contact
US20150052105A1 (en) Cloud-based synchronization of related file sets
JP2016535381A (en) File level commenting
US20150227605A1 (en) Information processing terminal, synchronization control method, and computer-readable recording medium
US20140164534A1 (en) System for sending a content item through an online content management system
EP3080968A1 (en) Method of synchronization of data between a set of terminals
EP2413233B1 (en) Android phone with an application for content display
EP2556447B1 (en) Management of computer file sharing between at least two devices
EP3080706B1 (en) Method of backup of data stored in a terminal
US10205768B2 (en) Facility for initiating automatic exchange of file(s) between mobile devices
EP2402871A1 (en) Management of the place of storage of data in a distributed storage system
FR3046283A1 (en) AUTOMATIC METHOD AND DEVICE FOR DETERMINING A CLIENT ROUTE IN A MULTICANAL COMMUNICATION SYSTEM
US10917468B2 (en) Systems and methods of re-associating content items
EP2860630A1 (en) Data transfer method in a dynamic environment
FR2942330A1 (en) DEVICE FOR PROCESSING INFORMATION COMMUNICATING FOR RAPID ACCESS TO A SET OF PERSONAL INFORMATION
EP2927823A1 (en) Method and device for managing a multimedia document on a given theme
EP2271051A1 (en) Method for executing an application service in an web environment

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14825423

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2014825423

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014825423

Country of ref document: EP