Etl工具将sqlserver数据同步到oracle设计说明

Etl工具将sqlserver数据同步到oracle设计说明,第1张

软件说明

通过etl工具定时将SqlServer指定的表数据同步到oracle数据库

在数据库建立增删改的触发器。触发器将变更放到临时表里。

通过etl工具读取临时表同步给oracle

优点:比较实时

缺点:影响到业务系统,因为需要在业务系统建立触发器

实例说明:

例如在sqlserver有一张用户表(sys_user)需定时同步oracle数据库的用户表,

包括新增、删除、修改同步

给同步的表建三类触发器:

insert触发器:向表中插入数据时被触发;

update触发器:修改表中数据时被触发;

delete触发器:从表中删除数据时被触发。

以sqlserver的用户表举例,

Sqlserver的sys_user表,有两个字段id,name

具体流程:

以新增数据举例

Ø 一、在sqlserver新建触发器trigger_sysuser_insert

if (object_id('trigger_sysuser_insert') is not null)

drop trigger trigger_sysuser_insert

go

create trigger trigger_sysuser_insert

on sys_user --表名

for insert --插入后触发

--instead of insert --插入前触发,使用插入前触发时,不执行默认插入

as

--开始执行逻辑

declare @id int, @name varchar(20)

select @id = id, @name = name from sys_user-------------- inserted 存放了当前插入的值

--select @name,@age

---创建临时表

if not exists (select * from sysobjects where id = object_id('##sys_user_insert')

and OBJECTPROPERTY(id, 'IsUserTable') = 1)

create table ##sys_user_insert

(

id int,

name varchar(32)

)

insert into ##sys_user_insert (id,name) values(@id,@name)

go

在sys_user新增数据时会被触发,将新增的数据加入临时表##sys_user_insert,此时

的临时表 ##sys_user_insert会增加一条记录

Ø 二、配置elt流程

节点1 从临时表读取数据,写入数据流

节点2 从数据流获取数据写入oracle

节点3 从sqlserver的临时表删除已经被同步的记录

Ø 三、建立作业调度

设置调度周期

适用增量数据同步

在要同步的源表里有时间戳字段,每当数据发生新增,时间戳会记录发生变化的时间,etl工具根据时间范围定时同步数据

优点:基本不影响业务系统

缺点:要求源表必须有时间戳这一列,适用增量场景,修改、删除不太适用

定时清空oracle数据源,将sqlserver的数据全盘拷贝到oracle数据源。一般用于数据量不大,实时性要求不高的场景。

优点:基本不影响业务系统,开发、部署都很简单

缺点:效率低

Etl流程

结论

准能现场数据同步,涉及增、删、改的同步,比较适用触发器的方式进行数据同步,但触发器仍会存在失效的情况,若现场有数据质量系统,定期数据稽核,查缺补漏,保证两边数据库的一致性;

1、首先,需要去官网下载64位的sql developer。接收协议后,选择64位的点击“下载”。

2、下载的是个压缩包,解压后打开sql developer.exe即可。

3、加载完成后,打开sql developer,点击左上角的“+”,新建连接。

4、连接名可随意设置,用户名是system,口令为之前安装Oracle时设置的数据库密码,并按照下图的指示修改SID。

5、点击对话框下方的“测试”,等待一会,会在左下角出现“成功”的字样。然后点击“连接”即可。

6、测试成功然后连接到数据库,sql developer就安装成功了,Oracle也就可以开始使用了。

7、把服务中的各项oracle服务属性设为手动打开,需要用的时候再去开启。

扩展资料:

oracle sql developer优点:

1、完全免费 微软数据库培训无需任何启动资金和预算,学生也不需要任何费用。在原来的程序上进行免费升级,并且在官方论坛上有一些免费的技术支持。

2、随处运行

Windows、OSX(Apple)、Unix、Linux。也不需要在实验室机器上启动Windows VM去运行Windows软件。

3、谁都可以安装

