概要:

Oracle Stream Analytics(OSA)是企业级大数据流实时分析计算平台。它可以通过使用复杂的关联模式,扩充和机器学习算法来自动处理和分析大规模实时信息。流式传输的大数据可以源自IoT传感器,Web管道,日志文件,销售点设备,ATM机,社交媒体,事务数据库,NoSQL数据库或任何其他数据源。

OSA为业务用户提供了动态创建和实施即时洞察解决方案。它允许用户通过实时图表,地图,可视化视图来实时浏览实时数据,并以图形方式构建流传输管道,而无需进行任何手工编码。 OSA使用与Oracle连续查询引擎集成的Apache Kafka和Apache Spark Streaming在可伸缩且高度可用的集群大数据环境中执行。

OSA广泛应用于以下场景,以解决现代企业中的关键实时用例:

  • 金融服务:实时反欺诈,实时风控,实时营销。
  • 交通运输:公共交通,车辆调度,集装箱追踪。
  • 运营商:精准营销,网络管理,“万物互联”。
  • 零售:个性化推荐,动态定价,货架管理。
  • 制造业:智能库存,品质管控,预测性维护。
  • 公共安全:平安城市。

本文我们将介绍如何使用Oracle Stream Analytics实现实时数据采集,实时数据处理,实时数据可视化以及实时数据同步到大数据平台的整个过程。

Oracle DB→Oracle GoldenGate→Kafka→OSA REST→HBase

具体场景及工具如下:

测试环境说明如下:

整体步骤大致如下:

  • 源端数据同步及KAFKA准备
  • OSA安装及HBASE配置
  • OSA配置

详细步骤如下:

源端数据同步及KAFKA准备

1.在源端数据库Enable GoldenGate并创建测试表

2.配置源端Golden Gate实时数据捕获

3.部署并配置GoldenGate for BigData

  • OGG for BigData无需安装,只需解压即可使用
  • 编辑配置文件:kafka.props,custom_kafka_producer.properties

4. 拉起extract, pump, replicat进程

Oracle stream analytics安装及Hbase配置

5. OSA安装

OSA下载链接如下:

Oracle Stream Analytics Downloads

目前最新版本为19.1,按照官方安装文档进行安装。

6.HBase的安装及测试表创建

安装并创建同步测试表:

Oracle Stream Analytics配置

下面将详细介绍OSA配置过程:

7.登录OSA

osaadmin为OSA预制用户

8.进入OSA界面,选择【Catalog】选项

9.选择创建新连接选项,点击【Create New Item】

10.创捷连接选项,输入连接名称,连接类型选择【kafka】

并在kafka bootstrap里输入broker地址,测试连接成功

11.创建新的流数据,点击创建【Create Stream】

类型选择【kafka】选择之前创建的连接,输入Topic名称,选择数据格式【JSON】。

topic名称为OGG for bigdata配置文件里指定的Topic

12.预先定义好JSON数据格式的文件如下:

下面定义可以从kafka消费信息中获取,使用bin/kafka-console-consumer.sh

13.OSA支持的数据格式有【CSV】,【JSON】,【AVRO】

这次使用的为上述预定义好的JSON格式

14.创建Custom Jar,选择创建【Custom Jar】

输入名称,选择类型为【Custom Jar】,在Jar URL上指定预先创建好的java程序

需要使用Custom Jar获取流数据并且进行Base64加密处理,Hbase上使用Rest进行操作时,仅支持Base64加密过的数据的增删改查。

注意: Custom Jar所使用的Java程序可以只做针对Event的Base64加密处理

REST可以在OSA上添加REST类型的Stage执行写入到Hbase

OSA目前版本尚未支持流数据base64加密输出

本文使用Java示例程序执行Base64加密及REST操作写入到Hbase

15.创建Pipeline,选择创建【Pipeline】

指定名称,选择上述已创建好的Stream,并且保存。

16.添加已创建的Custom Stage到Pipeline上

右击Pipeline上的Stream标识,选择【Custom Stage from Custom Jar】

17. 指定【Custom Stage】名称,点击保存

18.在Custom Stage的配置选项,我们选择之前已经上传的Custom Jar对象

19.在【Input Mapping】选项,需要把Stream内容和Custom Stage进行关联

并且点击【Publish】发布

注意:如果不选择Publish则无法把OSA输出进行写入操作到Hbase

JOB_ID=after_JOB_ID、JOB_TITILE=after_JOB_TITLE、MIN_SALARY= after_ MIN_SALARY 、MAX_SALARY= after_ MAX_SALARY

20.【Publish】的Pipeline将被锁定,如需更改配置点击【Unpublish】进行更改

Publish的Pipeline如下:

在下方可以看到实时流数据的监听

21.至此为止,OSA端的配置已完成。最后一步为测试与演示。

 测试与演示

1.源端数据库插入一条数据并提交

2.OGG源端捕获确认(Extract和Pump)

3.OGG目标端Kafka投递确认

4.Kafka端消费信息确认

5.Kafka端显示以下纪录已经消费,OP_TYPE代表操作类型,

OP_TYPE=I ,I表示这是一条INSERT插入操作。

6.查看OSA Stream监听状态

点击【kafka-stream】图标,可以看到该条记录已经被Kafka Stream正确的监听

7.查看OSA输出结果

点击【restapi】图标,可以看到OSA输出结果

8.使用HBase写入确认

从HBase的HR_JOBS表中,可以看到源端插入的数据已经写入到该表中

写在最后

Oracle Stream Analytics 还具有以下产品特性:

1.提供友好的图形交互页面,集成可视化并可以通过Java语言进行扩展

2. 提供丰富的内建流模式库并可通过Java进行扩展

3. 与位置和地理空间功能集成

