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

数据从哪里来?构建数据库的源头活水

源头活水从哪

"IT有得聊”是机械工业出版社旗下IT专业资讯和服务平台,致力于帮助读者在广义的IT领域里,掌握更专业、实用的知识与技能,快速提升职场竞争力。 点击蓝色微信名可快速关注我们。

前文回顾:

数据湖火了,数据仓库地位不保?

内存计算,让数据飞起来

新技术如何改变数据平台设计的未来

不写代码,也能开发数据仓库?


源头活水从哪来?

HANA不仅仅是一个数据库,它还提供了多种服务。其中,就有数据集成和数据质量管理服务。





作为基于HANA平台的专业数据仓库应用系统,BW/4HANA必须要用好这个源头活水。BW/4HANA全面集成了HANA平台的数据获取功能,与HANA平台上的数据集成和数据质量服务组件进行对接,并将HANA的数据获取功能纳入统一的数据仓库管理体系和数据处理流程。


根据企业不同的应用场景及相应的数据仓库策略,在对外部数据进行收集时,可以将数据从源系统里抽取到SAP BW/4HANA系统,再进行数据转换和后续数据加载;也可以直接访问外部数据源进行分析报告,而不用把数据存储在企业数据仓库中。


01

使用源系统建立供水通道



BW/4HANA是一个依据体系化的数据仓库方法,提供数据加工、管理等功能的应用程序。BW/4HANA不是数据库,它所有的数据都是存储在本地的HANA数据库里的。


为了在将HANA平台本身的数据获取能力纳入BW/4HANA进行统一管理,需要在BW/4HANA里创建相应类型的源系统。BW/4HANA提供了专门的“SAP HANA源系统”类型,对通过HANA数据库获取的外部数据进行管理。


根据作为源系统的HANA数据库与BW/4HANA所在的HANA数据库的关系,系统将HANA相关的源系统分为三种类型:


(1)SAP HANA本地数据库Schema(SAP HANA Local Database Schema):


如果需要访问的数据已经存在于BW/4HANA所在的HANA数据库中,就选择创建这一类型的数据库。这一类型的源系统指向本地数据库中的一个指定的Schema,将这一Schema中的一个数据库表、视图、或者基于SQL方法建设的原生数据存储对象(NativeDSO,NDSO)作为一个数据源进行管理。


(2)SAP HANA租户数据库Schema(SAP HANA Tenant Database Schema):


SAP HANA是一个支持多租户的数据库系统。一个HANA系统可以包含多个HANA租户数据库。如果需要访问的数据存在于BW/4HANA所在的同一个HANA系统中,但与BW/4HANA不在同一个租户数据库中,就需要选择这一类型的源系统。

在后续配置中,需要指定租户数据库的名称及其包含的一个Schema。通过这个源系统可以将指定Schema中的数据库表、视图、以及原生数据存储对象作为数据源进行管理。


(3)SAP HANA智能数据访问(SAP HANA Smart Data Access):


如果数据不存在于BW/4HANA所在的HANA系统中, BW/4HANA底层的SAP HANA数据库可以通过SAP HANA智能数据访问方式连接到外部的数据源。通过使用这一选项,可以在BW/4HANA应用层面将这些外部的数据源定义成BW/4HANA的源系统。

使用这一连接类型,可以使用由SAP HANA智能数据集成提供的源系统。BW/4HANA系统使用数据智能访问组件提供的适配器建立与外部源系统的连接。


我们重点来看看选项(3)如何通过通过智能数据访问方式获取第三方的数据



02

通过智能数据访问方式获取第三方的数据



在大数据时代,将所有数据都复制一份到集中的大数据仓库中可能不是最明智的选择。外部数据分散存储,由不同的系统产生,新的分析应用系统要求具备实时访问多个外部系统,对数据进行访问、整合和集成的能力。


计算机网络的快速发展和数据库数据处理性能的提升,使这一选项正在变得越来越有吸引力。也就是说,不再将远程的数据复制到本地数据库进行存储,而只在需要数据的时候才从远程数据库中读取数据进行处理和分析。


