热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Oracle数据仓库的分层管理器解决方案开发者网络Oracle

Oracle数据仓库的分层管理器解决方案开发者网络Oracle

Oracle数据仓库的分层管理器解决方案开发者网络Oracle

正在看的ORACLE教程是:Oracle数据仓库的分层管理器解决方案开发者网络Oracle。摘要 本文描述分层管理器的原理、步骤、限制,并和Oracle数据仓库相结合实现了地学数据的有效存储、管理以及大范围数据的快速浏览。

  关键字 分层管理器 元数据 快速浏览
  
  前言

  21世纪是信息的世纪,综合国力的竞争在很大程度上是信息的竞争,更是信息利用率的竞争。近年来,随着“数字地球”和“数字国土”战略的提出和实施,地学领域的海量数据飞速增长,数据的存储、分析、管理和处理变得日益复杂。随着Oracle技术的成熟,尤其是8.15本版后Oracle Spatial的出现,数据仓库在海量数据存储、分析和表达方面有着无可比拟的优势。同时,由于信息量的巨大,传统的数据存储和显示方式在大范围数据快速浏览方面显得力不从心,这样有必要改变空间数据的存储方式,加载需要的空间数据部分,避免不必要数据的反复加载和卸载。

  分层管理器

  1、分层管理器架构

  分层管理器是实现大范围数据的快速浏览的关键部分,它控制了逐层细化表的结构和元数据的定义和赋值,定义了组件表中的关键信息,给出了空间数据的来源、数据挖掘规则、图层加载范围和图形编辑、输出和保存。分层管理器有两部分组成,分别为:

  a) 一组存储于Oracle数据仓库中的空间数据表,用于逐层细化图层中的每个详细信息层,这些表称为组件表;

  b) 一个空表,包含该表的结构定义和描述组件表的特殊元数据,该表称为逐层细化表。任何逐层细化应用程序均需要逐层细化表,从中可以了解逐层细化图层中各层的层次关键字描述,以及它们之间的层次关联方式。进行分层时,分层管理器作为程序的一部分,确定需要添加的子图元所在的图层及其关键字,以便确定在逐层细化图层中需要添加和删除的图元信息。

  逐层细化图层是一种特殊的地图图层,它是有自己表结构的空白图层,并用元数据规定了所有加载图层的一些规则和限制,所显示出来的地图信息是按照元数据规定的规则从其它表或数据库中提取出来的。在地图中显示逐层细化图层时,分层管理器会创建一个临时表,然后将组件表中的图元复制到该临时表中。逐层细化图层中显示的图元实际上是组件表中图元的副本。这样就可以灵活的在图层上面加载需要的信息。在应用程序终止时,将丢弃该临时表,为了保存有用的专题图信息,可以对提取出来的图层进行保存。此时,如果用户查看图层信息时,逐层细化图层仍将是单个图层。

  逐层细化表的要求作为分层管理器的组织核心部分,它定义了元数据关键字和三个标准列:关键字、层和标签。并有着自己的一套语法:

  (1) 关键字 begin_metadata 标记逐层细化表中元数据部分的开头。

  (2) 每行元数据包含两个元素:关键字和值。所有关键字和值均使用双引号引起来。

  (3) 逐层细化表必须包含 \IsDrilldown 关键字,该关键字的值必须为 True。

  (4) 每个关键字以“\”(反斜线)开头。

  (5) 元数据关键字可以在层次结构中嵌套。层次结构中的每一层以反斜线 (\) 标记。

  (6) 元数据包括 \DDMap\ComponentMaps\ 关键字层次结构。在该层次结构中为每个组件表指定四个元数据关键字。


  分层管理器的分层原理图如图1所示,从图中可以看出,分层管理器有两部分组成:组件表和逐层细化表组成,分层管理器根据系统的要求以数据挖掘的方式从Oracle数据仓库中提取数据,形成组件表中的某个图层,然后确定需要加载图层的名称和图层中的部分,并加载到逐层细化表中。如果是第一次加载,此时的逐层细化表是空白图层,在加载过程中,逐层细化表不断的进行图元信息的增加和删除,这样会出现每个组件表中的部分信息显示在逐层细化表所示的图层中。这样输出所需要的图层,并对它进行编辑,由于逐层细化表中数据是个组件表中的副本,需要对编辑后的图层进行另存,形成专题图。

  分层管理器首先形成空白图层,通过分层管理器用数据挖掘工具从Oracle数据仓库中提取数据,根据分层管理器的元数据规则形成一级的图层,在该图层中,通过响应事件,以确定加载二级图层的图层名称和该图层中的加载部分,相应的加载三级、四级图层数据,在加载的同时,就形成了各种专题图。当然,分层管理器功能的实现是通过GIS组件(MapX、MO、AO等)和编程语言(VB、VC、Delphi等)来实现的。

