当前位置:首页 » 数据仓库 » 数据库构建方案
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

数据库构建方案

发布时间: 2023-07-14 22:54:53

1. 目前主流的分布式数据库系统实现方案有哪些

(1)方案一(数据库保存所有服务器索引信息)
全对称结构,没有中央服务器
web方案:
只从本地数据库检索符合条件的记录,给出结果
每次检索都要从本地服务器的海量数据中进行
数据库方案:
数据库保存所有服务器的索引内容
缓存命中率高的记录,减少检索时间
服务器负载分析:
服务器负载假设:
一百个结点,每结点一百人同时使用,每个结点一万条记录
web服务器:同时一百线程在本地数据库服务器检索
数据库服务器:每次接收一百个查询请求;每个请求要从一百万条索引中检索(最坏的情况);缓冲机制可以稍微减轻负担
数据更新操作:
同时更新所有数据库/只更新本地,服务器间相互同步

方案二(数据库保存本地索引及少量缓冲)
每高校作为一个结点
所有结点全对称结构,网络中没有一个中央服务器
web方案:
接收到请求时同时多线程向其它服务器同时搜索(服务器压力问题?)
数据库方案:
数据库保存本地数据
数据库保存一定量缓冲数据,
服务器负载分析:
服务器负载假设:
一百个结点,每结点一百人同时使用
则每个web服务器同时发起一万个线程向其它数据服务器搜索(oops!)
每个数据库服务器会同时接收到一万个查询请求(oops!)
采用学习过程只能少量减少查询请求和web服务器搜索线程
数据更新操作:
只更新本地

方案三(中央服务器方案一)
每高校一个结点
每结点结构相同,连接到同一个中央服务器
web方案
每个查询向中央服务器进行,由中央服务器实行检索,中央服务器返回检索结果
数据库方案
中央数据库保存所有索引信息
每结点可以只用小型数据库保存本地用户和其它信息即可
服务器负载分析:
服务器负载假设:
一百个结点,每结点一百人同时使用,每结点资料记录一万条
web服务器:同时发起一百个进程向中央数据库查询
数据库服务器(中央):同时接收一万条查询请求并返回大容量结果
数据库服务器(结点):少量工作
数据更新操作:
只更新中央服务器

方案四(中央服务器方案二)
每高校一个结点
每结点结构相同,连接到同一中央服务器
web方案:
每个查询向中央服务器进行,由中央服务器根据查询内容进行转发到结点数据库,再由结点数据库返回结果
数据库方案:
中央服务器保存各结点分类信息,根据页面请求的分类转发查询到相应服务器
服务器负载分析:
服务器负载假设:
一百个结点,每结点一百人同时使用,每结点资料记录一万条,每结点一百个类别
web服务器:同时一百个进程向中央数据库查询
数据库服务器(中央):同时接收一万条请求并转发
数据库服务器(结点):从中央服务器接收查询请求,最坏情况下每结点接收到一万条查询请求
数据更新操作:
只更新本地服务器
分类变化时更新中央服务器

2. 怎么用sql server 2008建立一个电影数据库用什么数据类型

[翻译:ASP.NET MVC 教程]用ASP.NET MVC 创建一个电影数据库应用程序
本教程的目的是为你建立起怎样构建ASP.NET MVC应用程序的理念。在本教程中,我从始至终快速构建起一个完整的ASP.NET MVC 应用程序。我向你展示了怎样构建一个简单的数据库驱动的并且实现以列表方式显示、创建以及编辑数据库记录的应用程序。

如果你已经有了Active Server Pages或ASP.NET的工作经历,那么你也会很快熟悉ASP.NET MVC。ASP.NET MVC的视图与在一个Active Server Pages应用程序中的页面极其相似。同时,就像一个传统的ASP.NET Web Forms 应用程序那样,ASP.NET MVC为你提供了一切经由.NET framework提供的丰富的语言集和类库的访问方式。

我希望本教程将给你一个构建ASP.NET MVC应用程序既简单又有别于构建Active Server Pages或ASP.NET Web Forms 应用程序经历的理念。

电影数据库应用程序概览
因为我们的目标是使事情变得简单,我们将会构建一个非常简单的电影数据库应用程序。我们简单的电影数据库应用程序将允许我们做3件事:

1.以列表方式显示电影数据库记录集

2.创建一个电影数据库的新记录

3.编辑一个已存在的电影数据库记录

再一次的,我们的目标是使事情变得简单,我们将利用最小数量的ASP.NET MVC框架的特性来构建我们的应用程序。例如,我们将不使用测试驱动的(Test-Driven)开发模式。