无需安装,无需注册便可以更新,无需管理员权限即可获得。可以下载或者提取一些文件在电脑或者U盘里面,就可以运行。这里有一个视频教程,怎样开始使用。有可能5分钟以后就学会使用Oracle SQL Developer。

4、无处不在

SQL Developer无处不在,在去年,它已经有超过250万用户下载并且是OTN上下载最多的软件。这也就意味着,需要帮助的时候,身边就有人能帮助。

5、简单的用户接口

连接,查看对象或者点击对象。可以使用工作表去写查询语句或者程序。这里只有一个工具条,而且上面仅仅只有几个按钮。只想要“A”、“B”、“SELECT”和“START”控制就行了。如果是Oracle新手,建议不要同时学习新的工具来增加学习压力。

6、它不是一个“黑盒子”

就像平时使用向导完成任务一样,也可以通过拖拽表来实现查询等 *** 作,并且还可以查看生成好的SQL语句。请不要因为有一个GUI可以使数据库正常工作就放弃学习底层的代码。

7、“四合一”

它不仅仅是查询工具,有可能也需要去设计一个数据模型,或者为了新的项目需要迁移Sybase ASE数据库,又或许需要建一些报表,以上这些Oracle SQL Developer都可以满足。所以一旦习惯了使用这个工具后,其余的都可以轻而易举实现。

8、丰富的资源

视频,博客,论坛等,随处都可以找到。

参考资料:

百度百科—oracle sql developer

数据字典是什么

进行数据库设计的时候,对数据库元素进行的解释说明就是数据字典。举个例子吧,假设有下面这个设计出来的数据库表:

player(fname, lname, account, pwd, email)

对应的数据字典就是:

player:玩家信息表

fname:玩家名

lname:玩家姓

account:账户名

pwd:密码

email:联系电邮

这里只是一个针对某一表的数据字典,还有针对表与表之间关系的数据字典、表内字段属性的数据字典等等。越是大型的数据库设计,越是需要数据字典来辅助进行设计说明,帮助设计人员之间的沟通与交流。

SQL数据库数据字典怎么生成的?

数据字典是关于数据的信息的 *** ,也就是对数据流图中包含的所有元素的定义的 *** 。

数据库数据字典是一组表和视图结构。它们存放在SYSTEM表空间中。

数据库数据字典不仅是每个数据库的中心。而且对每个用户也是非常重要的信息。用户可以用SQL语句访问数据库数据字典。

生成数据库参考代码如下:

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

-- =============================================

-- Author:

-- Create date: <2014-09-19>

-- Description:

-- =============================================

CREATE PROCEDURE [dbo].[CreateDatabaseDictionarie]

AS

BEGIN

DECLARE @TableName nvarchar(35),@htmls varchar(8000)

DECLARE @字段名称 VARCHAR(200)

DECLARE @类型 VARCHAR(200)

DECLARE @长度 VARCHAR(200)

DECLARE @数值精度 VARCHAR(200)

DECLARE @小数位数 VARCHAR(200)

DECLARE @默认值 VARCHAR(200)

DECLARE @允许为空 VARCHAR(200)

DECLARE @外键 VARCHAR(200)

DECLARE @主键 VARCHAR(200)

DECLARE @描述 VARCHAR(200)

SET NOCOUNT ON

DECLARE Tbls CURSOR

FOR

Select distinct Table_name

FROM INFORMATION_SCHEMA.COLUMNS

order by Table_name

OPEN Tbls

PRINT ''

PRINT ''

PRINT ' '

PRINT ' ......

数据字典的组成