[NextPage]

2、分层管理器开发步骤

  分层管理器应用程序需要进行许多设置和准备。主要步骤汇总如下:

  (1)获取多层逐层细化图层时要使用的各个表的数据。

  (2)创建一个包含特殊列和特殊元数据的新的空逐层细化表(.tab 文件)。元数据为每个组件表指定一个层名,同时标识组件表中的重要列标识列和标题列。

  (3)将逐层细化表加入地图。例如,将逐层细化表加入您使用的Geoset,或通过编码方法将逐层细化表加入地图。

  (4)在应用程序中添加用户界面元素,响应逐层细化事件。

  (5)添加代码,响应用户对逐层细化工具的使用(也就是说编写分层管理器)。

  (6)该代码需要检测用户已选择的图元;确定需要添加的子图元和需要删除的图元;调用应用程序来实现分层或汇总地图图元。

  实例分析

  由于遥感影响数据量特别巨大,对于数据的存储、管理、分析和有用图形部分显示就显得非常困难,这需要用关系——对象数据库对数据进行存储。在图形显示时,为了使取得有用图层信息,减少加载时间和提高编辑效率,需要对图形进行分层显示,即用到了前面介绍的分层管理器技术。本文用VB作为编程语言,MapX作为GIS组件进行二次开发来实现分层管理技术。

  1、构建分层管理器

  构建逐层细化表,其表结构为:

Definition Table

Type Native Charset "WindowsLatin1"

Fields 3

Key Char (32);

Level Char (32);

Label Char (32) ;

  元数据关键字和对应值为:

begin_metadata

"\IsDrilldown" = "TRUE"

"\DDMap\ComponentMaps\One\File" = " Tab_YNP.TAB"

"\DDMap\ComponentMaps\One\LevelID" = " Tab_YNP "

"\DDMap\ComponentMaps\One\FeatureIDCol" = "3"

"\DDMap\ComponentMaps\One\FeatureCaptionCol" = "1"

…(其他各组件层的关键字和值与此相同)

"\DDMap\HierarchyManager\IsDLL" = "TRUE"

"\DDMap\HierarchyManager\ID" = "SomeDLL.dll"

"\DDMap\HierarchyManager\InitialLevel" = " Tab_YNP "

end_metadata

  2、分层管理器的实现

  使用 CreateCustomTool 方法实现逐层细化工具,定义为:Map1.CreateCustomTool customDrilldownExpandTool, miToolTypePoint, miDrilldownExpandCursor, miDrilldownContractCursor, miDrilldownContractCursor

  每次使用自定义逐层细化工具均会触发 ToolUsed 事件。在 ToolUsed 事件过程中,您将需要

[1]