为了创建我们的应用程序,我们需要完成以下的每一个步骤:

1.创建ASP.NET MVC Web应用程序项目。

2.创建数据库

3.创建数据库模型

4.创建ASP.NET MVC控制器

5.创建ASP.NET MVC视图

准备工作
你需要Visual Studio 2008 或 Visual Web Developer 2008 Express来构建一个ASP.NET MVC应用程序。你同时也需要下载ASP.NET MVC framework。

如果你没有自己的Visual Studio 2008,你可以从以下站点下载Visual Studio 2008的90天试用版:

http://msdn.microsoft.com/en-us/vs2008/procts/cc268305.aspx

可替代地,你可以使用Visual Web Developer 2008 Express来创建ASP.NET MVC应用程序。如果你决定使用Visual Web Developer 2008 Express来创建,那么你必须安装好Service Pack 1。你可以从以下站点下载Visual Web Developer 2008 Express with Service Pack 1:

http://www.microsoft.com/downloads/details.aspx?FamilyId=BDB6391C-05CA-4036-9154-6DF4F6DEBD14&displaylang=en

在你完成Visual Studio 2008 或 Visual Web Developer 2008的安装后,你需要安装ASP.NET MVC framework。你可以从以下站点下载ASP.NET MVC framework:

http://www.asp.net/mvc/

创建一个ASP.NET MVC Web应用程序项目
让我们在Visual Studio 2008环境下开始创建一个新的ASP.NET MVC Web应用程序项目。选择菜单File,New Project ,你将见到图1中的新建项目对话框。选择C#作为编程语言并且选择ASP.NET MVC Web应用程序模版。将你的项目命名为MovieApp,点击OK按钮。

图1:新建项目对话框

无论何时,当你要创建一个新的MVC Web应用程序项目,Visual Studio会提示你创建一个单独的单元测试项目。在图2中显示了该对话框。因为我们出于开发时间限制就不在本教程中创建单元测试了(的确,我们对此有点内疚)。选择No选项,点击OK按钮。

图2:创建单元测试项目对话框

一个ASP.NET MVC应用程序有一套标准文件夹:Models,Views和Controller文件夹。你能在解决方案浏览器窗口中看见这套标准文件夹。为了构建我们的电影数据库应用程序,我们需要在Models,Views和Controller文件夹中添加相应的文件。

当你用Visual Studio创建了一个新的MVC应用程序时,你会得到一个简易的应用程序。因为我们想要从头做起,我们需要从这简易的应用程序中删除一些内容。你需要删除下列文件及文件夹:

•Controllers\HomeController.cs
•Views\Home

创建数据库
我们需要创建一个数据库用来容纳我们的电影数据库的记录。幸运的是,Visual Studio包含了一个免费的数据库软件SQL Server Express。按以下步骤创建数据库:

1.在解决方案浏览器中右击App_Data文件夹,然后选择菜单选项Add,New Item。

2.选择Data分类,然后选择SQL Server Database模板(见图3)。

3.将你的新数据库命名为MoviesDB.mdf,然后点击Add按钮。

在你创建数据库后,你能连接该数据库通过双击在App_Data文件夹中的MoviesDB.mdf文件。双击MoviesDB.mdf文件打开服务器浏览窗口。

图3:创建一个Microsoft SQL Server数据库

下一步,我们需要创一个数据表。在服务器浏览窗口中,右击Tables文件夹并且选择菜单选项Add New Table。选择该菜单选项打开数据表设计器。创建以下数据字段:

字段名称
数据类型
允许为空

Id
Int
False

Title
Nvarchar(100)
False

Director
Nvarchar(100)
False

DateReleased
DateTime
False

第一字段,即Id字段,有两个特殊属性。首先,你需要将Id字段设定为主键。选择Id字段后,点击Set Primary Key按钮(该按钮图标看上去像把钥匙)。其次,你需要将Id字段设定为可识别字段(Identity column)。在字段属性窗口中,滚动至Identity Specification部分并且展开它。将Is Identity属性值设定为Yes。当你完成操作后,数据表看上去应像图4那样。

图4:电影数据库的数据表

最后一步为保存新建立的数据表。点击Save按钮(软盘状的图标)并且将该表命名为Movies。

在你完成建表后,向表内添加一些电影记录。右击服务器浏览窗口中的Movies表并且选择菜单选项Show Table Data。键入一系列你最爱的电影记录。(见图5)。

图5:键入电影记录

创建数据模型
我们下一步需要创建一系列的类来代表我们的数据库。我们需要创建一个数据库模型。我们将利用Microsoft Entity Framework来自动为我们的数据库生成类。

