买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】将用户和系统数据从源位置上传到目的地位置_微软技术许可有限责任公司_201580072762.5 

申请/专利权人:微软技术许可有限责任公司

申请日:2015-03-02

公开(公告)日:2021-04-27

公开(公告)号:CN107111649B

主分类号:G06F16/25(20190101)

分类号:G06F16/25(20190101);H04L29/08(20060101)

优先权:

专利状态码:有效-授权

法律状态:2021.04.27#授权;2017.09.22#实质审查的生效;2017.08.29#公开

摘要:提供了用户和系统数据从一个或多个源计算系统至一个或多个目的地存储库的自动上传。数据上传器模块被安装在每一个计算系统上,或者可由每一个计算系统访问,用户和或系统数据可能需要从这些计算系统导出到目的地存储库。基于命令,数据上传器模块从计算系统读取想要的用户数据或系统数据。如果需要,所读取的数据被转换,并且数据随后被导出到目的地存储库。所导出的数据可在目的地存储库处被存储并被分析,数据随后可从目的地存储库被导出到其它目的地,包括被导回到其原始被提取自的源计算设备。

主权项:1.一种用于将数据从源系统自动上传至目的地系统的计算机实现的方法,所述方法是通过与所述源系统相关联的数据上传器模块来执行的,所述方法包括:接收将数据从源计算系统上传至目的地计算系统的请求;确定用于将所述数据从所述源计算系统上传至所述目的地计算系统的一个或多个数据上传指令,其中所述确定一个或多个数据上传指令包括读取用于获取所述一个或多个数据上传指令的配置文件,其中被包含在所述配置文件中的所述一个或多个数据上传指令提供包括与要被上传的数据相关联的数据类型、数据读取指令以及用于允许上传器模块访问想要的数据的安全性信息在内的信息;从所述源计算系统读取所述数据;根据上传至所述目的地计算系统所要求的对从所述源计算系统读取的数据进行转换;以及将经转换的数据上传至所述目的地计算系统。