4. 预测分析与机器学习集成

5. 可对接Druid Superset

Oracle Stream Analytics支持Continuous Query Language (CQL) ,构建于分布式分内存计算网格框架之上,使得查询处理的性能可得到线性增长。学习成本低,使得业务人员和开发人员可以更大限度的关注业务而非应用技术架构。是您快速构建企业级大数据流实时分析计算平台不二之选。

使用Oracle Stream Analytics 21步搭建大数据实时流分析平台的更多相关文章

  1. 基于Hadoop生态SparkStreaming的大数据实时流处理平台的搭建

    随着公司业务发展,对大数据的获取和实时处理的要求就会越来越高,日志处理.用户行为分析.场景业务分析等等,传统的写日志方式根本满足不了业务的实时处理需求,所以本人准备开始着手改造原系统中的数据处理方式, ...

  2. Impala简介PB级大数据实时查询分析引擎

    1.Impala简介 • Cloudera公司推出,提供对HDFS.Hbase数据的高性能.低延迟的交互式SQL查询功能. • 基于Hive使用内存计算,兼顾数据仓库.具有实时.批处理.多并发等优点 ...

  3. 腾讯云EMR大数据实时OLAP分析案例解析

    OLAP(On-Line Analytical Processing),是数据仓库系统的主要应用形式,帮助分析人员多角度分析数据,挖掘数据价值.本文基于QQ音乐海量大数据实时分析场景,通过QQ音乐与腾 ...

  4. 大数据时代日志分析平台ELK的搭建

    A,首先说说ELK是啥,  ELK是ElasticSearch . Logstash 和 Kiabana 三个开源工具组成.Logstash是数据源,ElasticSearch是分析数据的,Kiaba ...

  5. 大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建

    大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建 大数据应用之Windows平台Hbase客户端Eclipse环境搭建-Java版 作者:张子良 版权所有,转载请注明出处 引子 ...

  6. 一台虚拟机,基于docker搭建大数据HDP集群

    前言 好多人问我,这种基于大数据平台的xxxx的毕业设计要怎么做.这个可以参考之前写得关于我大数据毕业设计的文章.这篇文章是将对之前的毕设进行优化. 个人觉得可以分为两个部分.第一个部分就是基础的平台 ...

  7. 12.Linux软件安装 (一步一步学习大数据系列之 Linux)

    1.如何上传安装包到服务器 有三种方式: 1.1使用图形化工具,如: filezilla 如何使用FileZilla上传和下载文件 1.2使用 sftp 工具: 在 windows下使用CRT 软件 ...

  8. 搭建大数据hadoop完全分布式环境遇到的坑

    搭建大数据hadoop完全分布式环境,遇到很多问题,这里记录一部分,以备以后查看. 1.在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...

  9. 我搭建大数据Hadoop完全分布式环境遇到的坑---hadoop: command not found

    搭建大数据hadoop环境,遇到很多问题,这里记录一部分,以备以后查看. [遇到问题].在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...

随机推荐

  1. ASP.NET MVC 实现页落网资源分享网站+充值管理+后台管理(14)之会员中心管理

    源码下载地址:http://www.yealuo.com/Sccnn/Detail?KeyValue=c891ffae-7441-4afb-9a75-c5fe000e3d1c 会员中心,主要包含了会员 ...

  2. UVA live 6667 三维严格LIS

    UVA live 6667 三维严格LIS 传送门:https://vjudge.net/problem/UVALive-6667 题意: 每个球都有三个属性值x,y,z,要求最长的严格lis的长度和 ...

  3. 分布式架构基石RPC的实现原理

    RPC的由来 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. 单一应用架构 当网站流量很小时, ...

  4. flask的url处理器(url_defaults和url_value_preprocessor)

    url处理器的作用:对于一部分资源, 你并不是很清楚该如何设定其 URL 相同的部分.例如可能有一些URL包含了几个字母来指定的多国语言语种,但是你不想在每个函数里都手动识别到底是哪个语言 rom f ...

  5. 【温故知新】Java web 开发(三)Form表单与上传下载文件

    简介:在一和二的基础之上,这次来记录下如何在页面提交表单数据,以及文件的上传和下载整个流程,请求也不仅限于GET了,也有POST了. 1. 为了方便,在 webapp 下直接新建一个 index.ht ...

  6. VisitorPattern(访问者模式)-----Java/.Net

    在访问者模式(Visitor Pattern)中,我们使用了一个访问者类,它改变了元素类的执行算法.通过这种方式,元素的执行算法可以随着访问者改变而改变.这种类型的设计模式属于行为型模式.根据模式,元 ...

  7. nodejs-websocket+ssl证书

    1.nodejs配置微信小程序本地服务器(二):利用ws模块创建基于ssl证书的WebSocket服务器:https://segmentfault.com/a/1190000013956534 2.n ...

  8. Node.js 模块系统入门

    在编程领域中,模块是自包含的功能单元,可以跨项目共享和重用.它们使开发人员的生活更加轻松,因为我们可以使用它来增加应用程序的功能,而不必亲自编写这些功能.它还让我们可以组织和解耦代码,从而使应用程序更 ...

  9. 用 Serverless 快速搭建个人相册网站

    日常生活中我们经常会拍摄一些视频.照片等,这些文件会占用比较多的存储空间.本文将介绍一种方法:利用 ThumbsUp 工具,结合 Serverless Framework 的 component 快速 ...

  10. PHP高级程序员必看知识点:目录大全(不定期更新)

    面试题系列: 分享一波腾讯PHP面试题 2019年PHP最新面试题(含答案) Redis 高级面试题 学会这些还怕进不了大厂? 阿里面试官三年经验PHP程序员知识点汇总,学会你就是下一个阿里人! ph ...