按照下列步骤进入实体数据模型(Entity Data Model)向导:

1.在服务器浏览窗口中右击Models文件夹,然后选择菜单选项Add, New Item。

2.选择Data分类,然后选择ADO.NET Entity Data Model模板。

3.将该数据模型命名为MoviesDBModel.edmx,然后点击Add按钮。

在你点击Add按钮后,实体数据模型向导(见图6)出现了。按照下列步骤完成向导:

1.在Choose Model Contents这步中,选择Generate from database选项。

2.在Choose Your Data Connection这步中,使用MoviesDB.mdf数据连接,然后为该连接设定命名为MoviesDBEntities。点击Next按钮。

3.在Choose Your Database Objects这步中,展开Tables节点,选择Movies表。键入命名空间Models,然后点击Finish按钮。

图6:使用实体对象模型向导(Entity Data Model Wizard)生成一个数据库模型

在你完成Entity Data Model Wizard后,Entity Data Model设计器打开了。该设计器显示了Movies的数据表(见图7)。

图7:实体数据模型设计器

在我们继续下一步前,我们需要做一处改动。实体数据向导生成了一个命名为Movies的模型类来代表Movies数据表。因为我们将要用Movies类来代表一个特别的电影,我们需要修改类名,将Movies修改为Movie(是单数形式而不是复数形式)。

双击位于设计器表面的类名并且将该类名从Movies改为Movie。修改后,点击Save按钮(软盘状的图标)来生成Movie类。

创建ASP.NET MVC控制器
下一步将要创建ASP.NET MVC控制器。控制器代表了用户与ASP.NET MVC应用程序交互的控制。

按照下列步骤:

1.在解决方案浏览窗口中,右击Controllers文件夹,然后选择菜单选项Add, Controller。

2.在Add Controller对话框中,键入名称HomeController并且勾选复选框Add action methods for Create, Update, and Details scenarios(见图8)

3.点击Add按钮,为你的项目添加新的控制器。

完成上述步骤后,在清单1中的控制器就创建好了。注意该控制器包含了名为Index, Details, Create, 和Edit的方法。在接下来的段落中,我们将添加必要的程序代码是这些方法正常工作。

这是网址:http://www.cnblogs.com/Kinglee/archive/2009/07/14/1522901.html
你看下对你有用没有?

3. 如何构建一个完善的数据库,如何来处理表与表关系.

SQL Server本身就是一个完善的数据库,提供可视化编程,后台完成所有拖放处理操作,不管有没有数据都可以使用,不需要编译。

一个比较合理的数据库设计应该考虑数据的交互性和挖掘能力、处理效率以及日志记录。

建立数据表,注意以下几点:

  1. 表建立的时候要有主键和索引,表与表之间要能使用主键相联系,举例说在A表里我做完一次记录要生成一个单号,B表里面是依据单号来做下一个流程,而不是依据记录的每一条数据

  2. 取名尽量使用英文+下划线,SQL Server里对汉字需要转码,影响工作效率,按照他的默认编码方式操作有助于提高数据处理速度

  3. 建立数据表的列数不要太多,用编码规则来建立逻辑

  4. 注意字段存储空间,限制字段长度,少用注释和image

  5. 存储过程尽量简洁实用

建立视图,为了别的客户端使用,尽量建立视图,做好完整的数据分析,别的接口程序或者客户端直接就可以拿去使用。做视图注意几点:

  1. 多个表操作写在一个视图里,不要嵌套太多视图

  2. 连接查询要适当的筛选

  3. 跨服务器操作视图,要建立服务器链接表,尽量使用内网链接,把服务器链接表做成查询视图,放在本地服务器数据库里,这样就等同本地操作

  4. 视图之间保留连接字段作为主要索引

建立计划作业,有计划地进行数据同步更新和备份标识工作,注意事项:

  1. 备份数据尽量放数据库里同步复制

  2. 计划任务避开工作高峰期

建立存储过程,记录操作日志,把日志以数据表的形式存储,注意事项:

  1. 存储过程对本表操作,不要交互太多表

  2. 精简参数数量,注意参数存储空间

  3. 对记录修改删除、更新标记的时候尽量使用时间来索引

建立关系图,给表与表之间建立直接关系,整理整体挖掘数据性能。

建立计划更新任务,优化数据库整体性能。

4. 数据库建设

(一)数据准备

1.数据收集

