CN105229634A - 数据迁移框架 - Google Patents

数据迁移框架 Download PDF

Info

Publication number
CN105229634A
CN105229634A CN201480014461.2A CN201480014461A CN105229634A CN 105229634 A CN105229634 A CN 105229634A CN 201480014461 A CN201480014461 A CN 201480014461A CN 105229634 A CN105229634 A CN 105229634A
Authority
CN
China
Prior art keywords
data
business datum
data structure
temporal data
mapping
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201480014461.2A
Other languages
English (en)
Other versions
CN105229634B (zh
Inventor
S·斯里尼瓦桑
M·米特尔
T·王
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN105229634A publication Critical patent/CN105229634A/zh
Application granted granted Critical
Publication of CN105229634B publication Critical patent/CN105229634B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/214Database migration support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

从数据***的实例检索用户数据。生成数据***和一个或多个暂存表之间的映射并且生成包括数据和该映射的包。使用该映射将用户数据保存到一个或多个暂存表。

Description

数据迁移框架
背景
数据***当前被广泛使用。然而,随着组织的成长或改变,可能希望从当前部署的一种数据***切换到另一种数据***。将公司的数据从一种数据***迁移到另一种数据***可能是相当复杂且困难的。
在一个特定示例中,业务数据***被许多组织用来执行业务操作。业务数据***可包括例如企业资源规划(ERP)***、客户关系管理(CRM)***以及业务线(LOB)***以及其他业务数据***。
随着公司成长或改变,对于公司或组织而言从使用一种业务数据***改变成使用另一种业务数据***并非不常见。这可能是困难的。例如,两种业务数据***的格式可能是不同的。在此情况下,从源业务数据***向目标业务数据***准确地转移数据可能是困难的。如果源业务数据***中的各记录根据与目标业务数据***中的各记录不同的格式保存,数据可能被不准确地从一个***移动到另一个***,并且数据甚至可能丢失。
另外,情况可能是公司简单地使用数据库来保留其业务数据。该公司可能随后想要将数据从数据库迁移到业务数据***。在此情况下,业务数据的源甚至不是业务数据***而只不过是简单数据库。这可加剧与数据迁移相关联的问题。
提供以上讨论仅用作一般的背景信息,并不旨在帮助确定所要求保护的主题的范围。
概述
从数据***的实例检索用户数据。生成数据***和一个或多个暂存表(stagingtable)之间的映射并且生成包括数据和该映射的包。使用该映射将用户数据保存到一个或多个暂存表。
提供概述以便以简化形式介绍将在以下详细描述中进一步描述的一些概念的选集。本概述不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。所要求保护的主题不限于解决在背景中提及的任何或所有缺点的实现。
附图简述
图1是数据迁移体系结构的一个实施例的框图。
图2是示出图1所示的体系结构的总体操作的一个实施例的流程图。
图3是示出用于将数据迁移到基于云的业务数据***的迁移体系结构的框图。
图4是用于将数据迁移到基于云的业务数据***的迁移体系结构的另一框图。
图5是示出用于将数据迁移到基于云的业务数据***的迁移体系结构的另一个实施例的框图。
图6示出基于云的体系结构的更多细节。
图7-11示出了移动设备的各种实施例。
图12是一个解说性计算环境的框图。
详细描述
图1示出用于从源业务数据***102向目标业务数据***104迁移数据的体系结构100的一个实施例。在本文中所述的实施例中,源业务数据***102和目标业务数据***104两者将被描述为企业资源规划(ERP)***。然而,要注意,它们也可以是多种多样的其它数据***中的任何数据***,只不过在本文中出于示例的原因将它们描述为业务数据***(且具体而言为ERP***)。
情况可能是业务数据***102是目标业务数据***104的不同版本,或者源业务数据***102是与目标业务数据***104完全不同的业务数据***,在本文中构想了所有这些可能性。
在任何情况下,源业务数据***102被示出为耦合至用户设备106,该用户设备106生成具有用户输入机制110的用户界面显示108,该用户输入机制110可以被用户112致动以控制和操纵源业务数据***102。用户输入机制110可以是多种多样的不同类型的用户输入机制中的任何机制。例如,它们可以是下拉菜单、文本框、图标、按钮、复选框或其他用户可致动输入机制。另外,它们还可以按多种多样不同的方式来致动。在使用语音识别组件的情况下,它们可以通过语音命令来被致动。此外,在触敏屏幕上显示用户界面显示108的情况中,它们可以通过触摸姿势(诸如使用用户的手指、指示笔或其他机制)来被致动。另外,它们可以使用点击设备(诸如鼠标或跟踪球),使用硬件键盘或软键盘、小键盘、拇指垫等来致动。
源业务数据***102还解说性地包括具有一个或多个源实体文件116的数据源114。源实体文件116解说性地是与源业务数据***102中的实体相关联的业务记录。存在多种多样不同类型的实体,诸如表示客户的客户实体、表示厂商的厂商实体、表示***的***实体、表示产品的产品实体,等等。
目标业务数据***104解说性地包括目标数据存储118和暂存(staged)数据存储128。另外,目标业务数据***104解说性地包括目标业务数据应用140和处理器142。将注意,尽管暂存数据存储128和目标数据存储118两者均被示为目标业务数据***104的部分,但是它们也可以是分开的或远离目标业务数据***104并可由***104访问。另外,尽管关于目标业务数据***104示出了两个数据存储,但是还可以使用附加的数据存储,或者这两个数据存储可以被结合到单个数据存储中。同样,尽管暂存***(stagingsystem)120和目标***132被示出与目标业务数据***104和源业务数据***102分开,但是它们还可以是这两个***中任一者的部分。
在一个实施例中,暂存***120包括源到暂存映射器组件122、源到暂存组件124和处理器126。目标***132包括暂存到目标映射器组件134、暂存到目标组件136和处理器138。
处理器126、138和142是具有相关联的存储器和定时电路***(未单独示出)的解说性的计算机处理器。它们被它们所隶属的***的其他部分解说性地激活并促成这些部分的功能。
在更加详细地描述体系结构100的总体操作之前,出于清楚起见提供简要概览。当用户112决定将数据源114中的数据迁移到目标业务数据***104中的目标数据源118时,源到暂存映射器组件122解说性地生成数据源114中的数据和暂存数据存储128中的各种暂存表(或其他暂存数据结构)之间的映射123。例如,映射器122将解说性地生成源实体文件116中的数据和暂存数据存储128中的数据结构之间的映射。源到暂存组件124随后使用映射123将数据从源实体文件116迁移到暂存数据存储128中所映射的数据结构。这导致来自源实体文件116的数据被迁移到数据存储128中的表或其他结构作为暂存数据130。
暂存到目标映射器组件134随后生成暂存数据存储128中各数据结构与目标数据存储118中各数据结构之间的映射,其中暂存数据存储128存储暂存数据130,目标数据存储118将来自源实体文件116的数据最终存储为一个或多个目标实体文件150。这被示为映射135。暂存到目标组件136随后访问映射135,并将暂存数据130迁移到目标数据存储118以及将其存储在目标实体文件150中。一旦完成这个,就可以如用户112所期望那样在目标实体文件150上运行目标业务数据应用140。
图2是示出从源业务数据***102向目标业务数据***104迁移数据的体系结构100的总体操作的一个实施例的流程图。源到暂存映射器组件122首先读源实体文件116。这由图2中的框200指示。将注意,源实体文件116可以根据未知的方案202来格式化,并且其还可以是非规范化(或不规则)的方案204。类似地,如背景部分简要讨论的,数据的源甚至不需要是业务数据***。相反,它可以仅是数据库或其他***。在任何情况下,映射器组件122读源实体文件116。
组件122随后生成映射123,该映射从源实体文件116映射到暂存数据存储128中的一个或多个暂存表。这可以包括多种多样的不同步骤及匹配技术。在一个实施例中,映射器组件122对照源实体文件116中的数据来映射暂存数据存储128中现有的各列。为了做到这个,映射器组件122可以对照源实体文件116中的数据名称来映射各列的名称。在两个名称完全匹配的情况下,与所匹配的名称相对应的源数据以及暂存数据存储128中与所匹配的名称相对应的列被相互映射。这由图2中的框206指示。映射器组件122还解说性地执行部分匹配。例如,如果数据既具有表名称又具有字段名称,映射器组件122解说性地尝试匹配这两者。替换地,暂存数据存储128中的现有表可以将源实体文件116中找出的表名和字段名分成两个单独的表。在此情况下,源数据被匹配到暂存数据存储128中的这两个单独的表中。图2中的框208和框210指示跨多个不同表中的多个不同行的部分匹配和匹配。当然,还可以使用其他类型的映射技术,如框212所指示。例如,如果源实体文件116具有在相同栏内的客户名称和消费者地址,映射器组件122可以解说性地识别它们可以被映射到暂存数据存储128中的两个不同的单独的表中,并也以那种方式生成映射。在任何情况下,图3中的框214解说性地指示生成从源文件到暂存数据存储128中暂存表的映射。
一旦映射器组件122生成映射123,源到暂存组件124就从源实体文件116检索数据并填充暂存数据存储128中的一个或多个暂存表以获得暂存数据130。因为按未知格式的源实体文件116已经被转移到暂存表,数据现在处于规范(或预期)形式。用源数据填充暂存表由图2中的框216指示。
将注意到,在此处理期间,源到暂存组件124还可以执行各种不同的处理操作。例如,它可以在将源数据存储在暂存表中之前对源数据执行转换218或变换220。它可以调用方法222,或者直接复制数据224。当然,它还可以执行其他处理操作,且这由框226指示。
转换、变换或其他处理步骤的一些示例包括将源文件从分隔文件转换成固定文件,反之亦然。也即,源文件可以是逗号分隔文件,其中名称和地址(例如)由逗号分隔。另一方面,它可以是固定文件,其中头十个字符被保留用于名称而接下来的十个字符被保留用于地址,等等。转换或变换可以从一种形式转换成另一种形式,或一些其他形式。另外,一些***具有可以是两个字母代码的国家代码,而其他的具有三个字母的代码。还可以做这些变换。当然,在数据从源转移到暂存表时可以对数据执行多种多样的其他变换或处理步骤。
一旦数据已经被暂存,就在暂存表中确认数据。这由图2中的框228指示。确认也可以按各种不同的方式来执行。在一个实施例中,这可以在字段级230、在记录级232或另一级234处执行。暂存到目标组件136解说性地对照目标业务数据***104中已经存在的参照数据来确认暂存数据。也即,它可以对照参照数据来确认暂存数据以确保在暂存表中存在每一字段、列等。
一旦已经确认了暂存数据130,暂存到目标组件136或者生成映射135或者访问映射135,该映射135将暂存数据存储128中的暂存表映射到目标数据存储118中的记录。生成或访问映射135由图2中的框236指示。
组件136随后将暂存数据130从数据存储128中的暂存表复制到目标数据存储118。在正讨论的实施例中,暂存数据130(表示源实体文件116)被复制到目标数据存储118中的一个或多个目标实体文件150。这由图2中的框238指示。
将注意,即使在暂存***120仍然正将数据从数据源114暂存到暂存数据存储128时,目标***132也可以开始将暂存数据130从暂存数据存储128复制到目标数据存储118。这类并行处理可以节省时间。还将注意,如果在复制给定行时发生错误(例如,从暂存数据130到目标实体文件150),只是跳过该行并生成针对该行的出错消息或出错数据,从而使其可以被显示给用户以被补救。但是,这并不停止迁移数据的整个过程。相反,剩余的数据(不包括错误)将被继续迁移。
在将暂存数据130复制到目标数据存储118期间,目标***132还可以对数据执行处理步骤。例如,与暂存***120一样,处理步骤可以包括变换240、转换242、调用方法244、直接复制246或者其他类型的处理步骤248。应当注意,还可以以多种多样的不同的方式进行将暂存数据130从暂存数据存储128复制到目标数据存储118。例如,可以逐行地进行***,或成集合或成组地进行***。映射可以一次单个映射或一次多个映射地读,并且可相应地执行数据迁移。
一旦数据已经被成功地迁移到目标数据存储118,就从暂存数据存储128去除数据。这由图2中的框250指示。
在一个实施例中,如果用户112对源实体文件116作出更新,不需要重复整个数据迁移过程。相反,映射器组件122只是生成从更新的信息到暂存数据存储128的映射,并且只有来自源114的经更新数据被复制到暂存表。数据随后被确认且更新也被复制到目标数据存储118中。这由图2中的框254、256和258来指示。
但是,如果没有执行更新,则处理完成。这也由框254指示。
在一个具体实施例中,情况可能是目标业务数据***104是基于云的业务数据***。在该实施例中,业务数据***可以被托管在多承租人环境中,其中基于云的业务数据***托管针对多个不同承租人中的每个承租人的数据和业务数据应用,其中每个承租人与不同的组织对应。
图3示出用于将数据从业务数据***的场所内版本迁移到业务数据***的基于云的版本(或者甚至是不同业务数据***的基于云的版本)的迁移基础结构的一个实施例的框图。图3中所示的一些项与图1中所示的那些是类似的并且被类似地编号。
但是,在图3中可见,并非简单地具有目标业务数据***104,该***实际上是基于云的业务数据***260。***260托管业务数据应用262的经托管版本并且目标数据存储118与经托管的业务数据存储264对应。类似地,目标实体文件150与托管的实体文件266对应。类似地,图3示出源***102被定义为场所内业务数据***268,该场所内业务数据***268运行场所内业务数据应用270,该业务数据应用270本身访问场所内数据272。数据272解说性地包括场所内实体文件274,该场所内实体文件274包括要被迁移到托管的实体文件266的源实体文件。在图3中所示的各实施例中,场所内实体文件274通过网络278迁移到托管的实体文件266。上传组件280被示为或者在云259上,或者在场所内业务数据***268上(尽管它还可以在两者上)。
在图3中所示的实施例中,上传组件280仅接收要被迁移到云259的数据的标识。在此实施例中,它是场所内实体文件274。上传组件280由此通过网络278将文件274上传到云,在那里其被标识为已被上传到云的场所内实体文件282。随后,继续如上参考图2所述地继续处理。文件282中的数据被暂存***120暂存到暂存数据存储128中。它随后被目标***132复制到目标***(基于云的业务数据***260)。因此,在云259上执行用于迁移数据的所有处理(除了将数据文件上传到云)。
图4示出用于将业务数据迁移到云259的迁移体系结构的另一框图。图4中所示的一些项与图3中所示的那些是类似的并且被类似地编号。但是,图4示出在场所内业务数据***268处执行暂存。因此,场所内暂存组件282首先被下载到场所内业务数据***268。它可以是业务数据***268的一部分或与其分离。仅出于示例目的,它被示为***的部分。组件282访问场所内实体文件274,且将其映射并转移到场所内暂存数据存储248作为场所内暂存数据286。上传组件280随后将场所内暂存数据上传到云259上的暂存数据存储128中。数据被示为场所内暂存数据288。随后如常继续处理,其中目标***132将数据288从暂存数据存储128映射并转移到基于云的业务数据***260。
图5示出又一体系结构。在图5中,在场所内业务数据***处执行暂存目标文件和生成目标文件两者,并且通过网络278简单地将目标文件上传到基于云的业务数据***260,在那里它被存储到托管的业务数据存储264中作为托管的实体文件266。图5中所示的多个项与图4中所示的那些是类似的并且被类似地编号。但是,图5还示出场所内数据***268还包括场所内目标***290,该场所内目标***290执行暂存到目标映射以及数据迁移以生成托管的实体文件292。这是如上关于图2所述那样进行的,除了是在场所内的承租人处而不是在云259中进行的以外。上传组件280随后简单地上传托管实体文件292,其中托管实体文件292被放置在托管的业务数据存储264中。
图6是图1中显示的体系结构100部分的框图,除了它被以各种方式置于云计算体系结构500中。云计算提供了不要求最终用户知晓交付服务的***的物理位置或配置的计算、软件、数据访问和存储服务。在各个实施例中,云计算通过诸如因特网之类的广域网使用合适的协议来交付服务。例如,云计算提供者通过广域网交付应用,并且它们可以通过web浏览器或任何其他计算组件被访问。体系结构100的软件或组件以及相对应的数据可被存储在远程位置处的服务器上。云计算环境中的计算资源可以被整合在远程数据中心位置处或者它们可以是分散的。云计算基础体系结构可以通过共享数据中心来交付服务,即使在用户看来它们是单个访问点。因此,在此所述的组件和功能可以从远程位置处的服务提供者使用云计算体系结构来提供。可替代地,它们可以从常规的服务器中提供,或者它们可以直接地或以其他方式安装在客户端设备上。
本说明书旨在包括公共云计算和私有云计算两者。云计算(公共和私有两者)提供了基本无缝的资源联营以及对管理和配置底层硬件基础结构的降低的需求。
公共云由供应商管理,并且通常支持使用同一基础结构的多个消费者。此外,与私有云相反,公共云能够将终端用户从管理硬件中释放出来。私有云可由组织本身管理,并且基础结构通常不与其他组织共享。该组织在某种程度上仍然维护着硬件,诸如安装和维修等。
在图6中所示的实施例中,一些项与先前的图中所示的那些是类似的并且它们被类似地编号。图6具体地示出体系结构100位于云502(可以是公共的、私有的或者其中某些部分是公共的而某些部分是私有的组合)中。因此,用户112使用用户设备106通过云502来访问那些***。
图6还描绘了云体系结构的另一实施例。图6示出还构想体系结构***100的某些元素被设置在云502中而某些元素没有被置于云502中。作为示例,数据存储264可被置于云502的外部,并且通过云502来访问。在另一示例中,暂存***120或目标***132可在云502的外部。无论它们位于哪里,它们都可直接由设备504通过网络(广域网或局域网)访问,它们可由服务主存在远程站点处,或者它们可作为服务通过云来提供或通过驻留在云中的连接服务来访问。本文构想了所有这些体系结构。
还要注意,体系结构100或其部分可被置于各种不同的设备上。这些设备中的某些包括:服务器、台式计算机、膝上型计算机、平板计算机、或其他移动设备,诸如掌上计算机、蜂窝电话、智能电话、多媒体播放器、个人数字助理等。
图7是可被用作其中可部署本***(或其部分)的用户或客户端的手持式设备16的手持式或移动计算设备的一个说明性实施例的简化框图。图8-11是手持式或移动设备的示例。
图7提供了客户端设备16的组件的总体框图,该客户端设备16可以运行体系结构100的模块或与体系结构100交互,或这二者。在设备16中,提供了通信链路13,该通信链路允许手持设备与其它计算设备通信,并且在一些实施例中提供用于诸如通过扫描来自动接收信息的信道。通信链路13的示例包括:红外端口、串行/USB端口、诸如以太网端口之类的电缆网络端口、以及允许通过一个或多个通信协议的通信的无线网络端口,所述通信协议包括作为用于提供对网络的蜂窝接入的无线服务的通用分组无线服务(GPRS)、LTE、HSPA、HSPA+、以及其他3G和4G无线电协议、1Xrtt和短消息服务,并包括提供对网络的无线连接的802.11和802.11b(WiFi)协议、和蓝牙协议。
根据其他实施例,应用或***(如***102)在连接到SD卡接口15的可移动安全数字(SD)卡上被接收。SD卡接口15和通信链路13沿总线19与处理器17(也可实现来自图1的处理器)通信,该总线19还连接到存储器21和输入/输出(I/O)组件23以及时钟25和位置***27。
在一个实施例中,提供了I/O组件23以促进输入和输出操作。针对设备16的各个实施例的I/O组件23可以包括:输入组件,比如按钮、触摸传感器、多点触摸传感器、光学或视频传感器、语音传感器、触摸屏、邻近传感器、话筒、倾斜传感器以及重力开关;以及输出组件,比如显示设备、扬声器和或打印机端口。也可以使用其他I/O组件23。
时钟25解说性地包括输出时间和日期的真实时间时钟组件。时钟还可以解说性地为处理器17提供定时功能。
位置***27解说性地包括输出设备16的当前地理位置的组件。这例如可以包括全球定位***(GPS)接收机、LORAN***、航位推算***、蜂窝三角测量***或者其他定位***。这例如还可以包括生成所期望的地图、导航线路和其它地理功能的测绘软件或导航软件。
处理器21存储操作***29、网络设置31、应用33、应用配置设置35、数据存储37、通信驱动程序39以及通信配置设置41。存储器21可以包括所有类型的有形易失性和非易失性计算机可读存储器设备。其还可以包括计算机存储介质(下面描述)。存储器21存储计算机可读指令,所述指令在被处理器17执行时致使处理器根据所述指令执行计算机实现的步骤或功能。***102或数据存储104中的项例如可驻留在存储器21中。类似地,设备16可具有客户端业务***24,该客户端业务***24可运行各种业务应用或实现体系结构100的部分或全部。处理器17可以也被其他组件激活以促进它们的功能。
网络设置31的示例包括诸如代理信息、因特网连接信息以及测绘之类的事物。应用配置设置35包括为特定企业或用户定制应用的设置。通信配置设置41提供了用于与其他计算机进行通信的参数,并且包括诸如GPRS参数、SMS参数、连接用户名和口令之类的项目。
应用33可以是之前已经存储在设备16上的应用或是在使用期间安装的应用,但是这些应用可以是操作***29的一部分,或者也可以在设备16之外被托管。
图8示出其中设备16是平板计算机600的一个实施例。在图8中,计算机600被示为具有显示屏602。屏幕602可以是触摸屏(使得来自用户手指604的触摸姿势可以用于与应用交互)或者启用笔的界面,其接收来自笔或指示笔的输入。其还可以使用屏幕上虚拟键盘。当然,其还例如可以通过诸如无线链路或USB端口之类的合适的附连机制附连到键盘或其他用户输入设备。计算机600还可以解说性地接收语音输入。
图9和图10提供了可用的设备16的附加示例,尽管也可以使用其他设备。在图9中,提供智能电话或功能电话或移动电话45作为设备16。电话45包括:一组小键盘47,其用于拨打电话号码;显示器49,其能够显示包括应用图像、图标、网页、照片和视频在内的图像;以及控制按钮51,其用于选择在显示器上示出的项目。电话包括天线53,该天线53用于接收诸如通用分组无线服务(GPRS)和1Xrtt之类的蜂窝电话信号以及短消息服务(SMS)信号。在一些实施例中,电话45还包括容纳安全数字(SD)卡57的SD卡槽55。
图10的移动设备是个人数字助理(PDA)59或多媒体播放器或平板计算设备等等(在此称为PDA59)。PDA59包括电感屏61,所述电感屏感测指示笔63(或其他指示器,诸如用户的手指)在该指示笔被置于屏幕之上时的位置。这允许用户在屏幕上选择、突出显示和移动项目以及绘图和书写。PDA59还包括多个用户输入键或按钮(比如按钮65),其允许用户将显示器61上所显示的菜单选项或其他显示选项滚屏,并且允许用户在没有接触显示器61的情况下改变应用或选择用户输入功能。尽管未被示出,但是PDA59可以包括允许与其他计算机进行无线通信的内置天线和红外发射机/接收机、以及允许对其他计算设备的硬件连接的连接端口。这样的硬件连接通常是通过经由串行或USB端口连接到其他计算机的支架来进行的。因此,这些连接是非网络连接。在一个实施例中,移动设备59还包括容纳SD卡69的SD卡槽67。
图11类似于图9,不同之处在于电话是智能电话71。智能电话71具有显示图标或图块或其他用户输入机制75的触敏显示器73。机制75可由用户用来运行应用、进行呼叫、执行数据传输操作,等等。一般而言,智能电话71被构建在移动操作***上且提供比功能电话更高级的计算能力和连接性。
注意,设备16的其他形式是可能的。
图12是其中可部署体系结构100(例如)或体系结构100的部分的计算环境的一个示例。参考图12,用于实现一些实施例的示例性***包括计算机810形式的通用计算设备。计算机810的组件可以包括,但不限于,处理单元820(可以包括上述处理器)、***存储器830和将包括***存储器在内的各种***组件耦合至处理单元820的***总线821。***总线821可以是若干类型的总线结构中的任一种,包括存储器总线或存储器控制器、***总线和使用各种总线体系结构中的任一种的局部总线。作为示例而非限制,这样的体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和***部件互连(PCI)总线(也称为夹层(Mezzanine)总线)。参考图1描述的存储器和程序可被部署在图12的对应部分中。
计算机810通常包括各种计算机可读介质。计算机可读介质可以是能由计算机810访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质不同于且不包括已调制数据信号或载波。计算机存储介质包括硬件存储介质,该硬件存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法和技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机810访问的任何其它介质。通信介质通常具体化计算机可读指令、数据结构、程序模块或传输机制中的其他数据,并包括任何信息递送介质。术语“已调制数据信号”是指使得以在信号中编码信息的方式来设置或改变其一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。上述任何组合也应该包括在计算机可读的介质范围内。
***存储器830包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)831和随机存取存储器(RAM)832。包含诸如在启动期间帮助在计算机810内的元件之间传输信息的基本例程的基本输入/输出***833(BIOS)通常存储在ROM831中。RAM832通常包含处理单元820可立即访问和/或当前正在操作的数据和/或程序模块。作为示例而非限制,图12示出了操作***834、应用程序835、其他程序模块836和程序数据837。
计算机810还可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图12示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器841,从可移动、非易失性磁盘852中读取或向其写入的磁盘驱动器851,以及从诸如CDROM或其他光学介质等可移动、非易失性光盘856中读取或向其写入的光盘驱动器855。可在示例性操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器841通常通过诸如接口840之类的不可移动存储器接口连接到***总线821,并且磁盘驱动器851和光盘驱动器855通常通过诸如接口850之类的可移动存储器接口连接到***总线821。
作为替换或补充,本文所述的功能可至少部分地由一个或多个硬件逻辑组件来执行。例如、但非限制,可使用的硬件逻辑组件的解说性类型包括现场可编程门阵列(FPGA)、程序专用的集成电路(ASIC)、程序专用的标准产品(ASSP)、片上******(SOC)、复杂可编程逻辑器件(CPLD),等等。
以上讨论并在图12中示出的驱动器及其相关联的计算机存储介质为计算机810提供了对计算机可读指令、数据结构、程序模块和其他数据的存储。在图12中,例如,硬盘驱动器841被示为存储操作***844、应用程序845、其他程序模块846和程序数据847。注意,这些组件可与操作***834、应用程序835、其它程序模块836和程序数据837相同,也可与它们不同。在此操作***844、应用程序845、其它程序模块846以及程序数据847被给予了不同的编号,以至少说明它们是不同的副本。
用户可以通过诸如键盘862、话筒863以及诸如鼠标、跟踪球或触摸垫等定点设备861等输入设备来将命令和信息输入至计算机810中。其它输入设备(未示出)可以包括操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些以及其它输入设备通常通过耦合到***总线的用户输入接口860连接到处理单元820,但也可通过诸如并行端口、游戏端口或通用串行总线(USB)之类的其它接口和总线结构来连接。视觉显示器891或其他类型的显示设备也经由诸如视频接口890之类的接口连接至***总线821。除了监视器以外,计算机还可包括诸如扬声器897和打印机896之类的其它***输出设备,它们可通过输出***接口895来连接。
计算机810使用到诸如远程计算机880等一个或多个远程计算机的逻辑连接在网络化环境中操作。远程计算机880可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其它常见的网络节点,且一般包括以上关于计算机810描述的多个或所有的元件。图12中所描绘的逻辑连接包括局域网(LAN)871和广域网(WAN)873,但还可包括其他网络。此类联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机810通过网络接口或适配器870连接到LAN871。当在WAN联网环境中使用时,计算机810通常包括调制解调器872或用于通过诸如因特网等WAN873建立通信的其它手段。调制解调器872可以是内置的或外置的,可经由用户输入接口860或其它适当的机制连接到***总线821。在联网环境中,相关于计算机810所示的程序模块或其部分可被存储在远程存储器存储设备中。作为示例,而非限制,图12示出了远程应用程序885驻留在远程计算机880上。应当理解,所示的网络连接是示例性的,并且可使用在计算机之间建立通信链路的其它手段。
还应注意,本文描述的不同实施例可以按不同的方式来组合。即,一个或多个实施例的各部分可以与一个或多个其他实施例的各部分组合在一起。本文中构想了所有这些。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (10)