这一设计思想的影响是广泛而深远的,涉及到软件功能的升级、系统架构和硬件部署方式的全面变化。它不仅影响企业数据仓库的功能增强和改造,也促进了数据智能等新型系统的产生和应用。


SAP HANA智能数据访问(SDA)可以实现像访问本地数据表一样访问外部数据,而不需要将外部数据复制到SAP HANA中。在SAP HANA中,使用链接数据库或者创建虚拟表,指向其他远程源中的数据库表,并通过在SAP HANA系统中运行SQL查询访问这些虚拟表。SAP HANA查询处理器负责优化查询,在目标系统中执行相应部分的查询,将查询结果返回给HANA,最终完成查询操作。


第一部分工作是在HANA数据库中完成中的,进入HANA管理控制台界面,创建并配置远程源,如下图所示。

编辑远程源

其中,适配器名称下拉列表中,可以看到HANA预置的多种适配器。用户也可以根据需要,安装相应的适配器。从“适配器名称”下拉列表中,可以看到系统当前安装的适配器,包括:

  •  SAP HANA ODBC Driver

  • SAP IQ ODBC Driver

  • SAP Adaptive Server Enterprise ODBC Driver

  •  SAP Event Stream Processor ODBC Driver

  •  SAP HANA Streaming Analytics ODBC Driver

  • SAP MaxDB ODBC Driver

  •  Teradata ODBC Driver

  •  SQL Server ODBC Driver

  •  IBM DB2 Driver

  • IBM Netezza Driver

  • Oracle Database ODBC Driver

  • MII(ODBC)

  • Google BigQuery ODBC Driver

  •  GRPC(Destination)

  •  RSERVE(Destination)

  •  HADOOP(ODBC)

  •  HADOOP(Destination)

  •  VORA(ODBC)

  •  SPARKSQL(Destination)

    等等


完成远程源的创建后,在HANA管理控制台左边的导航窗口里,可以展开这一远程源,查看其包含的Schema及数据库表等内容。



03

使用源系统和数据源指定远程源对象



在完成HANA部分的配置工作后,就可以进入BW/4HANA建模界面进行后续配置工作。


首先,根据系统向导创建“SAP HANA智能数据访问”类型的源系统,即远程源系统。


其次,为远程源系统创建数据源。系统提供了新建数据源的向导,其中一个步骤是“选择模板或者源对象”,如下图所示。


新建数据源向导-择模板或源对象


这里指定的选项不同,后续的配置信息也不同。我们选择“基于SAP HANA表或视图生成建议(Proposal from SAP HANA Table or View)”,单击“下一步”。在后续步骤中,系统列出当前Schema中的数据库表和视图,从列表中选择一个数据库表作为数据来源。系统读取这一数据库表的信息,并自动生成数据源。


系统生成的数据源是可以进行后续编辑的,进入数据源编辑界面可以看到三个配置选项卡


1)常规(Overview)选项卡:常规选择卡显示了新建数据源的基本信息。


2)提取(Extraction)选项卡:可以查看数据源抽取的明细设置,例如是否支持增量数据抽取、数据直接访问或者流数据等。


3)字段(Fields)选项卡:可以查看或whnt数据源根据源表的结构自动生成的抽取字段建议。


修改完成后,检查并激活数据源。打开数据源数据预览选项卡,可以查看数据源里的数据,如下图。

数据源数据预览




-End-


本文作者:陈永杰 

著有《SAP大数据完全解决方案》等多本有影响力的SAP图书


推荐阅读


SAP中国公司高级认证顾问扛鼎之作 

为SAP大数据项目提供全面指南



(点击封面可进入详情页面)

作者:陈永杰 编著


关键词:企事业单位从事大数据规划、大数据应用设计人员 数据湖、数据仓库、大数据平台开发设计人员 SAP HANA、BW/4HANA、数据智能相关项目实施顾问、项目组成员