数据字典的组成:1、数据项2、数据结构3、数据流4、数据存储5、处理过程数据字典数据字典是数据库的重要组成部分。它存放有数据库所用的有关信息,对用户来说是一组只读的表。数据字典内容包括:1、数据库中所有模式对象的信息,如表、视图、簇、及索引等。2、分配多少空间,当前使用了多少空间等。3、列的缺省值。4、约束信息的完整性。5、用户的名字。6、用户及角色被授予的权限。7、用户访问或使用的审计信息。8、其它产生的数据库信息。数据库数据字典是一组表和视图结构。它们存放在SYSTEM表空间中。数据库数据字典不仅是每个数据库的中心。而且对每个用户也是非常重要的信息。用户可以用SQL语句访问数据库数据字典。关于数据的信息 *** ,是一种用户可以访问的记录数据库和应用程序元数据的目录,是对数据库内表信息的物理与逻辑的说明

数据字典与数据库设计之间有什么关系?

正文

1 引言

1.1编写目的

说明编写这份数据库设计说明书的目的,指出预期的读者。

1.2背景

说明:

a.说明待开发的数据库的名称和使用此数据库的软件系统的名称;

b.列出该软件系统开发项目的任务提出者、用户以及将安装该软件和这个数据库的计算站(中心)。

1.3定义

列出本文件中用到的专门术语的定义、外文首字母组词的原词组。

1.4参考资料

列出有关的参考资料:

a.本项目的经核准的计划任务书或合同、上级机关批文;

b.属于本项目的其他已发表的文件;

c.本文件中各处引用到的文件资料,包括所要用到的软件开发标准。

列出这些文件的标题、文件编号、发表日期和出版单位,说明能够取得这些文件的来源。

2 外部设计

2.1标识符和状态

联系用途,详细说明用于唯一地标识该数据库的代码、名称或标识符,附加的描述性信息亦要给出。如果该数据库属于尚在实验中、尚在测试中或是暂时使用的,则要说明这一特点及其有效时间范围。

2.2使用它的程序

列出将要使用或访问此数据库的所有应用程序,对于这些应用程序的每一个,给出它的名称和版本号。

2.3约定

陈述一个程序员或一个系统分析员为了能使用此数据库而需要了解的建立标号、标识的约定,例如 用于标识数据库的不同版本的约定和用于标识库内各个文卷、、记录、数据项的命名约定等。

2.4专门指导

向准备从事此数据库的生成、从事此数据库的测试、维护人员提供专门的指导,例如将被送入数据 库的数据的格式和标准、送入数据库的 *** 作规程和步骤,用于产生、修改、更新或使用这些数据文卷的 *** 作指导。 如果这些指导的内容篇幅很长,列出可参阅的文件资料的名称和章条。

2.5支持软件

简单介绍同此数据库直接有关的支持软件,如数据库管理系统、存储定位程序和用于装入、生成、修 改、更新数据库的程序等。说明这些软件的名称、版本号和主要功能特性,如所用数据模型的类型、允许 的数据容量等。列出这些支持软件的技术文件的标题、编号及来源。

3 结构设计

3.1概念结构设计

说明本数据库将反映的现实世界中的实体、属性和它们之间的关系等的原始数据形式,包括各数据项、记录、系、文卷的标识符、定义、类型、度量单位和值域,建立本数据库的每一幅用户视图。

3.2逻辑结构设计

说明把上述原始数据进行分解、合并后重新组织起来的数据库全局逻辑结构,包括所确定的关键字和属性、重新确定的记录结构和文卷结构、所建立的各个文卷之间的相互关系,形成本数据库的数据库管理员视图。

3.3物理结构设计

建立系统程序员视图,包括:

a.数据在内存中的安排,包括对索引区、缓冲区的设计;

b.所使用的外存设备及外存空间的组织,包括索引区、数据块的组织与划分;

c.访问数据的方式方法。

4 运用设计

4.1数据字典设计

对数据库设计中涉及到的各种项目,如数据项、记录、系、文卷、模式、子模式等一般要建立起数据字典,以说明它们的标识符、同义名及有关信息。在本节中要说明对此数据字典设计的基本考虑。

4.2安全保密设计

说明在数据库的设计中,将如何通过区分不同的访问者、不同的访问类型和不同的数据对象,进行分别对待而获得的数据库安全保密的设计考虑。...

mysql数据库数据字典表怎么写

