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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
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
770
Fix Your Strings in PostgreSQL
ftisiot
0
290
Practical Tips & Tricks for Apache Kafka Messages Integration
ftisiot
0
260
Track Database Changes with Apache Kafka
ftisiot
0
310
Apache Kafka and Flink: Stateful Streaming Data Pipelines made easy with SQL
ftisiot
0
990
Kickstart your Kafka with Faker Data
ftisiot
0
460
Other Decks in Technology
See All in Technology
美しいコードを書くためにF#を学んでみた話
yud0uhu
1
390
完全自律ロボットを作りたくて、先に開発を自律させた話(ROS Japan UG #63 LT)
rryz09
0
440
ループエンジニアリングでE2Eテストを実践
noriyukitakei
0
330
プロダクトだけじゃない、社内プロセスにおける自動化・省力化ノススメ
kakehashi
PRO
1
3.3k
脱金融のフューチャー・デザイン / Future Design Beyond Finance
ks91
PRO
0
140
[2026-07-15] AI Ready なはずだったアーキテクチャと、見えてきた課題・次に目指す状態
wxyzzz
3
1k
【Claude Code】鹿野さんに聞く 私の推しの並行開発環境 大公開 / claude-code-parallel-2026-07-15
tonkotsuboy_com
6
3.3k
“全部コピーしない”ファイルデータの活用 : — FSx for ONTAP × S3 Tables × Icebergで作るメタデータカタログ
yoshiki0705
0
640
オブザーバビリティ、本当に活用できてる? 〜API連携×生成AIで成熟度を自動評価〜
dmmsre
1
2.6k
GuardrailからGovernanceへ~AIエージェント運用の次の課題~
sbspsy
1
240
AWS Blocks を触ってみた/first-tach-aws-blocks
fossamagna
2
150
Amazon EVS で VCF 9.0 / 9.1 のサポート開始まとめ
mtoyoda
0
280
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
Embracing the Ebb and Flow
colly
88
5.1k
Typedesign – Prime Four
hannesfritz
42
3.1k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
970
The Invisible Side of Design
smashingmag
301
52k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Exploring anti-patterns in Rails
aemeredith
3
440
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!