1.一种计算机实现的迁移数据的方法,包括:
标识源业务数据***实例中的业务数据;
生成所标识的业务数据和暂存数据结构之间的暂存映射;
生成包括指示所述所标识的业务数据的指示符和所述暂存映射在内的包;以及
执行所述包以根据所述暂存映射将所述所标识的业务数据从所述源业务数据***实例保存到所述暂存数据结构。
2.如权利要求1所述的计算机实现的方法,其特征在于,还包括:
验证所述暂存数据结构中的数据;
生成所述暂存数据结构和目标业务数据***实例之间的目标映射;以及
根据所述目标映射将所述所标识的业务数据从所述暂存数据结构保存到所述目标业务数据***。
3.如权利要求2所述的计算机实现的方法,其特征在于,标识源数据***实例中的数据包括:
标识场所内业务数据***实例中的业务数据;以及
其中将所述所标识的业务数据从所述暂存数据结构保存到所述目标业务数据***包括将所述所标识的业务数据从所述暂存结构保存到基于云的业务数据***实例。
4.如权利要求3所述的计算机实现的方法,其特征在于,生成暂存映射包括:
将所述所标识的业务数据上传到基于云的业务数据***;以及
在所述基于云的业务数据***处生成所标识的业务数据和所述基于云的业务数据***处的暂存数据结构之间的所述暂存映射,并且其中执行所述包以根据所述暂存映射将所述所标识的数据从所述源数据***实例保存到所述暂存数据结构包括将所述所标识的业务数据存储到基于云的暂存数据存储中的所述暂存数据结构中。
5.如权利要求2所述的计算机实现的方法,其特征在于,将所述所标识的业务数据从所述暂存数据结构保存到所述目标业务数据***包括:
将所述所标识的业务数据从所述暂存数据结构保存到多承租人数据中心,所述多承租人数据中心保存用于多个不同承租人的数据,每个承租人与不同的组织对应。
6.如权利要求2所述的计算机实现的方法,其特征在于,验证所述暂存数据结构中的数据包括:
执行对所述暂存数据结构中数据的字段级验证和对所述暂存数据结构中数据的记录级验证中的至少一者。
7.如权利要求1所述的计算机实现的方法,其特征在于,生成暂存映射包括以下至少之一:
通过对照所述暂存数据结构中的列名称来至少部分地匹配所述所标识的业务数据中的列名称以标识所述映射,对照所述暂存数据结构中的列名称来匹配所述所标识的业务数据中的列名称以标识映射;
跨所述所标识的业务数据中以及所述暂存数据结构中的多个表进行匹配以标识所述映射。
8.如权利要求1所述的计算机实现的方法,其特征在于,对所标识的业务数据作出更新,并且进一步包括:
仅更新从对所述所标识的业务数据的更新到所述暂存数据结构的暂存映射;以及
仅将对所述所标识的业务数据的更新存储到所述暂存数据结构。
9.一种数据迁移体系结构,包括:
暂存***,包括:
源到暂存映射器组件,所述源到暂存映射器组件读源数据***的实例中的非规范实体文件并且生成所述非规范实体文件和暂存数据结构之间的第一映射;以及
源到暂存组件,所述源到暂存组件访问所述映射并基于所述第一映射用来自所述非规范实体文件的数据来填充规范暂存数据结构;以及
处理器,所述处理器是所述暂存***的功能部分并且被所述源到暂存映射器组件和所述源到暂存组件激活以促成生成所述第一映射以及填充所述暂存数据结构。
10.一种储存计算机可读指令的计算机可读存储介质,所述计算机可读指令在被计算机执行时,使得所述计算机执行一种方法,所述方法包括:
从场所内源数据***实例获取数据;
获取所获取的数据和暂存数据结构之间的暂存映射;
生成包括指示所述所获取的数据的指示符和所述暂存映射在内的包;
执行所述包以根据所述暂存映射将所标识的数据从所述源业务数据***实例保存到所述暂存数据结构;以及
将所获取的数据从所述暂存数据结构复制到所述场所内源数据***实例的基于云的版本。
CN201480014461.2A 2013-03-14 2014-03-11 数据迁移框架 Active CN105229634B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361783767P 2013-03-14 2013-03-14
US61/783,767 2013-03-14
US13/914,633 2013-06-11
US13/914,633 US9436712B2 (en) 2013-03-14 2013-06-11 Data migration framework
PCT/US2014/022897 WO2014150299A1 (en) 2013-03-14 2014-03-11 Data migration framework