你导出 rmation_schema 数据库里的所有表就OK了 新特性啊,以前只有ORACLE才有的

数据字典包括哪些内容

你好!

我用的是考研参考书,上面的答案是:

数据字典是数据库中描述信息和控制信息的 *** ,他是数据库设计和管理的有力工具。数据字典包含(1.数据项,2数据流,3.数据结构.4.数据存储.5.处理过程)五个部分。同时也是详细数据收集和数据分析的结果。

SQL怎么创建数据字典表,最好举个例子!

我的理解数据字典表就是普通的表,例如性别的数据字典表

而这个字典表即可以包含, xmdm(代码),xmmc(名称),xm *** (说明) 三列,可根据使用情况增加或减少列,里面的数据,即包含了 男,女,未知,三个选择 这男,女等就是字典

是可以列举完全的。

数据库中的字典是什么意思?

数据字典即为数据库说明。包含完整的表结构介绍。

数据字典是特殊的数据库数据库类型是按什么

数据库设计方法、规范与技巧

一、数据库设计过程

数据库技术是信息资源管理最有效的手段。数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。

数据库设计中需求分析阶段综合各个用户的应用需求(现实世界的需求),在概念设计阶段形成独立于机器特点、独立于各个DBMS产品的概念模式(信息世界模型),用E-R图来描述。在逻辑设计阶段将E-R图转换成具体的数据库产品支持的数据模型如关系模型,形成数据库逻辑模式。然后根据用户处理的要求,安全性的考虑,在基本表的基础上再建立必要的视图(VIEW)形成数据的外模式。在物理设计阶段根据DBMS特点和处理的需要,进行物理存储安排,设计索引,形成数据库内模式。

1. 需求分析阶段

需求收集和分析,结果得到数据字典描述的数据需求(和数据流图描述的处理需求)。

需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、处理要求、安全性与完整性要求。

需求分析的方法:调查组织机构情况、调查各部门的业务活动情况、协助用户明确对新系统的各种要求、确定新系统的边界。

常用的调查方法有: 跟班作业、开调查会、请专人介绍、询问、设计调查表请用户填写、查阅记录。

分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。自顶向下的结构化分析方法(Structured Analysis,简称SA方法)从最上层的系统组织机构入手,采用逐层分解的方式分析系统,并把每一层用数据流图和数据字典描述。

数据流图表达了数据和处理过程的关系。系统中的数据则借助数据字典(Data Dictionary,简称DD)来描述。

数据字典是各类数据描述的 *** ,它是关于数据库中数据的描述,即元数据,而不是数据本身。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分(至少应该包含每个字段的数据类型和在每个表内的主外键)。

数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,

取值范围,取值含义,与其他数据项的逻辑关系}

数据结构描述={数据结构名,含义说明,组成:{数据项或数据结构}}

数据流描述={数据流名,说明,数据流来源,数据流去向,

组成:{数据结构},平均流量,高峰期流量}

数据存储描述={数据存储名,说明,编号,流入的数据流,流出的数据流,

组成:{数据结构},数据量,存取方式}

处理过程描述={处理过程名,说明,输入:{数据流},输出:{数据流},

处理:{简要说明}}

2. 概念结构设计阶段

通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,可以用E-R图表示。

概念模型用于信息世界的建模。概念模型不依赖于某一个DBMS支持的数据模型。概念模型可以转换为计算机上某一DBMS支持的特定数据模型。

概念模型特点:

(1) 具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识。

(2) 应该简单、清晰、易于用户理解,是用户与数据库设计人员之间进行交流的语言。

概念模型设计的一种常用方法为IDEF1X方法,它就是把实体-联系方法应用到语义数据模型中的一种语义模型化技术,用于建立系统信息模型。

使用IDEF1X方法创建E-R模型的步骤如下所示:

2.1 第零步——初始化工程

这个阶段的任务是从目的描述和范围描述开始,确定建模目标,开发建模计划,组织建模......


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9670517.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存