正在看的ORACLE教程是:Oracle数据仓库的分层管理器解决方案开发者网络Oracle。执行产生逐层细化行为的代码。该过程主要分为四个步骤:

  (1)使用 SelectByPoint 或 SearchAtPoint 之类的方法确定用户单击的地图图元。

  (2)确定应取代用户单击的图元的子图元集。例如,可以使用一个或多个嵌套的 Case 语句确定哪些子图元取代所选的父图元。

  (3)提取空间数据。根据前述条件,用SQL语言从数据仓库中提取信息,如:select goloc form YN. Tab_HQ_KC where Prix=68

  (4)调用 DrilldownAddFeatures 方法将子图元加入地图。

  (5)调用 DrilldownRemoveFeatures 方法从地图中删除父图元(用户单击的图元)。

  (6)对显示图层进行编辑,并把编辑结果保存。

  3、结果分析

  从实例的结果可以看出,Oracle数据仓库能够方便的对空间数据进行存储、分析、管理和输出,数据挖掘技术的应用能够灵活存取数据,而不需要加载整个数据表中的所有数据,分层管理器的应用实现了空间数据大范围快速浏览和不同主题图层的部分叠加,实际应用中有着非常方便的应用。

  结论

  高效地利用现有的海量数据是目前面临的难题之一。Oracle数据仓库技术是专门针对海量数据的管理和应用的技术,它在对象-关系型数据库、功能强大的DBMS和支持可视化检索方面有着非常明显的优势。地学数据仓库的理论在今年的时间应用中不断完善,本文在数据仓库的存储、分析和表达层方面把理论和实际应用相结合,结合分层管理GIS二次开发,开发出基于Oracle数据仓库的分层管理系统,它结合了数据仓库和分层管理的优点,在地学空间数据应用方面进行了有益的尝试。

上一页

[2]

推荐阅读
  • PHP组合工具以及开发所需的工具
    本文介绍了PHP开发中常用的组合工具和开发所需的工具。对于数据分析软件,包括Excel、hihidata、SPSS、SAS、MARLAB、Eview以及各种BI与报表工具等。同时还介绍了PHP开发所需的PHP MySQL Apache集成环境,包括推荐的AppServ等版本。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • Oracle分析函数first_value()和last_value()的用法及原理
    本文介绍了Oracle分析函数first_value()和last_value()的用法和原理,以及在查询销售记录日期和部门中的应用。通过示例和解释,详细说明了first_value()和last_value()的功能和不同之处。同时,对于last_value()的结果出现不一样的情况进行了解释,并提供了理解last_value()默认统计范围的方法。该文对于使用Oracle分析函数的开发人员和数据库管理员具有参考价值。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • 本文介绍了一个从入门到高手的VB.NET源代码,通过学习这些源代码,可以在21天内成为VB.NET高手。文章提供了下载地址,并提醒读者加入作者的QQ群和收藏作者的博客。 ... [详细]
  • 全面介绍Windows内存管理机制及C++内存分配实例(四):内存映射文件
    本文旨在全面介绍Windows内存管理机制及C++内存分配实例中的内存映射文件。通过对内存映射文件的使用场合和与虚拟内存的区别进行解析,帮助读者更好地理解操作系统的内存管理机制。同时,本文还提供了相关章节的链接,方便读者深入学习Windows内存管理及C++内存分配实例的其他内容。 ... [详细]
  • Linux环境变量$PATH的作用及使用方法
    本文介绍了Linux环境变量$PATH的作用及使用方法。$PATH是一个由多个目录组成的变量,用冒号分隔。当执行一个指令时,系统会按照$PATH定义的目录顺序搜索同名的可执行文件,如果有多个同名指令,则先找到的会被执行。通过设置$PATH变量,可以在任何地方执行指令,无需输入绝对路径。 ... [详细]
  • Windows7企业版怎样存储安全新功能详解
    本文介绍了电脑公司发布的GHOST WIN7 SP1 X64 通用特别版 V2019.12,软件大小为5.71 GB,支持简体中文,属于国产软件,免费使用。文章还提到了用户评分和软件分类为Win7系统,运行环境为Windows。同时,文章还介绍了平台检测结果,无插件,通过了360、腾讯、金山和瑞星的检测。此外,文章还提到了本地下载文件大小为5.71 GB,需要先下载高速下载器才能进行高速下载。最后,文章详细解释了Windows7企业版的存储安全新功能。 ... [详细]
  • 本文介绍了某点评网的搜索策略,包括名称和地址的匹配策略,模糊匹配的方法以及不同口音和拼音的近似发音。同时提供了一些例子来说明这些策略的应用。 ... [详细]
  • asp中如何嵌入python的简单介绍
    本文目录一览:1、如何在IIS中执行Python脚本 ... [详细]
author-avatar
鄙人灵魔世界
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有