本书以企业传统数据仓库的改造和全新的大数据平台建设为出发点,讨论了内存计算技术带来的根本性变革及其对企业传统数据仓库架构设计的改变,并详细介绍了在应用Hadoop 等数据湖技术条件下的数据获取、数据建模、数据服务应用及管理方法。全新的大数据平台架构超越单个系统的物理界限,更多地采用虚拟建模与逻辑建模的方法,对企业内外、本地云端的全体数据进行统一的管理和应用调度,并使用机器学习技术进行各类创新应用的开发。


我们的抖音号正式上线啦!

有趣、有料的前沿知识等着你!

快使用抖音扫码来关注我们吧!



推荐阅读
  • PatchODAX8: ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Oracle Database 10g许可授予信息及高级功能详解
    本文介绍了Oracle Database 10g许可授予信息及其中的高级功能,包括数据库优化数据包、SQL访问指导、SQL优化指导、SQL优化集和重组对象。同时提供了详细说明,指导用户在Oracle Database 10g中如何使用这些功能。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 关于我们EMQ是一家全球领先的开源物联网基础设施软件供应商,服务新产业周期的IoT&5G、边缘计算与云计算市场,交付全球领先的开源物联网消息服务器和流处理数据 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • Oracle10g备份导入的方法及注意事项
    本文介绍了使用Oracle10g进行备份导入的方法及相关注意事项,同时还介绍了2019年独角兽企业重金招聘Python工程师的标准。内容包括导出exp命令、删用户、创建数据库、授权等操作,以及导入imp命令的使用。详细介绍了导入时的参数设置,如full、ignore、buffer、commit、feedback等。转载来源于https://my.oschina.net/u/1767754/blog/377593。 ... [详细]
  • MongoDB用户验证auth的权限设置及角色说明
    本文介绍了MongoDB用户验证auth的权限设置,包括readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase、cluster相关的权限以及root权限等角色的说明和使用方法。 ... [详细]
  • 本文介绍了一个误删Oracle数据文件导致数据库无法打开的问题,并提供了解决方式。解决方式包括切换到mount状态、离线删除报错的数据文件等。 ... [详细]
  • 在Oracle11g以前版本中的的DataGuard物理备用数据库,可以以只读的方式打开数据库,但此时MediaRecovery利用日志进行数据同步的过 ... [详细]
  • RMAN中的不完整恢复是指通过还原所有数据文件将整个数据库回退,然后执行不完全恢复的操作。不完整恢复的场景包括完整恢复不可行或故意要丢失数据。完整恢复需要备份后生成的所有归档日志和联机重做日志,而如果这些日志缺失或损坏,恢复将在该点停止。决定故意丢失数据是在用户错误发生后采取的行动,例如忘了where条件导致整个表受影响。对于已提交的事务来说,这样的更改是不可逆的。 ... [详细]
  • MybatisPlus入门系列(13) MybatisPlus之自定义ID生成器
    数据库ID生成策略在数据库表设计时,主键ID是必不可少的字段,如何优雅的设计数据库ID,适应当前业务场景,需要根据需求选取 ... [详细]
  • Week04面向对象设计与继承学习总结及作业要求
    本文总结了Week04面向对象设计与继承的重要知识点,包括对象、类、封装性、静态属性、静态方法、重载、继承和多态等。同时,还介绍了私有构造函数在类外部无法被调用、static不能访问非静态属性以及该类实例可以共享类里的static属性等内容。此外,还提到了作业要求,包括讲述一个在网上商城购物或在班级博客进行学习的故事,并使用Markdown的加粗标记和语句块标记标注关键名词和动词。最后,还提到了参考资料中关于UML类图如何绘制的范例。 ... [详细]
  • 论文阅读:《Bag of Tricks for LongTailed Visual Recognition with Deep Convolutional Neural Networks》
    基于深度卷积神经网络的长尾视觉识别技巧包摘要近年来,挑战性长尾分布上的视觉识别技术取得了很大的进展,主要基于各种复杂的范式(如元学习)。除了这些复杂 ... [详细]
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社区 版权所有