全文数据:将用户和系统数据从源位置上传到目的地位置[0001]背景[0002]在现代计算系统中,在一个或多个计算机上生成并存储与数据库、电子邮件系统、web服务系统、在线软件供应系统、文档管理系统等相关联的大量数据。在一些情况下,大型数据中心容纳数百或者甚至数千台计算机,在这些计算机上运行各种应用软件并为一个或多个计算系统用户存储众多类型的数据。例如,大型数据中心可被用于为成百、成千或更多的个人用户、公司、教育机构或其数据可被处理和存储的)任何其它实体处理和存储各种类型的数据。通常需要从这类计算机中提取用户数据以及计算机系统标识和操作信息数据,供计算系统和服务提供商或这类数据的所有者进行分析。然而,从工作在一个或多个数据中心中或分布在大的地理区域上的数百或数千台计算机中提取用户数据和系统数据是一个困难、耗时且低效的过程。本发明正是关于这些以及其它考虑因素而被作出的。[0003]概述[0004]提供本概述以便以简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本概述并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。[0005]以上和其它的问题通过将用户和系统数据从一个或多个源计算系统自动上传至一个或多个目的地存储库来解决。根据本发明的各方面,数据上传器模块被安装在每一个计算系统上,或者可由每一个计算系统访问,用户和或系统数据可能需要从这些计算系统导出到目的地库。[0006]基于命令,与给定计算系统相关联的数据上传器模块从计算系统读取想要的用户数据或系统数据。如果需要,所读取的数据被转换例如,擦除个人可标识信息),并且数据随后被导出到目的地存储库。根据本发明的各方面,所导出的数据可在目的地存储库处被存储并被分析,数据随后可从目的地存储库被导出到其它目的地,包括被导回到其原始被提取自的源计算设备。[0007]—个或多个实施例的细节在附图和以下描述中阐述。根据对以下详细描述的阅读和对相关联附图的审阅,其它特征和优点将是显而易见的。应当理解,以下详细描述只是解释性的并且不限制如要求保护的本发明。[0008]附图简述[0009]合并在本公开中且构成本公开的一部分的附图解说了本发明的各个方面。[0010]图1是用于将数据从源位置上传到目的地位置的系统架构的一个示例的简化框图。[0011]图2是用于将数据从源位置上传到目的地位置的数据上传器模块的一个示例的简化框图。[0012]图3是用于将数据从源位置上传到目的地位置的一种示例方法的流程图。[0013]图4是解说可用来实施本发明的各方面的计算设备的示例物理组件的框图。[0014]图5A和5B是可用来实施本发明的各方面的移动计算设备的简化框图。[0015]图6是可用来实施本发明的各方面的分布式计算系统的简化框图。[0016]详细描述[0017]以下详细描述引用附图。只要可能,就在附图和以下描述中使用相同的附图标记来指示相同或类似的要素。尽管描述了本发明的实施例,但是修改、调适、以及其它实现是可能的。例如,可对附图中所解说的元素进行替换、添加或修改,并且可通过对所公开的方法替换、重排或添加阶段来修改本文中所描述的方法。因此,以下详细描述不限制本发明,而是相反,本发明的准确范围由所附权利要求定义。[0018]如以上简要描述的,本发明的各方面涉及将用户和系统数据从一个或多个源计算系统自动上传至一个或多个目的地存储库。如以下更详细描述的,根据本发明的各方面,数据上传器模块被安装在每一个计算系统上,或者可由每一个计算系统访问,用户和或系统数据可能需要从这些计算系统导出到目的地库。当接收到从给定计算机系统例如,计算数据中心处的给定计算机提取用户或系统数据的命令时,安装在计算机上的或者可由计算机访问的数据上传器模块读取配置文件以确定相关联的计算机所要求的数据。另外,数据上传器根据配置文件确定与所要求的数据相关联的任何数据类型,并且确定读取器插件模块、转换插件模块和或导出插件模块的定义和位置,这些模块可由数据上传器模块用于读取、转换(如果需要所需要的数据并将其从相关联的源计算机导出到想要的目的地存储库。[0019]如以下将描述的,经由转换插件模块的数据转换可包括根据数据的拥有者所要求的或者目的地存储库处的数据的接收方所希望的对数据的任何想要的转换,例如从数据中擦除个人可标识信息PII、将数据从一种数据类型转换成第二数据类型、提取数据的不必要部分等等。因此,根据本发明的各方面,数据可从一个或多个源计算设备上传、根据需要转换并且传递至一个或多个想要的目的地存储库以如所希望的进一步分析和使用。[0020]图1是用于将数据从源位置上传到目的地位置的系统架构的一个示例的简化框图。系统架构100包括用于将数据从各种各样的源计算系统或个体计算机上传到各种各样的目的地存储库的各种示例计算组件。在图1的左侧,数据中心105解说了其中可以容纳数百、数千或更多的个体计算机或计算系统ll〇a、110b、110n的数据中心,在这些计算机或计算系统上可以存储各种数据类型的数据,这些数据可以使用各种不同的计算过程例如,各种各样的软件应用)来处理。例如,计算设备110a、110b、110n中的每一者可包括各种类型的计算机,例如,用于在数据库中存储用户数据的服务器计算机、电子邮件系统、文档管理系统等,并且计算系统110a、110b和110n可用于运行各种计算系统软件应用,例如,数据库应用、电子邮件系统应用、web服务应用、在线软件供应应用、生产力应用、数据管理系统应用、电信应用等。[0021]如应当领会的,数据中心105还解说了许多数据中心中的一个,这些数据中心可以共处一处,或者可以位于不同位置并且可以经由用于在离散数据中心之间传递数据的各种传输系统与彼此相关联。另外,尽管数据中心105如上所述被解说为多个计算机系统110a—n可位于其中以用于提供数据和服务的数据中心,但数据中心105等效地解说了单个计算设备,诸如台式计算机、膝上型计算机、平板计算机、手持式计算机、或由个体用户操作的其它计算设备,来自这些计算设备的用户数据和或计算机系统数据可被提取、转换如果需要的话并导出到目的地存储库以根据需要进行分析和进一步使用。[0022]仍然参照数据中心105,每一个计算设备110a-n分别与一个上传器模块115a、Il5b、llf5n相关联,上传器模块用于从每个相关联的计算机计算系统110a—n上传用户和或系统数据并转换(如果需要的话),并且将所提取的数据导出到指定的目的地存储库。上传器模块115a-n在以下结合图2进一步详细描述。根据本发明的一个方面,上传器模块115a-n可被安装在每个相关联的计算机计算系统ll〇a-n上。[0023]替代地,单个上传器模块llf5a可工作为独立的模块,该模块可与多个计算系统110a-n相关联。在这种情况下,上传器模块可工作为远程上传器模块13〇,其可通过分布式计算网络例如互联网或内联网)来访问一个或多个相关联的计算系统ll〇a—n。换言之,根据本发明的各方面,上传器模块115a-n可被安装在相关联的计算设备110a—n上,或者上传器模块可在如此处描述的要从其提取数据供数据的转换(如果需要的话)以及将数据导出到目的地存储库的计算设备的远程工作。[0024]依然参考图1,边缘路由器120解说了一种用于将所提取的数据从给定上传器模块传递到数据中心105外部的系统的典型路由器设备。应当理解,边缘路由器120可以负责确保传递自给定数据中心105的数据被正确地传递到理想目的地系统组件,例如,传递自上传器模块的封包化数据被正确地路由到系统100的正确目的地组件。[0025]分布式计算网络125解说了通过其数据可从数据中心传递到数据中心外部的各组件诸如以下描述的目的地存储库145a-n的任意网络诸如因特网或内联网)。[0026]边缘路由器135解说了接收方边缘路由器,通过该接收方边缘路由器数据可被传递到负责确保在允许接收到的数据被传递到一个或多个目的地存储库145a-n之前接收到的数据被正确地认证的代理服务140。[0027]存储库145a-n解说了可被授权接收经由上传器模块115a-n上传的数据的任何数据存储库。例如,目的地存储库145a-n可与服务提供商相关联以存储和分析与为服务提供商的顾客提供的计算系统和软件服务相关联的数据。例如,存储库145a可被设计用于接收与给定服务提供商所提供的电子邮件服务相关联的用户数据和计算系统数据。存储库145b可被设计用于接收和分析与给定服务提供商的web服务相关联的用户数据和系统数据。类似地,目的地储存库145n可与在线软件供应相关联,例如对经由一个或多个在线软件应用服务系统提供给各个用户的文字处理服务、幻灯片演示应用服务、数据库应用服务、电子表格应用服务、电信应用服务等的供应。[0028]如应当理解的,每一个目的地存储库145a-n可与不同的服务提供商或与用户和或计算系统数据的不同请求者相关联。例如,存储库145a可与第一电信或软件应用服务提供商相关联,存储库145b可与第二服务提供商相关联,依此类推。[0029]如本领域技术人员将理解的,计算系统服务、数据管理服务、在线软件应用服务、web服务等的提供商常常需要检查、分析以及以其它方式管理计算系统数据和用户数据以确保数据和计算系统服务正根据需要运行和维护。例如,在线软件服务的提供商可能需要周期性地审核被维护在大型数据中心105处的数百或数千个服务器计算机ll〇a-n的运行中的功能和能力。类似地,在线软件服务的提供商可能需要监视被存储在这类数据中心系统上的用户数据以确保用户数据正根据服务提供商和各个顾客之间的服务协定按照要求地被正确地处理。在这种情况下,来自给定计算机的工作数据和或用户数据可由相关联的上传器模块U5a根据与所提取的数据相关联的任意数据类型来提取并且可被传递给并存储在期望的存储库145a-n上供作出请求的服务提供商或用户进行分析。[0030]在数据被传递给目的地存储库之前,数据可能出于各种原因需要转换。例如,如果数据包含与给定用户相关联的敏感的机密和或个人信息,例如用户的姓名、社保号、驾照号、财务数据等,则这类个人可标识信息PII可在数据被传递给目的地存储库之前由上传器模块从数据中擦除,以避免这类个人可标识信息被传递给未经授权的个人或实体。类似地,如果从数据中心105处的计算系统中的给定计算机中提取的数据被根据第一格式存储,但是该数据在期望的目的地存储库中将根据第二格式存储,则上传器模块115可将该数据从第一格式转换成第二格式,使得该数据可在目的地存储库处被正确地存储和使用。[0031]例如,如果给定目的地存储库与软件应用服务提供商相关联,并且该服务提供商想要分析在数据中心105处的一个或多个计算设备处生成和存储的若干文档,则该服务提供商可要求任何个人可标识信息都要在数据被传递给存储库供分析和审阅之前被从数据中擦除,因为该服务提供商不需要也不想要关于该文档的个人可标识信息,相反,该服务提供商可能想要分析文档的其它特性、属性或性质来确保用来生成了该文档的该服务提供商的软件应用正在正确运行。[0032]另外,文档可在计算系统llOa-n处根据第一格式(例如数据库格式存储,而目的地存储库可能需要根据第二格式的文档。就像数据可被擦除PII—样,在数据被传递到并存储在期望的目的地存储库之前,数据可以各种各样的其它方式来转换,诸如从第一格式转换成第二格式。因此,根据本发明的各方面,在数据被传递到并存储在一个或多个目的地存储库之前,数据可被提取、根据需要被转换并且经由上传器模块从一个或多个计算设备或计算系统导出。[0033]仍然参照图1,根据本发明的各方面,每一个目的地存储库145a-n可配备或关联于上传器模块150a、150b、150n,该上传器模块可被用于相对于数据中心105远程地提取、转换、以及存储来自数据中心105处的计算系统110a、110b、100的用户数据和或计算系统数据。换言之,可从各个作出请求的目的地存储库145a、145b、145n操作上传器模块150a到150n以请求、读取、转换、以及存储所需的用户或计算系统数据。因此,如上所述的,上传器模块115a、115b、115n可被安装在各个计算系统110a到110n上或与其相关联,远程上传器130可被用于读取、转换、并经由分布式计算网络来导出数据,该分布式计算网络可被用于访问期望的计算系统1l〇a到1l〇n,或者上传器模块115a、115b、115n可从各个目的地存储库远程地访问所需数据。替代地,上传器模块115a-n可被用于提取数据、转换数据以及以与所述的用于从计算系统ll〇a-n导出数据相同的方式来导出数据。[0034]分析模块155a、155b、155n解说了存储库145a-n处的可被用于按照需要分析、报告、以及导出接收到的数据的软件应用或其它可执行模块。例如,分析模块155a可用于分析由所提供的在线软件服务所生成的文档以确保这类文档如所要求的在相应的计算设备110a-n处被正确地保存。分析模块155b可解说用于分析电子邮件流量以确保电子邮件消息在相关联的数据中心计算设备UOa-n处被根据所要求的电子邮件服务处理来生成和处理的软件应用或其它可执行模块。换言之,任何分析模块155a-n可在给定的目的地存储库处被用于按照来自上传器模块115-11、130、150-15〇11的数据的接收方所要求的分析接收到的数据。[0035]根据本发明的各方面,在任何一个目的地存储库145a-145n处被存储和分析以及以其它方式被使用的数据可在之后根据需要被导出到其它目的地。例如,这类数据可被分析并报告给一个或多个服务提供商的顾客以向作出请求的顾客针对服务提供商所执行的处理进行周期性地报告。另外,存储在任何一个目的地存储库145a-n处的数据可通过图1中解说的系统100传回,以供存储回从中最初提取了该数据的计算设备llOa-n。[0036]现在参考图2,解说并描述了数据上传器115a-n。如以上简要描述的,数据上传器115a-n是包含足够用于读取、转换如果需要的话以及将来自一个或多个数据源ll〇a-n的各种数据类型的数据导出到一个或多个数据存储145a-n的计算机可执行指令的软件应用或软件模块。参考图2,数据上传器115a-n包括用于接收数据上传指令以及用于指导数据上传器模块115a-n的各组件的处理的操作模块205。配置文件读取器210是一个模块,数据上传器115a-n用该模块来读取数据上传指令的配置文件215,如以下所描述的。数据读取器模块225操作用于经由数据读取器插件模块227a-n读取各种数据类型的数据。数据转换模块230是可操作用于经由数据转换插件232a-n响应于从配置文件215中读取的数据转换信息对数据进行转换的模块。数据导出模块235可操作用于经由数据导出插件237a-n将数据从存储器导出到由从配置文件215中接收到的指令所指定的指定目的地存储库145a-n。[0037]换言之,数据读取器模块225、数据转换模块230、数据导出模块235是数据上传器模块115a-n的用来读取、转换和导出如配置文件215中包含的信息所指定的各种类型的数据的模块。并且,模块225、230、235中的每一个可被允许基于数据上传器操作模块205所访问的或者安装在数据上传器115a-n上的各种插件227、232、237来按照所指示的读取、转换和导出数据,以根据被指定用于上传至给点目的地存储库145a-n的各种数据类型220来读取、转换和导出数据。[0038]如针对不同类型的数据读取、转换和导出所要求的,各种数据读取器、数据转换和数据导出插件模块227、232、237可被提供给数据上传器115a-n或可由数据加载器模块115a_n访问。例如,需要从在数据中心105处操作的各个计算设备接收经转换的数据的服务提供商可提供数据读取器插件、数据转换插件以及数据导出插件以供数据上传器模块115a_n用于根据它们各自的需求来读取、转换和导出数据。[0039]如应当理解的,给定数据上传器115a-n可被安装在给定计算设备ll〇a-n上或者可以其它方式与给定计算设备110a-n相关联或提供对计算设备110a-n的访问,并且数据上传器115a-n可被允许通过关联数据读取器插件227a-n来读取许多不同类型的数据以允许数据上传器115a-n读取指定类型的数据。类似地,上传器115a-n可被允许根据需要通过将上传器与想要的转换所需的数据转换插件相关联来转换数据。类似地,上传器模块115a-n可被允许根据需要通过将上传器与合适的数据导出插件237a-n相关联来导出数据。[0040]可如本文所描述的被读取、转换、以及导出的数据可以具有几乎无限数量的不同数据类型。这类数据可以是操作系统事件、文本文件、XML文件、HTML文件、数据库例如SQL数据库的内容、电子邮件文件、日程信息、文字处理文档、电子表格文档、幻灯片演示文档、任务文档以及文件等的形式。根据本发明的各方面,数据上传器模块115a-n可如本文所描述的被允许如经由配置文件215所提供的信息所指示的根据导出数据并且将数据存储在合适的存储位置所要求的,将数据从一种文件类型转换成另一种文件类型。除了可被读取和转换的数据类型,其它信息也可被提供在配置文件中,例如指示上传器从所读取的数据中剥除某些不必要或不想要的信息的信息。例如,给定文档可包含文本、照片、图像、表格、附录等。对于给定数据请求,可能希望在将给定文档导出到想要的存储位置之前将文档中所包含的除了文本以外的所有内容从文档中剥除。因此,合适的转换模块可被用来将文档中的不想要的部分剥除,使得只有文档的想要的文本部分被最终导出。因此,如应当理解的,上传器模块115a-n所读取的数据可被按照需要并且按照合适的数据转换插件232a-n所允许的被转换。[0041]配置文件215解说了可被上传器模块115a_n访问的用于接收给定数据集或给定数据类型的数据上传指令的文件。被包含在配置文件中的数据上传指令可提供包括与要被上传的数据相关联的数据类型、数据读取指令以及用于允许上传器模块访问想要的数据的安全性信息在内的信息。此外,配置文件可提供关于理想数据要被如何转换(如果需要的话)的指令以及关于经上传的数据要被存储在何处以及经导出的数据要以什么文件类型被存储的指令。[0042]考虑例如一批用户数据要从包含在数据中心105中的计算设备110a中读取并且要从可扩展标记语言XML格式转换成超文本标记语言HTML格式使得数据可被传递到想要的存储库以经由基于HTML的网页呈现给进行分析的用户。还考虑个人可标识信息PII诸如用户姓名、用户年龄、用户社保号码、用户生日等要在数据被传递给指定的目的地存储库145a-n之前从数据中剥除或擦除。根据这一示例,根据命令,安装在、关联于、或者被允许访问包含想要的数据的计算设备ll〇a-n的数据上传器115a-n将首先读取配置文件215以接收有关读取、转换、以及导出想要的数据的指令。[0043]在经由配置读取器210读取配置文件215之际,上传器模块115a-n将知晓该数据当前根据XML格式存储并且该数据要被转换成HTML格式。此外,上传器模块将知晓PII要在转换过程期间在数据被导出到想要的存储库之前从数据中剥除。基于来自配置文件215中的这一信息,操作模块205将针对与相关联的数据类型例如XML和HTML有关的信息对数据类型220进行解析,以获得与根据讨论中的数据类型读取、转换以及导出数据所需要的合适的数据读取器插件227a-n、合适的数据转换插件232a-n、以及合适的数据导出插件237a-n有关的信息。根据本不例,操作模块205还将获得与按照配置文件215所指示的从数据中擦除PII信息所需的数据转换插件相关联的信息。[0044]一旦标识了合适的插件227、232、237,操作模块就可致使数据读取器模块225与合适的数据读取器插件227相关联地从相关联的计算设备110a-n中读取想要的信息。操作模块2〇5可随后致使数据转换模块23〇与数据类型转换模块和PII擦除模块相关联地根据需要转换数据。首先,合适的转换插件可将数据从示例的XML格式转换成示例的HTML格式,使得数据可被呈现在目的地存储库处的网页中。其次,从数据中擦除PII所需的合适的数据转换插件可由数据转换模块23〇用来标识个人可标识信息以及在数据被传递到存储库145之前擦除该信息。[0045]如本领域技术人员众所周知的,PII信息可根据各种可接受的手段来从数据文件中擦除。根据一种方法,被标识的PII信息可经由散列操作转换成数字串,使得PII信息可不被下游的用户或过程理解或消费。根据另一种方法,被标识的PII信息可被加密,使得信息可被传递给下游用户或过程,但是在下游用户或过程处加密的信息可随后根据需要被解密。在想要的数据被读取并且根据包含在配置文件2丨5中的信息如所要求地被转换之后,数据随后可由数据导出模块235与合适的数据导出插件237相关联地导出到指定的目的地存储位置。[0046]以上已结合图1和2描述了用于本发明的各方面的示例系统架构,图3是用于将数据从源位置上传至目的地位置的示例方法的流程图。方法300开始于开始操作305,并且前进至操作310,在操作310,接收如以上所描述的用于读取、转换计算机系统或用户数据并且将其从给定计算设备ll〇a-n导出到指定的存储库145a-n的指令。考虑例如在线软件应用服务的提供商想要在服务提供商的存储位置145a处接收存储在计算设备110a处的若干个用户文档,使得文档可被分析以处理错误,使得可进行所需要的技术修改或更新以在将来避免这类处理错误。根据这一示例,考虑服务提供商想要在文档被导出到服务提供商的存储位置145a之前从文档中擦除任何与文档作者相关联的个人可标识信息。如应当理解的,除了用户数据,与计算设备本身的操作有关的信息也可被请求导出到给定存储位置。例如,与在给定时间段期间发生的各种操作系统事件有关的信息可被请求,与计算设备对外围设备的访问有关的信息可被请求,诸如此类。响应于来自服务提供商的指令,配置文件215被生成,配置文件215将向相关联的数据上传器115a提供用于读取、转换以及导出想要的文档的fe息。[0047]在操作315,数据上传器115a经由配置文件读取器模块210读取配置文件215。在操作320,数据上传器模块115a确定要经由配置文件215处理的数据。根据本示例,数据上传器模块115a接收要从相关联的计算设备ll〇a中读取的文档的列表。在操作325,响应于包含在配置文件215中的信息,上传器模块115a确定是否需要给定数据读取器插件227a-n来读取想要的文档,是否需要给定数据转换插件232a-n来从文档中擦除任何个人可标识信息,以及是否需要特定的数据导出插件237a-n来根据配置文件215中包含的信息将数据导出到想要的存储位置。[0048]在操作330,数据上传器模块115a确定想要的信息的上传的数量和频率。例如,基于配置文件215中包含的信息,数据上传器模块115a可被指令在二十四小时的时间段内每三十分钟上传十个随机选择的文字处理文档以向发出请求的服务提供商提供二十四小时时间段内在计算设备ll〇a处生成的文档的采样。如应当理解的,数据上传模块所进行的数据处理的数量和频率可根据许多不同的属性来定义。例如,上传器可被指令根据文件大小例如,大小不大于十兆字节的文件来读取、转换和导出数据,或者上传器可被指令根据访问给定文件的用户的数量例如,检索所有被十个或更多个用户访问和或编辑的文件来处理文件。因此,如应当理解的,各种不同指令可被提供给上传器模块115a以指定要处理哪些数据以及多频繁地处理数据。[0049]在操作335,数据上传器模块life根据从配置文件215中且经由数据读取器插件模块227接收的信息从所标识的计算设备110a中读取想要的数据例如,想要的文档)。在操作340,所读取的数据被存储到存储器中用于随后的转换和导出操作。[0050]在操作345,如以上所描述的,由数据转换模块230与合适的数据转换插件232a-n相关联地基于从配置文件215中读取的信息转换所读取和存储的数据。根据本发明的一个方面,可在配置文件中提供定义读取的信息要如何被转换的一组标志。根据本示例,因为想要的信息要被擦除PII信息,PII擦除器插件23¾可被用来标识PII信息并从读取的文档中擦除PII信息。例如,根据从配置文件215中读取的指令,如果给定读取的文档包含十列信息,并且标识出列一、三和十包含PII信息,则PII擦除器转换模块可被指令对列一、三和十中包含的数据进行散列,使得数据不可由下游用户或过程消费或处理。替代地,可致使PII擦除器模块加密那些列中包含的数据,使得数据可不被下游用户或过程消费,但是如果需要,在下游用户或过程处,数据可随后被解密。[0051]如应被理解的,转换可根据读取的文档或其它数据项的各种次序和文件大小来执行。例如,如果给定数据集例如文档要被读取和转换,则当上传器模块读取存储器以获得想要的数据项时,上传器模块可首先从最老的文件开始,上传器模块可开始读取第一个文档,或者上传器模块可读取到存储器中直到达到缓冲器的限制或者直到已读取到文件的末尾。一旦文件已被读取并且已被存储到存储器中,则可按照配置文件所指示的应用指定的转换。因此,基于配置文件,数据可以各种方式进行转换。[0052]例如,转换插件可被允许将读取自源计算系统的数据从源计算系统处的第一状态修改成第二状态以上传至目的地计算系统。这一修改可包括从读取自源计算系统的数据中移除个人可标识信息PII、执行针对所读取的数据的计算以及对所读取的数据进行转换以包括经执行的计算的结果、将所读取的数据从第一格式化状态格式化成第二格式化状态例如,从XML到HTML、以及将所读取的数据从第一文件格式转换成第二文件格式例如,从流格式到固定格式,或反之)。如应理解的,这些仅仅是可在所读取的数据被上传之前对所读取的数据执行的转换的示例,并且转换插件可被用来以目的地存储库所需要的任意方式对数据进行转换。[0053]根据一个方面,当上传器模块读取和转换想要的数据时,该数据可根据数据扫描来读取和转换。例如,数据上传器可被指示每三十分钟扫描与计算设备110相关联的十个不同存储位置中的每一个。因此,根据这一示例,每三十分钟,十个数据负载或块将被读取、转换并导出到想要的存储位置。根据本发明的一个方面,数据上传器模块保持追踪在任意给定时刻其正读取的给定数据项集合中的位置以及其在因任意原因停止之前成功读取数据的最后一个位置例如,其因转换和导出前一读取的数据而临时停止的位置)。数据上传器可对其读取数据的最后位置应用书签或水印并且对其成功上传所读取和经转换的数据的最后位置应用第二书签或水印。因此,数据上传器模块可知晓,虽然其最后读取数据到给定存储器位置中的某个点,但是成功转换和上传的最后的点可能发生在存储器中的更早的位置,如果在下游指定的存储位置145a处确定错误的情况下需要数据上传器模块返回以重新读取和重新转换数据。[0054]在操作35〇,经转换的数据按照配置文件215中包含的信息所指示的被导出到想要的存储位置145a-n。在操作355,所读取、转换和导出的数据的接收方可按照需要分析数据以确定与数据有关的有帮助的信息,或者确定与从其读取数据的计算设备ll〇a的操作有关的有帮助的信息。在操作360,数据可随后被导出到其他位置以供后续的分析和报告,包括后续的导回到其原始提取自的计算设备110a。方法300在操作395处结束。[0055]尽管已经在结合在计算机上的操作系统上运行的应用程序执行的程序模块的一般上下文中描述了本发明,但是本领域技术人员将认识到本发明还可结合其它程序模块实现。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构及其他类型的结构。[0056]本文中所描述的实施例和功能可经由多个计算系统操作,这些计算系统包括而不限于台式计算机系统、有线和无线计算系统、移动计算系统(例如,移动电话、上网本、平板或板式计算机、笔记本计算机、以及膝上型计算机)、手持设备、多处理器系统、基于微处理器或可编程消费性电子设备、小型计算机、以及大型计算机。[0057]另外,本文中所描述的实施例和功能可在分布式系统(例如,基于云的计算系统)上操作,其中应用功能、存储器、数据存储和检索、以及各种处理功能可在分布式计算网络诸如因特网或内联网)上彼此远程地操作。各种类型的用户界面和信息可经由板上计算设备显示器或者经由与一个或多个计算设备相关联的远程显示单元显示。例如,各种类型的用户界面和信息可显示并且在各种类型的用户界面和信息在其上投影的墙面上交互。与通过其可实践本发明的实施例的多个计算系统的交互包括按键输入、触摸屏输入、语音或其它音频输入、其中相关联的计算设备配备有用于捕捉和解释用户手势以控制计算设备的功能的检测例如,相机功能的手势输入等等。[0058]图4-6及相关联的描述提供了其中可实施本发明的各实施例的各种操作环境的讨论。然而,关于图4-6所示出和讨论的设备和系统是用于示例和说明的目的,而非对可被用于实施本文所述的本发明的各实施例的大量计算设备配置的限制。[0059]图4是示出可用来实施本发明的各实施例的计算设备400的物理组件(即硬件)的框图。下面描述的计算设备组件可适用于上述的计算设备110、115、145。在基本配置中,计算设备400可包括至少一个处理单元402以及系统存储器404。取决于计算设备的配置和类型,系统存储器404可包括但不限于易失性存储例如,随机存取存储器)、非易失性存储例如,只读存储器)、闪存、或者此类存储器的任何组合。系统存储器404可包括操作系统405和适合于运行软件应用450的一个或多个程序模块406。例如,操作系统405可适合于控制计算设备400的操作。此外,可结合图形库、其它操作系统、或者任何其它应用程序来实践本发明的实施例,并且这些实施例不限于任何特定的应用或系统。该基本配置在图4中由虚线408内的那些组件示出。计算设备400可具有附加特征或功能。例如,计算设备400也可以包括附加的数据存储设备可移动和或不可移动),诸如磁盘、光盘或带。这些附加存储在图4中由可移动存储设备409和不可移动存储设备410示出。[0060]如上所声明的,大量程序模块和数据文件可被存储在系统存储器404中。尽管在处理单元402上执行,但是程序模块406可以执行包括但不限于下列过程:图3中所示的方法300的各阶段中的一个或多个。根据本发明的实施例可使用的其他程序模块可包括应用,诸如电子邮件和联系人应用、文字处理应用、电子表格应用、数据库应用、幻灯片演示应用、绘图或计算机辅助应用等。[0061]此外,可在电气电路中实践本发明的实施例,该电气电路包括离散电子元件、包含逻辑门的封装或集成电子芯片、利用微处理器或者在包含电子元件或微处理器的单个芯片上的电路。例如,可以通过片上系统S0C来实施本发明的各实施例,其中,可以将图4中示出的每个或许多组件集成到单个集成电路上。此类SOC设备可包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元、以及各种应用功能,所有这些单元被集成或“烧制”)到芯片基板上,作为单个集成电路。当通过S0C操作时,在此相对于提供跨多个工作负载的活动流描述的功能可以通过在单个集成电路芯片上集成有计算设备系统400的其它组件的专用逻辑来操作。还可使用能够执行逻辑操作诸如举例而言,与、或、以及非)的其它技术来实践本发明的实施例,这些技术包括但不限于机械、光学、流体和量子技术。另外,可在通用计算机内或者在任何其它电路或系统中实践本发明的实施例。[0062]计算设备400也可具有一个或多个输入设备412,如键盘、鼠标、笔、语音输入设备、触摸输入设备等等。也可包括诸输出设备414,如显示器、扬声器、打印机等等。前述设备是示例,并且可使用其它设备。计算设备4〇〇可包括允许与其它计算设备418通信的一个或多个通信连接416。合适的通信连接416的示例包括但不限于RF发射机、接收机、和或收发机电路系统、通用串行总线USB、并行和或串行端口。[0063]如本文中所使用的术语计算机可读介质可包括计算机存储介质。计算机存储介质可包括以用于存储信息诸如计算机可读指令、数据结构、或者程序模块的任何方法和技术实现的易失性和非易失性、可移除和不可移除介质。系统存储器404、可移除存储设备4〇9、以及不可移除存储设备410都是计算机存储介质示例(S卩,存储器存储)。计算机存储介质可包括RAM、R0M、电可擦除只读存储器EEPR0M、闪存或其它存储器技术、CD-ROM、数字多功能盘DVD或其它光学存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或者可用于存储信息且可由计算设备400访问的任何其它制品。任何此类计算机存储介质可以是计算设备400的一部分。计算机存储介质不包括载波或者其它经传播或经调制的数据信号。[0064]通信介质可通过计算机可读指令、数据结构、程序模块、或者经调制的数据信号诸如载波或者其他传送机制)中的其他数据体现,并且包括任何信息传递介质或传输介质。术语“经调制的数据信号”可描述具有以对该信号中的信息进行编码的方式设置或改变的一个或多个特性的信号。通过示例而非限制,通信介质可包括诸如有线网络或直接有线连接之类的有线介质、以及诸如声、射频RF、红外和其它无线介质之类的无线介质。[0065]图5A和5B示出可用来实施本发明的各实施例的移动计算环境500,例如移动电话、智能电话、平板个人计算机、膝上型计算机等。参考图5A,示出了用于实现各实施例的移动计算设备5〇0的一个实施例。在基本配置中,移动计算设备5〇〇是具有输入元件和输出元件两者的手持计算机。移动计算设备500通常包括显示器505以及允许用户将信息输入移动计算设备500的一个或多个输入按钮510。移动计算设备5〇5的显示器5〇〇还可用作输入设备例如」触摸屏显示器)。如果被包括在内,任选的侧输入元件515允许进一步的用户输入。侧输入元件515可以是旋转开关、按钮、或者任何其它类型的手动输入元件。在替换实施例中,移动计算设备5〇〇可合并或多或少的输入元件。例如,在一些实施例中,显示器5〇5可以不是触^屏。在又一替换实施例中,移动计算设备5〇〇是便携式电话系统,诸如蜂窝电话。移动计J芒备5〇0还可包括任选的小键盘535。任选的小键盘535可以是物理小键盘或者在触摸屏显上生成的“软”1、键盘。在各个实施例中,输出元件包括用于示出图形用户界面GUI的显=器5〇5、视觉指示器52〇例如,发光二极管)、和或音频换能器525例如,扬声器)。在一些头施例中,移动计算设备5〇〇合并用于向用户提供触觉反馈的振动换能器。在又一实施例中,移动计算设备5〇〇结合诸如音频输入如传声器插孔)、音频输出(如耳机插孔)、以及^频输出(如HDMI端口)之类的外围设备端口540,用于将信号发送到外部设备或从外部设备接收信号。=066]图5B是示出移动计算设备的一个实施例的架构的框图。即,移动计算设备5〇〇可结又:系统(即架构502以实现某些实施例。在一个实施例中,系统5〇2被实现为能够运行—丄丄2用例如,浏览器、电子邮件、曰历、联系人管理器、消息收发客户端、游戏、以及二纖器〉的“智能电话”。在一些实施例中,系统502被集成为计算设备,诸如集成个人数字助理PDA和无线电话。朱]1或多I应用程序550可被加载到存储器562中,并且在操作系统564上或者与其相关联地运行。应用程序的示例包括电话拨号程序、电子通信程序、个人信息管理PM程序、文字处理程序、电子表格程序、因特网浏览器程序、消息通信程序等等。系统502还包括存储器562内的非易失性存储区域568。非易失性存储区域568可用于存储持久性信息,如果系统502断电,该持久性信息则不会丢失。应用程序150可使用和存储非易失性存储区域568中的信息,诸如电子邮件应用所使用的电子邮件或其它消息等。同步应用未示出)还驻留在系统502上,并且被编程为与驻留在主机计算机上的相应同步应用交互以使存储在非易失性存储区域568中的信息保持与存储在主机计算机的相应信息同步。如应当理解的,其它应用也可被加载到存储器562并在移动计算设备500上运行。[0068]系统502具有可被实现为一个或多个电池的电源570。电源570可能进一步包括外部电源,诸如补充电池或对电池再充电的AC适配器或供电底座(powereddockingcradle〇[0069]系统502还可包括执行发射和接收射频通信的功能的无线电572。经由通信载体或服务供应者,无线电572促进系统502和“外部世界”之间的无线连接。在操作系统564的控制下进行与无线电572之间的传输。换句话说,可经由操作系统564将无线电572接收到的通信散布到应用程序550反之亦然。[0070]可以使用视觉指示器520来提供视觉通知和或可以使用音频接口574来通过音频换能器525产生可听通知。在所解说的实施例中,视觉指示器520是发光二极管LED而音频换能器525是扬声器。这些设备可直接耦合到电源570以使它们在激活时保持开启达通知机制所陈述的持续时间,即使处理器560以及其它组件可能关闭以节约电池电量。LED可被编程为无限地保持开启,直至用户采取措施来指示该设备的开启状态。音频接口574用于向用户提供听得见的信号且接收来自用户的听得见的信号。例如,除了耦合到音频换能器525以夕卜,音频接口574还可耦合到话筒以接收听得见的输入,诸如促进电话交谈。根据本发明的实施例,话筒还可用作音频传感器以促进对通知的控制,如将在下文中所描述的。系统502可进一步包括允许板载相机53〇的操作来记录静止图像、视频流等的视频接口576。[0071]实现系统500的移动计算设备502可具有附加特征或功能。例如,移动计算设备500还可包括附加数据存储设备(可移除和或不可移除),诸如磁盘、光盘或带。这种附加存储设备在图5B中用非易失性存储区568示出。[0072]如上所述,通过移动计算设备500生成或捕捉且经由系统502存储的数据信息可在本地被存储在移动计算设备5〇0上,或者该数据可被存储在可由该设备经由无线电572或者经由移动计算设备500与关联于移动计算设备500的单独计算设备例如,分布式计算网络中的服务器计算机诸如因特网)之间的有线连接访问的任意数量的存储介质上。如应当领会的,可经由移动计算设备500、经由无线电572、或者经由分布式计算网络访问此类数据信息。^似地,可以在根据熟知的数据信息转移和存储装置包括电子邮件和协同数据信息共享^统)的用于存储和使用的计算设备之间容易地转移此类数据信息。[0073]图6示出用于跨分布式计算环境的各组件来提供本文中描述的功能的系统的架构的一个实施例。与上文描述的应用相关联地进行开发、交互或编辑的内容可被存储在不同通信信道或其他存储类型中。例如,可使用目录服务622、web门户624、邮箱服务626、即时消息存储628、或者社交网站630来存储各种文档。如本文中描述的,应用450例如,电子通信应用)可使用用于跨多个工作负载来提供本文中描述的功能的这些类型的系统中的任意。服务器价5可为客户端6〇5A-C和llOa-n提供功能。作为一个示例,服务器615可以是通过web提供此处所描述的应用功能的web服务器。服务器615可在web上通过网络125、610向客户端6〇5A-C和110a-n提供应用功能。作为示例,客户端计算设备110a-n可被实现并被具体化在个人计算机6〇5A、平板计算设备605B和或移动计算设备605C例如智能电话、或其他计算设备中。客户端计算设备的这些实施例中的任一个可从存储616获得内容。[0074]例如,以上参考根据本发明的实施例的方法、系统和计算机程序产品的框图和或操作解说来描述本发明的实施例。框图中所注释的功能动作可以不按照如任一流程图中所示的次序发生。例如,连续示出的两个框实际上可基本并发地执行,或者取决于所涉及的功能动作,这些框有时可以相反的次序执行。[0075]本申请中所提供的一个或多个实施例的描述和解说并非旨在限制或限定如以任何方式要求保护的本发明的范围。本申请中所提供的实施例、示例和细节被认为足以传达占有且使其它人能够得到和使用要求保护的发明的最佳模式。要求保护的发明不应当被解释为限于本申请中所提供的任一实施例、示例或细节。不管是组合还是单独地示出和描述,各个结构和方法特征旨在选择性地包括或省略以产生具有一组特定特征的实施例。己经提供有本申请的描述和解说,本领域技术人员可设想落入在不背离要求保护的发明的更宽范围的本申请中体现的一般发明性概念的更宽泛方面的精神的变体、修改、以及替换实施例。