1∶25万遥感地质填图数据包含影像数据和矢量数据两种格式,影像数据主要包括:TM原始影像、SPOT原始影像、SAR原始影像、TM与SPOT融合影像、TM与SAR融合影像、信息增强分类处理后的整幅影像或影像子区;矢量数据主要包括:航磁等值线影像、1∶25万地形图、地质图、航磁解译地质图、遥感解译单元图、遥感解译地质图。现以新疆瓦石峡地区、内蒙古阿龙山地区为例,具体情况如下:

(1)瓦石峡地区

TM卫星影像

SAR卫星影像

航磁等值线(TIF)影像

航磁解译地质图

地质图

遥感解译影像单元图

遥感解译地质图

(2)阿龙山地区

TM卫星影像

SPOT卫星影像

航磁等值线(TIF)影像

地质图

航磁解译地质图

遥感解译地质图

2.数据预处理

1)影像数据处理,主要针对原始影像数据

(1)将TM原始影像、SPOT原始影像、SAR原始影像、航磁等值线(.JPG)数据格式转换为ERDAS的.IMG格式。

(2)对转换后的IMG文件进行投影转换。投影系采用6度分带的横轴墨卡托(Transverse Mercator)投影,投影参数为:

Units:Meters

Scale Factor:1.0

Longitude Of Center:123 00 00

Latitude Of Center:0 00 00

False Easting:500 KM

False Northing:0 KM

Xshift:0

Yshift:0

椭球(spheroid)体采用克拉索夫(Krasovsky)椭球,参数为:

SemiMajor:6378245.0000 Meters

SemiMinor:6356863.0188 Meters

坐标系采用大地坐标,度量单位为米,这样可以在GIS系统中方便的量算特征的长度和面积。

(3)图像坐标纠正

参照地形图选择同名点,对影像数据进行坐标精校正。同名点的选择不少于12个。

2)矢量数据处理

工作主要针对地质图、航磁解译地质图、遥感解译单元图、遥感解译地质图。

(1)数据分层

根据图面特征信息内容和制图要求,每幅矢量图按特征类型划分为点、线、面(区)三个图层。划分的依据是遥感地质解译图件的信息不完全等同于其他地质调查图件,它表现的内容主要是:从影像图中判读出的地层、岩石影像单元及构造界线,但各种地质特征的单位、时代、分类、度量、结构、方向等的描述不是十分具体,因此在属性定义上比较一致,对一个图件不需要产生基于同一特征类型的专题图层,因此按矢量特征类型划分较为合理、简便。

(2)图件扫描矢量化

将地质、影像单元等图件扫描成 TIF影像文件,按照分层要求,将每个图件数字化为点、线、面三个图层文件。处理的图件和产生的矢量图层文件见表3-1至3-7。

表3-1 矢量图层表

1∶25万遥感地质填图方法和技术

c.面特征:由于影像单元图的面特征描述有其特殊之处,有时遵照地层、岩石的分类方法国家标准,但绝大部分是按照影像颜色、纹理等划分和称谓,因此进行分类编码十分困难,有待进一步研究解决。

以上编码方法是在每种特征类型组合最大值和预留一定的扩充余地的基础上编制的,编码方案参照国标:GB958—89区域地质图图例(1∶5万)

(6)属性定义

说明:由于地质代号的组成方式极为复杂,使用了上下角标、希腊字符、拉丁字母等,而这些字符和格式在纯文本的属性字段中是不能完全或准确表达的,因此在录入时对地质代号进行了一些简化。

例如:Pt2xh简化为Pt2xh

简化为An1—3

(二)建立数据库

GIS空间数据库有两种存储形式:一是基于文件索引的传统空间数据库管理体系;二是采用商用关系数据库的解决方案,二者各有千秋。第一种结构是对应用的集成,而数据是松散的,虽不利于数据的集中管理,但对不同系统平台之间共享数据提供了很大方便,特别是数据较少的小型应用系统。这种结构的另外一个可取之处是方案简单,工作量小,不需要数据库方面的专业知识。第二种结构既是应用的集成,也是数据的集成,并且提供所有的RDBMS的数据和安全管理优势,但它需要专用的空间数据引擎,对其他软件使用数据是一个极大的限制,必须进行数据的导入导出和格式转换,并且要求使用者对RDBMS有一定的操作和管理经验。

由于本集成系统采用的是ARC/INFO和ERDAS软件,它们之间只能达到文件方式的数据共享,虽然ARC/INFO 8提供了GeoDataBase这种关系数据库管理模式,实现真正的空间数据集中管理和RDBMS所有的数据管理能力,但为了满足两个软件之间数据的交互处理,本系统采用文件索引形式的数据库。在数据完备的基础上,建库工作需以下两个步骤:

