Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DevOps and OBIEE: Do it Before it's too late!
Search
FTisiot
June 11, 2018
Technology
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DevOps and OBIEE: Do it Before it's too late!
FTisiot
June 11, 2018
More Decks by FTisiot
See All by FTisiot
Apache Kafka JDBC Source Connector: What could go wrong?
ftisiot
0
140
Solve the Knapsack problem with recursive queries and PostgreSQL
ftisiot
0
170
Build an Open Source Data Pipeline
ftisiot
0
340
Get to know Apache Kafka with Jupyter Notebooks
ftisiot
0
780
Fix Your Strings in PostgreSQL
ftisiot
0
300
Practical Tips & Tricks for Apache Kafka Messages Integration
ftisiot
0
270
Track Database Changes with Apache Kafka
ftisiot
0
320
Apache Kafka and Flink: Stateful Streaming Data Pipelines made easy with SQL
ftisiot
0
990
Kickstart your Kafka with Faker Data
ftisiot
0
470
Other Decks in Technology
See All in Technology
Breaking the Seal: Static Deobfuscation of Compiled V8 JavaScript Bytecode Malware
hshrzd
0
550
Webアクセシビリティ入門 2026
recruitengineers
PRO
1
330
【CEDEC2026】『Relink』を拡張せよ - 『GRANBLUE FANTASY: Relink - Endless Ragnarok』の開発速度と品質を守るCI運用
cygames
PRO
0
130
組織にどうSREを根付かせるか?〜IVRyの場合〜
abnoumaru
0
330
クラウドセキュリティ入門 ~安全なクラウド利用のための基礎知識~
lhazy
10
7.8k
制約理論(ToC)入門 2026版
recruitengineers
PRO
5
1.7k
え?フロントエンドエンジニアの ワイがインフラも!?
puku0x
0
320
Atlassian Cloudサポート業務でのAIエージェント活用事例
smt7174
0
480
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.9k
Data Hubグループ 紹介資料
sansan33
PRO
0
3.1k
ラジオの科学
frievea
0
240
[ChatGPT Work LT]事務作業が苦手な人のための バックオフィスの「半」自動化
chimaki_iot
0
220
Featured
See All Featured
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
760
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.7k
sira's awesome portfolio website redesign presentation
elsirapls
0
320
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
The Invisible Side of Design
smashingmag
301
52k
GitHub's CSS Performance
jonrohan
1033
470k
Paper Plane
katiecoart
PRO
2
52k
Are puppies a ranking factor?
jonoalderson
1
3.8k
We Are The Robots
honzajavorek
0
290
The Pragmatic Product Professional
lauravandoore
37
7.4k
Claude Code のすすめ
schroneko
67
230k
Navigating Weather and Climate Data
rabernat
0
450
Transcript
[email protected]
www.rittmanmead.com @rittmanmead !1 DevOps and OBIEE: Do it Before
it's Too Late!
[email protected]
www.rittmanmead.com @rittmanmead !2 Verona, Italy Rittman Mead Blog 10
Years Experience in BI/Analytics
[email protected]
@FTisiot Oracle ACE No Cappuccino After 11 Knight Photo by Matt Hoffman on Unsplash Francesco Tisiot BI Tech Lead at Rittman Mead
[email protected]
www.rittmanmead.com @rittmanmead !3 Photo by Pascal van de Vendel
on Unsplash Mode 1 Analytics IT Driven Long Cycle Times Centralised
[email protected]
www.rittmanmead.com @rittmanmead !4 Photo by Kyle Henderson on Unsplash
Mode 2 Analytics Fast Business Driven Data Discovery
[email protected]
www.rittmanmead.com @rittmanmead !5 Photo by Jovica Smileski on Unsplash
Centralised • Unique Source of Truth • KPIs Definition • Development • Test • Release
[email protected]
www.rittmanmead.com @rittmanmead !6 Photo by Chris Sabor on Unsplash
TTD Development Isolation Manual Deployment Manual Testing
[email protected]
www.rittmanmead.com @rittmanmead !7 Photo by chage tang on Unsplash
Agile DevOps
[email protected]
www.rittmanmead.com @rittmanmead !8 https://www.01net.it/sviluppare-software-metodo-agile/ Collaboration Frequent Delivery Focus Iteration
[email protected]
www.rittmanmead.com @rittmanmead !9 DevOps https://www.niceideas.ch/roller2/badtrash/entry/devops-explained
[email protected]
www.rittmanmead.com @rittmanmead !10 https://www.niceideas.ch/roller2/badtrash/entry/devops-explained Waste Before it’s Too Late?
[email protected]
www.rittmanmead.com @rittmanmead !11 Before it’s Too Late? https://www.niceideas.ch/roller2/badtrash/entry/devops-explained Risk
[email protected]
www.rittmanmead.com @rittmanmead !12 Before it’s Too Late! The Results
are Wrong! Production is Pointing to UAT! We Locked the DB User! Which RPD can we Promote? Photo by R. Mac Wheeler on Unsplash
[email protected]
www.rittmanmead.com @rittmanmead !13 OBIEE *1996 - ✝2018 Photo by
Jerry Kiesewetter on Unsplash Before it’s Too Late!
[email protected]
www.rittmanmead.com @rittmanmead !14 Agenda • Default Situation • Code
Versioning • Development Isolation • Testing • Promoting • Process Automation
[email protected]
www.rittmanmead.com @rittmanmead !15 RPD Source Catalog OBIEE Security Config
Artefacts
[email protected]
www.rittmanmead.com @rittmanmead !16 The Original OBIEE Sins • No
Code Versioning • Concurrent Online RPD Editing • Manual Regression Testing • Limited Scripting • Manual Deployment Photo by David Clode on Unsplash
[email protected]
www.rittmanmead.com @rittmanmead !17 Photo by Erwan Hesry on Unsplash
DevOps is a Methodology
[email protected]
www.rittmanmead.com @rittmanmead !18 Photo by Fidel Fernando on Unsplash
Start Simple - Code Versioning • RPD • Catalog • Security • Config Files • Artefacts
[email protected]
www.rittmanmead.com @rittmanmead !19 Gitflow Method Master Branch -> Production
Develop Branch -> Development Features -> New Developments
[email protected]
www.rittmanmead.com @rittmanmead !20 RPD • RPD Binary • MDS
XML • How to Merge?
[email protected]
www.rittmanmead.com @rittmanmead !21 Catalog • Set of XML Files
• Stored as .catalog? • What about .atr? • How to deploy?
[email protected]
www.rittmanmead.com @rittmanmead !22 Security • system-jazn-data in 11g •
bar file in 12c (contains system-jazn-data) • WLST Scripting (infrastructure as code)
[email protected]
www.rittmanmead.com @rittmanmead !23 Config Files • Automatically promoted? •
Distinct files per environment
[email protected]
www.rittmanmead.com @rittmanmead !24 Photo by raquel raclette on Unsplash
Development Isolation Local Instances VMs Docker
[email protected]
www.rittmanmead.com @rittmanmead !25 Photo by Matthew Henry on Unsplash
Original Situation Online RPD/Catalog Editing No History No Change Control No Automated Regression Testing
[email protected]
www.rittmanmead.com @rittmanmead !26 Photo by Aaron Burden on Unsplash
Start Simple • Offline RPD • Dev Server for Catalog No test of the RPD Before Merging!
[email protected]
www.rittmanmead.com @rittmanmead !27 Photo by James & Carol Lee
on Unsplash And Evolve… • Fully Separated Dev Envs • Content pushed/pulled from Git
[email protected]
www.rittmanmead.com @rittmanmead !28 Photo by James & Carol Lee
on Unsplash And Evolve… • Automated Environment Creation • Docker ‣ https:/ /github.com/gianniceresa/docker-images
[email protected]
www.rittmanmead.com @rittmanmead !29 OBIEE + DB OBIEE F1 OBIEE
F2 DB F1_BIPLATFORM F2_BIPLATFORM Docker Options
[email protected]
www.rittmanmead.com @rittmanmead !30 Photo by Timothy Rhyne on Unsplash
Testing
[email protected]
www.rittmanmead.com @rittmanmead !31 RPD Consistency Check Validates RPD Logic
Errors Warnings
[email protected]
www.rittmanmead.com @rittmanmead !32 RPD Command Line Consistency Check validaterpd
-R <repositoryName> -O/C/X <outputfile> Text CSV XML
[email protected]
www.rittmanmead.com @rittmanmead !33 RPD Understanding Differences comparerpd -C <modifiedRPD>
-G <originalRPD> -O/F <outputfile> Validating Differences
[email protected]
www.rittmanmead.com @rittmanmead !34 Catalog Consistency Check runcat.cmd -cmd validate
-items Report -links Report -offline <path_to_catalog> Valid XMLs No Broken Links
[email protected]
www.rittmanmead.com @rittmanmead !35 Photo by Vincent van Zalinge on
Unsplash Regression Testing Before After
[email protected]
www.rittmanmead.com @rittmanmead !36 Photo by Tanner Larson on Unsplash
Testing Suite • Static • Comprehensive • Security Sensitive Separate Catalog Folder
[email protected]
www.rittmanmead.com @rittmanmead !37 BVT Baseline Validation Tool • Automated
Testing • Set of Prebuilt Test ‣ Logic SQL (Discontinued) ‣ Catalog ‣ Reports ‣ Dashboards ‣ UI ‣ BI Publisher ‣ Visual Analyser
[email protected]
www.rittmanmead.com @rittmanmead !38 BVT Baseline Validation Tool • Deployment
‣ Deployment Name ‣ Connections (analytics/bip/va) ‣ User • Test ‣ Set of Tests to run ‣ Catalog Folder • Results ‣ Results Folder textconfig.xml
[email protected]
www.rittmanmead.com @rittmanmead !39 BVT Baseline Validation Tool • Thresholds
‣ UI Comparison
[email protected]
www.rittmanmead.com @rittmanmead !40 BVT Baseline Validation Tool • Baseline
• Changes • Compare Results bin\obibvt.bat -config testconfig.xml -deployment PRE bin\obibvt.bat -config testconfig.xml -deployment AFTER bin\obibvt.bat -compareresults Results\PRE Results\AFTER -config testconfig.xml
[email protected]
www.rittmanmead.com @rittmanmead !41 Photo by Jordan Whitt on Unsplash
Code Promotion
[email protected]
www.rittmanmead.com @rittmanmead !42 Promoting • Push ‣ RPD ‣
Catalog ‣ Security ‣ Configuration ‣ Custom Files/Images
[email protected]
www.rittmanmead.com @rittmanmead !43 Photo by Rob Schreckhise on Unsplash
Do you Remember the Password?
[email protected]
www.rittmanmead.com @rittmanmead !44 RPD • UploadRPD • Patch RPD
- Change Connection Pools datamodel.cmd uploadrpd -I <file> -D -U <user> -SI ssi -S <server> -N <port> admintool /command <filename> datamodel.sh updateConnectionpool -SI sis -U <user> -P <password> -C <filejson> patchrpd ... -C <curr_rpd> -G <origin_rpd> -I <patch_file> -O <dest_rpd>
[email protected]
www.rittmanmead.com @rittmanmead !45 Catalog • File System Copy •
Webservices /shared /system WebCatalogService.pasteItem2(<.catalog_file>,…)
[email protected]
www.rittmanmead.com @rittmanmead !46 Security • WLST scripts • system-jazn
wlst.sh <wlst_script.py> Config • File System Copy
[email protected]
www.rittmanmead.com @rittmanmead !47 Custom Files AnalyticsRes - File System
Copy
[email protected]
www.rittmanmead.com @rittmanmead !48 Photo by Armando Tobar on Unsplash
Sticking Everything Together
[email protected]
www.rittmanmead.com @rittmanmead !49 Automation Tools Jenkins Gitlab
[email protected]
www.rittmanmead.com @rittmanmead b !50 Environment Creation New Feature/New Ticket
in Jira New Git Branch Jenkins Flow Docker OBIEE Image RPD+Catalog Deployment Development Baseline Creation
[email protected]
www.rittmanmead.com @rittmanmead !51 Finish Feature Finish Feature (Commit to
work Branch) RPD & Catalog Validation Jenkins Flow Baseline Validation Tool - Against Baseline Pre-Changes Push to Dev Review/Approve Fix
[email protected]
www.rittmanmead.com @rittmanmead b !52 Merge Into Dev Commit to
Dev RPD & Catalog Validation Jenkins Flow Baseline Validation Tool Push to Test Review/Approve RPD & Catalog Merge - Manual Intervention when Conflicts Fix
[email protected]
www.rittmanmead.com @rittmanmead !53 Production Release Commit to Master Jenkins
Flow Automatic Push to UAT/Production
[email protected]
www.rittmanmead.com @rittmanmead !54 Rittman Mead BI Developer Toolkit https://www.rittmanmead.com/blog/2017/02/concurrent-rpd-development-with-git/
• Accelleration Framework • Set of pre-packaged functions ‣ Git versioning ‣ Testing Suite • Written in Python - Easy to Integrate ‣ OBIEE Webservices, command line, file system • Git/SVN Versioning ‣ Binary RPD ‣ .catalog files
[email protected]
www.rittmanmead.com @rittmanmead !55 Rittman Mead BI Developer Toolkit •
Creation of Testing Suite - Parameter Modification python modify_reports.py /shared/Test /shared/Test_Suite/2014_2015 "Date Period" Year 2014 2015 • Regression Testing ‣ Comparison of LSQL and Results ‣ Parameter Modification ‣ Push Results to Database ‣ Prebuilt RPD/catalog
[email protected]
www.rittmanmead.com @rittmanmead !56 Developer Toolkits available for ‣ BI
‣ ODI ‣ Informatica ‣ Essbase Apply DevOps to the Whole BI Cycle!