Publications (2)

Publication Number Publication Date
CN105229634A true CN105229634A (zh) 2016-01-06
CN105229634B CN105229634B (zh) 2019-07-23

Family

ID=51532962

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480014461.2A Active CN105229634B (zh) 2013-03-14 2014-03-11 数据迁移框架

Country Status (4)

Country Link
US (1) US9436712B2 (zh)
EP (1) EP2973020A1 (zh)
CN (1) CN105229634B (zh)
WO (1) WO2014150299A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106294003A (zh) * 2016-07-26 2017-01-04 广东欧珀移动通信有限公司 数据备份方法、数据备份***和终端

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11157664B2 (en) 2013-07-09 2021-10-26 Oracle International Corporation Database modeling and analysis
US9098364B2 (en) * 2013-07-09 2015-08-04 Oracle International Corporation Migration services for systems
US9747311B2 (en) 2013-07-09 2017-08-29 Oracle International Corporation Solution to generate a scriptset for an automated database migration
US9762461B2 (en) 2013-07-09 2017-09-12 Oracle International Corporation Cloud services performance tuning and benchmarking
US9996562B2 (en) 2013-07-09 2018-06-12 Oracle International Corporation Automated database migration architecture
US9805070B2 (en) 2013-07-09 2017-10-31 Oracle International Corporation Dynamic migration script management
US9792321B2 (en) 2013-07-09 2017-10-17 Oracle International Corporation Online database migration
US9491072B2 (en) 2013-07-09 2016-11-08 Oracle International Corporation Cloud services load testing and analysis
US9967154B2 (en) 2013-07-09 2018-05-08 Oracle International Corporation Advanced customer support services—advanced support cloud portal
US10776244B2 (en) 2013-07-09 2020-09-15 Oracle International Corporation Consolidation planning services for systems migration
US9477728B2 (en) * 2013-08-09 2016-10-25 Oracle International Corporation Handling of errors in data transferred from a source application to a target application of an enterprise resource planning (ERP) system
US10346374B1 (en) * 2014-03-14 2019-07-09 Open Invention Network Llc Optimized data migration application for database compliant data extraction, loading and transformation
US10423592B2 (en) * 2014-06-20 2019-09-24 International Business Machines Corporation Auto-generation of migrated use cases
US10956381B2 (en) * 2014-11-14 2021-03-23 Adp, Llc Data migration system
WO2016176379A1 (en) * 2015-04-30 2016-11-03 Microsoft Technology Licensing, Llc Extracting and surfacing user work attributes from data sources
CN106203761B (zh) 2015-04-30 2021-07-13 微软技术许可有限责任公司 提取并显现来自数据源的用户工作属性
US10649671B2 (en) * 2015-05-21 2020-05-12 Quest Software Inc. Processing unknown or unexpected properties encountered during migration or archiving operations
US10909120B1 (en) * 2016-03-30 2021-02-02 Groupon, Inc. Configurable and incremental database migration framework for heterogeneous databases
US11036696B2 (en) 2016-06-07 2021-06-15 Oracle International Corporation Resource allocation for database provisioning
US10178173B2 (en) 2016-08-02 2019-01-08 International Business Machines Corporation Cloud service utilization
CN106327930A (zh) * 2016-08-26 2017-01-11 安徽天立泰科技股份有限公司 一种智能教育学习平台
CN106528880B (zh) * 2016-12-14 2019-12-10 云南电网有限责任公司电力科学研究院 一种多源电力业务数据的数据结构格式的规整方法和***
US10521740B2 (en) * 2017-05-09 2019-12-31 Accenture Global Solutions Limited Automated ECM process migrator
US11086895B2 (en) * 2017-05-09 2021-08-10 Oracle International Corporation System and method for providing a hybrid set-based extract, load, and transformation of data
US10764253B2 (en) 2018-06-28 2020-09-01 Bank Of America Corporation System for using metadata to identify and extract specific upstream data, provisioning data batches, and providing dynamic downstream data access
US11256671B2 (en) 2019-09-13 2022-02-22 Oracle International Corporation Integrated transition control center
CN113434482A (zh) * 2021-06-28 2021-09-24 平安国际智慧城市科技股份有限公司 数据迁移方法、装置、计算机设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080140692A1 (en) * 2006-12-11 2008-06-12 Scott Gehring System and method of data movement between a data source and a destination
US20080270369A1 (en) * 2007-04-26 2008-10-30 Microsoft Corporation Framework for providing metrics from any datasource
TW200849124A (en) * 2007-03-29 2008-12-16 I2 Technologies Us Inc Generic data staging and loading using enhanced metadata and associated method
US20110060719A1 (en) * 2009-09-05 2011-03-10 Vivek Kapoor Method for Transforming Setup Data in Business Applications

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7788278B2 (en) * 2004-04-21 2010-08-31 Kong Eng Cheng Querying target databases using reference database records
US7831568B2 (en) 2006-08-29 2010-11-09 Sap Ag Data migration
US8296615B2 (en) * 2006-11-17 2012-10-23 Infosys Limited System and method for generating data migration plan
US7970732B2 (en) * 2007-11-01 2011-06-28 Verizon Patent And Licensing Inc. Data migration
US8131686B2 (en) 2008-05-06 2012-03-06 Wipro Limited Data migration factory
US7890454B2 (en) * 2008-05-08 2011-02-15 International Business Machines Corporation Method and system for data disaggregation
US9225791B2 (en) 2011-02-28 2015-12-29 Red Hat, Inc. Staged data migration between data sources and cloud-based storage network
US9710529B2 (en) * 2014-06-02 2017-07-18 Accenture Global Services Limited Data construction for extract, transform and load operations for a database

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080140692A1 (en) * 2006-12-11 2008-06-12 Scott Gehring System and method of data movement between a data source and a destination
TW200849124A (en) * 2007-03-29 2008-12-16 I2 Technologies Us Inc Generic data staging and loading using enhanced metadata and associated method
US20080270369A1 (en) * 2007-04-26 2008-10-30 Microsoft Corporation Framework for providing metrics from any datasource
US20110060719A1 (en) * 2009-09-05 2011-03-10 Vivek Kapoor Method for Transforming Setup Data in Business Applications

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106294003A (zh) * 2016-07-26 2017-01-04 广东欧珀移动通信有限公司 数据备份方法、数据备份***和终端