权利要求:1.一种用于将数据从源系统上传至目的地系统的计算机实现的方法,包括:接收将数据从源计算系统上传至目的地计算系统的请求;从所述源计算系统读取所述数据;根据上传至所述目的地计算系统所要求的对从所述源计算系统读取的数据进行转换.以及*将经转换的数据上传至所述目的地计算系统。2.如权利要求1所述的计算机实现的方法,其特征在于,接收上传来自所述源计算系统的数据的请求包括接收上传来自所述源计算系统的用户数据的请求。3.如权利要求1所述的计算机实现的方法,其特征在于,接收上传来自所述源计算系@的数据的请求包括接收上传来自所述源计算系统的系统数据的请求。4.如权利要求1所述的计算机实现的方法,其特征在于,接收上传来自所述源计算系统的数据的请求包括接收上传来自一源计算系统的数据的请求,该源计算系统是包括数据中心的多个计算系统中的一个计算系统。5.如权利要求1所述的计算机实现的方法,其特征在于,在接收将数据从源计算系统上传至目的地计算系统的请求之后,确定用于将所述数据从所述源计算系统上传至所述目的地计算系统的一个或多个数据上传指令。6.如权利要求5所述的计算机实现的方法,其特征在于,确定一个或多个数据上传指令包括读取用于获取所述一个或多个数据上传指令的配置文件。7.如权利要求5所述的计算机实现的方法,其特征在于,确定一个或多个数据上传指令包括标识要从所述源计算系统上传的数据。8.如权利要求5所述的计算机实现的方法,其特征在于,确定一个或多个数据上传指令包括标识所述数据要被上传至的所述目的地计算系统。9.如权利要求5所述的计算机实现的方法,其特征在于,确定一个或多个数据上传指令包括确定用于在将所述数据上传至所述目的地计算系统之前转换所述数据的数据转换指令。10.如权利要求9所述的计算机实现的方法,其特征在于,确定数据转换指令包括标识用于在将所述数据上传至所述目的地计算系统之前对所述数据进行转换的转换插件模块。11.如权利要求1所述的计算机实现的方法,其特征在于,转换从所述源计算系统读取的数据包括将所读取的数据从所述源计算系统处的所读取的数据的第一状态修改成将所述数据上传至所述目的地系统所要求的第二状态。12.如权利要求11所述的计算机实现的方法,其特征在于,将所读取的数据从所述源计算系统处的所读取的数据的第一状态修改成第二状态包括从所读取的数据中移除个人可标识信息PII。13.如权利要求12所述的计算机实现的方法,其特征在于,从所读取的数据中移除PII包括对所读取的数据中的经标识的PII进行散列。14.如权利要求I3所述的计算机实现的方法,其特征在于,从所读取的数据中移除PII包括对所读取的数据中包含的PII进行加密。15.如权利要求1所述的计算机实现的方法,其特征在于,转换从所述源计算系统读取的数据包括以下的一个或多个:对所读取的数据执行计算并且对所读取的数据进行转换以包括经执行的计算的结果;将所读取的数据从第一格式化状态格式化为第二格式化状态;以及将所读取的数据从第一文件格式转换成第二文件格式。16.—种用于将数据从源系统上传至目的地系统的系统,所述系统包括:一个或多个处理器;存储能够由所述一个或多个处理器执行的一个或多个模块的存储器,所述一个或多个模块包括:数据上传器模块,用于接收将数据从源计算系统上传至目的地计算系统的请求;经由数据读取器模块从所述源计算系统读取所述数据;经由数据转换模块根据上传至所述目的地计算系统所要求的对从所述源计算系统读取的数据进行转换;以及经由数据导出模块将经转换的数据上传至所述目的地计算系统。17.如权利要求16所述的系统,其特征在于,所述数据上传器模块进一步用于读取配置文件以用于获取用于将数据从所述源计算系统上传至所述目的地系统的一个或多个指令。18.如权利要求17所述的系统,其特征在于,所述数据上传器模块进一步用于使用数据转换模块来将从所述源计算系统读取的数据从第一状态转换成上传至所述目的地计算系统所要求的第二状态。19.如权利要求18所述的系统,其特征在于,所述数据上传器模块进一步用于对从所述源计算系统读取的数据进行转换,包括以下的一个或多个:将个人可标识信息PII从读取自所述源计算系统的数据中移除;对所读取的数据执行计算并且对所读取的数据进行转换以包括经执行的计算的结果;将所读取的数据从第一格式化状态格式化为第二格式化状态;以及将所读取的数据从第一文件格式转换成第二文件格式。20.—种包含计算机可执行指令的计算机可读介质,所述计算机可执行指令在由计算机执行时执行一种用于将数据从源系统上传至目的地系统的方法,包括:在数据上传器模块处接收将用户和或系统数据从源计算机上传至目的地存储库的请求;经由数据读取插件模块从所述源计算机中读取所述数据;经由数据转换模块根据上传至所述目的地计算系统所要求的对从所述源计算机读取的所述数据进行转换;以及经由数据导出插件模块将经转换的数据上传至所述目的地计算系统。

百度查询: 微软技术许可有限责任公司 将用户和系统数据从源位置上传到目的地位置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。