(1)首先创建基于项目的不同格式、不同类型的目录树工作区,把所有数据文件分类保存在这个工作区中,工作区框架以瓦石峡幅数据为例(图3-5)。

(2)然后在 ARC/INFO 的 ARCMAP中新建一个 MAP DOCUMENT(以下简称为文档),添加所有数据文件到文档中。文档中每个数据文件都被称为一个 LAYER(以下简称为层),每个矢量层可以有它自己的环境,文档可以保存环境的变化。使用者只需打开这个文档即可调用项目所有的数据文件,并且恢复到上一次工作时的状态。

图3-5 数据分层结构图

在MAP DOCUMENT这种集成的数据环境下,使用者可以采用ARC/INFO 8的ARCEDITOR、ARCMAP参照影像图层进行矢量化的解译工作,对已形成的图件直接进行图形和属性编辑,进行辅助解译的空间分析,对各种图件进行叠加比较,使用文字标签或属性字段标注特征,按照分类符号化特征,制作专题图,打印输出图件报表等,实现一系列与遥感解译有关的功能和操作。

由于ARC/INFO提供的地质图式图例和符号不能满足我国的地质成图要求,因此制图软件采用地质行业较为通用的MAPGIS。通过ARCTOOLS工具将最终的解译成果矢量地质图转换为ARC/INFO的标准交换格式E00,提交给MAPGIS形成绘图文件,出版印刷。具体的实施方案和技术流程见“成果图件制作方法研究”一节。

5. 怎么做数据库

如下:

6. oracle数据库怎么创建XML方案

在oracle中提供了许多内置的程序包,它们用于扩展数据库的功能。在开发应用程序时,可以利用这些程序包。数据库用户sys拥有oracle提供的所有程序包。他们被定义为共有同义词,并将执行权限授予了public用户组,任何用户都可以访问它们。其中DBMS_XMLQUERY包用于将查询结果转换为XML格式,DBMS_LOB程序包包含雨处理大型对象的过程和函数。下面我们看一下DBMS_XMLQUERY和DBMS_LOB的用法:
SQL> DECLARE
result CLOB;
xmlstr VARCHAR2(32767);
line VARCHAR2(2000);
line_no INTEGER :=1;
BEGIN
result :=DBMS_XMLQUERY.getXml('select empno,empname from employee');
xmlstr :=DBMS_LOB.SUBSTR(result,32767);
LOOP
EXIT WHEN xmlstr IS NULL;
line :=SUBSTR(xmlstr,1,INSTR(xmlstr,CHR(10)-1));
DBMS_OUTPUT.PUT_LINE(line_no || ':' || line);
xmlstr :=SUBSTR(xmlstr,INSTR(xmlstr,CHR(10)+1));
line_no :=line_no + 1;
END LOOP;
END;

在上面的例子中我们声明了一个CLOB数据类型的result变量,以及VARCHAR2类型的xmlstr和line两个变量。其中,getXml函数用于将查询结果转换为XML格式,SUBSTR函数检索子字符串,32767值指定要从CLOB数据类型读取的最大字节数。检索到的字符串存储xmlstr变量中。LOOP块循环执行,每次从xmlstr中读取一行。INSTR函数返回一个字符串在另一个字符串首次出现的位置。在此,该函数返回换行符在字符串中的位置,直到遇到下一行。

大家觉得例子的结果能不能读出我们预期的结果呢?试试就知道了!!!

结果如下:

< ?xml version='1.0'?>
< ROWSET>
< ROW num="1">
< EMPNO>E001</EMPNO>
< EMPNAME>Jane</EMPNAME>
< /ROW>
<ROW num="2">
< EMPNO>E002</EMPNO>
< EMPNAME>John</EMPNAME>
< /ROW>
< ROW num="3">
< EMPNO>E003</EMPNO>
< EMPNAME>Joe</EMPNAME>
< /ROW>
< /ROWSET>

7. 数据库建设方案及数据质量检查标准

1 .制定调查资源整合方案

通过合理编码方式理顺各类数据间的关系,保证不同类别数据的紧密性,完整体现地学资料数据的多源性和空间性。

2.数据库建设标准

根据资源整合方案,利用关系数据库技术和空间数据库技术,建立CO2地质储存调查数据库,有效储存和管理各种空间数据和属性数据,保证数据间的逻辑合理性,达到充分利用调查数据,并快速输出数据的目的。

3.数据质量检查标准及方法

根据资源整合方案,制定数据质量标准,开发相应质量检查软件,对数据进行质量检查,确保入库数据的有效性和合法性。