Also Published As

Publication number Publication date
US20140279890A1 (en) 2014-09-18
WO2014150299A1 (en) 2014-09-25
EP2973020A1 (en) 2016-01-20
CN105229634B (zh) 2019-07-23
US9436712B2 (en) 2016-09-06

Similar Documents

Publication Publication Date Title
CN105229634A (zh) 数据迁移框架
CN105264492A (zh) ***行为的自动发现
CN107710157A (zh) 多租户、租户特定的应用程序
CN104508678A (zh) 商业数据***中针对承租人的安全和数据隔离
JP2019049565A (ja) モバイル機器用のナビゲーションデータの通信方法および通信システムならびに記憶媒体
CN104541271A (zh) 从电子表格数据生成场景和游览
CN102843643A (zh) 用于在移动终端中显示主屏幕的方法和设备
CN104412256A (zh) 生成本地化用户界面
CN105765539A (zh) 具有自动生成的虚拟环境的用户支持体验
CN105637813A (zh) 当将人员添加至会话时授予对对象的许可
CN102930107A (zh) 基于地理标记媒体的地理围栏
CN102982440A (zh) 聚集和呈现任务
CN102981820A (zh) 移动应用上的页面的自动生存期管理
CN105408922A (zh) 过程流基础结构和配置界面
US20170032334A1 (en) Method and system for managing service work flow
CN105229614A (zh) 多承租人数据中心内的诊断存储
US20170103112A1 (en) Mobile Digital Property Portfolio Management System
CN104272254A (zh) 用户界面web服务
CN104094220A (zh) 笔记记录应用特征的漫游
CN105229679A (zh) 生存周期产品分析
CN104737124A (zh) 用于提交服务的业务元数据的门户
CN105393213A (zh) 便携式业务逻辑
CN106062789A (zh) 用于在事务中捕捉信息的图像标记
CN105229638A (zh) 作为对内容的收集的贡献者的自动化的库管理员
US20140316828A1 (en) System and method for exchanging an electronic ticket

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant