Sunday, September 11, 2016

Oracle Workspace Manager - Basic POC with Spring Boot and Flyleaf

Working with a process to update configuration and master data within an enterprise is always a challenging task. While investigating possible solutions on how to have someone change data via a UI, then have those changes tested, signed off and approved before taking it to production. I stumbled on to Oracle Workspace Manager.
According to their developer docs, it seemed fit this use case exactly:

Manage a collection of updates and insertions as a unit before incorporating them into production data
Workspace Manager lets you review changes and roll back undesirable ones before making the changes public. Until you make the changes public, they are invisible to other users of the database, who will access only the regular production data. You can organize the changes in a simple set of workspaces or in a complex workspace hierarchy. A typical example might be a life sciences application in which Workspace Manager supports the discovery and quality assurance (QA) processes by managing a collection of updates before they are merged with the production data.


You could think of Oracle Workspace Manager as light "git"-like db versioning. 
Simply put:

  1. You create a workspace (branch)... 
  2. You make your changes there.. other people can connect to your workspace .. also make changes... or alternatively create their own branch from yours.
  3. You can refresh (fetch / merge) your workspace and resolve any conflicts that arise.
  4. Once everything is sorted and all is well with your changes you merge it back into the "LIVE" (origin: develop / master) workspace.

I used an existing Docker image of a oracle standard edition version. Oracle Workspace manager is not available on XE unfortunately. This is a rather large image, and it does take a couple minutes to initialise. The image is available on here on Docker Hub.


Connect database with following setting:
hostname: localhost
port: 1521
sid: xe
service name: xe.oracle.docker
username: system
password: oracle

To connect using sqlplus:
sqlplus system/oracle@//localhost:1521/xe.oracle.docker
To connect on mac os - install instantclient and run from there:

./instantclient_12_1/sqlplus system/oracle@local


To setup the initial DB I tried out Flyway. All quite simple and easy to implement. 
Under resources/db/migration there are a number of sql files that do the initial database setup.

  1. create the tables: CODE and CODE_TYPE, 
  2. insert initial data 
  3. enable versioning on those tables.

When you enable versioning the following happens, the table is renamed and a view is created allowing the "recording" of changes that occur.

Reference: (oracle presentation available here)



So after the initial setup you will seen a number of tables and views:



To try this out...

  1. Get the Oracle Docker image
  2. Once the DB is started... run the boot DataApplication.
  3. Use Postman on the REST resources below

To check the current workspace:
GET: http://localhost:9119/poc/workspace
To select all the information from the code table for the current workspace:
GET: http://localhost:9119/poc/workspace/data/code
Create code in the current workspace:
POST: http://localhost:9119/poc/workspace/data/code
BODY: 
{
"id":2,
"descr": "some code",
"type": 1
}
To change workspace (LIVE is default and available):
PUT: http://localhost:9119/poc/workspace/{workspaceName}
To create a workspace:
POST: http://localhost:9119/poc/workspace/{workspaceName}
To remove a workspace:
DELETE: http://localhost:9119/poc/workspace/{workspaceName}
To merge a workspace:
PUT: http://localhost:9119/poc/workspace/merge/{workspaceName}


These REST resources just wrap some of the functions from the DBMS_WM Package
This is maybe just the tip of a iceberg, as there is a ton of functionality available from this package.

All the code is available here.


49 comments:

  1. This comment has been removed by a blog administrator.

    ReplyDelete
    Replies
    1. The effectiveness of IEEE Project Domains depends very much on the situation in which they are applied. In order to further improve IEEE Final Year Project Domains practices we need to explicitly describe and utilise our knowledge about software domains of software engineering Final Year Project Domains for CSE technologies. This paper suggests a modelling formalism for supporting systematic reuse of software engineering technologies during planning of software projects and improvement programmes in Final Year Project Centers in Chennai.

      Spring Framework has already made serious inroads as an integrated technology stack for building user-facing applications. Spring Framework Corporate TRaining the authors explore the idea of using Java in Big Data platforms.
      Specifically, Spring Framework provides various tasks are geared around preparing data for further analysis and visualization. Spring Training in Chennai

      Delete
    2. If truth be told informative and valuable detail is here.Small Business ERP Software

      Delete
  2. I found this blog in search results while i am searching for aws jobs in hyderabad. Thank You admin sharing for this information. Which is useful for me.

    ReplyDelete
  3. This Server is based on the Open Source Xen.org hypervisor, an industry open standard for virtualization with broad adoption from major ISVs like Oracle, IBM, HP, Sun, Dell, Red Hat, Novel, Debian, Citrix and the Linux community. salesforce custom dashboard

    ReplyDelete
  4. Great blog.you put Good stuff.All the topics were explained briefly.so quickly understand for me.I am waiting for your next fantastic blog.Thanks for sharing.Any coures related details learn...
    Oracle course in chennai

    ReplyDelete
  5. Really interesting and great bblog

    ReplyDelete
  6. Exceptionally valuable information.

    ReplyDelete
  7. Before you start buying games that you think your kids will enjoy, try renting them beforehand. Most of the time, you can't return a video game you don't want. Rentals give you a chance to try out the game for only a fraction of the cost of a purchase.

    Netflix Gift Card Codes Generator 2019 Online – Free Netflix Accounts
    6 Instagram Password Crackers – How Easy It Is To Crack Any Instagram

    ReplyDelete
  8. This blog is honestly beneficial concerning all educational understanding I earned. It covered a wonderful region of issue that may help some of needy humans. everything cited here is obvious and without a doubt beneficial. CSIR NET Online test

    ReplyDelete
  9. Customized Digital Marketing Courses for Beginners with Live Projects & Premium marketing tools.Enroll Now and get trained by Industry Experts. If you are looking for Digital Marketing Courses then visit our website to know more information.
    https://onlineidealab.com/digital-marketing-training/

    ReplyDelete
  10. Cognex offer AWS Training and certification in Chennai. And also cognex offers various courses according to the students requirements. Offering both online and offline classes. Other courses are microsoft azure, prince2 foundation, ITI V4 foundation,etc,

    ReplyDelete
  11. "I’m going to read this. I’ll be sure to come back. thanks for sharing. and also This article gives the light in which we can observe the reality. this is very nice one and gives indepth information. thanks for this nice article...

    " basic knowledge hub

    ReplyDelete
  12. My curiosity was solved by looking at your writing. Your writing was helpful to me.카지노사이트I want to help you too.

    ReplyDelete
  13. This information is impressive; I am inspired how continuously you describe this topic. After reading your post, thanks for taking the time to discuss this, I feel happy about it and I love learning more about this topic snowflake data warehouse

    ReplyDelete
  14. I got a web site from where I be capable of really obtain valuable information regarding my study and knowledge.
    Great Article… Good Job… Thanks For Sharing…

    Website:오피사이트

    ReplyDelete
  15. Best Software Training Institute in Delhi Madrid Software offers strategic training paths for the certification skills required to support today's technologies, while offering a Business Analytic course, Data science courses in Delhi, Career in AI and Digital Marketing Course in Delhi for clients looking to implement new/upgraded business applications.

    ReplyDelete
  16. Hello, I read the post well. 토토커뮤니티 It's a really interesting topic and it has helped me a lot. In fact, I also run a website with similar content to your posting. Please visit once

    ReplyDelete
  17. I found the answer I was looking for in your article. I'm going to quote your article and write it on a blog. 먹튀검증

    ReplyDelete
  18. 39 years old Video Producer Kristopher from La Prairie, has
    hobbies and interests for example model railways,
    and scrabble. that covered going to Tyre.출장안마

    ReplyDelete
  19. Download Cricket Mazza 11 live match cricket score app, Live Line & Fastest Score. Get Fastest Live cricket score app, Scorecard, Commentary, Match Info, and Schedules of All International & Domestic Matches, Series wise Stats, Records, Analysis and Facts, Trending News and Tweets, Recent ICC Player and Team Rankings. Also Download live cricket score apps for IOS, including real Cricket, Cricket T20 Fever 3D and other top answers suggested and ranked.

    ReplyDelete
  20. Hey what a brilliant post I have come across and believe me I have been searching out for this similar kind of post for past a week and hardly came across this. Thank you very much and will look for more postings from you. 먹튀검증 and I am very happy to see your post just in time and it was a great help. Thank you ! Leave your blog address below. Please visit me anytime!

    ReplyDelete
  21. Excellent read, I just passed this onto a friend who was doing a little research on that. And he actually bought me lunch as I found it for him smile Therefore let me rephrase that: Thank you for lunch. 메이저사이트

    ReplyDelete
  22. Someone necessarily help to make severely articles I might state. That is the first time I frequented your web page and up to now? I surprised with the analysis you made to create this actual publish extraordinary. Fantastic process ty lê keo

    ReplyDelete
  23. Extremely overall quite fascinating post. I was searching for this sort of data and delighted in perusing this one. 안전한놀이터

    ReplyDelete
  24. I will always let you and your words become noticed this weblog. Lastly something not a junk, which we undergo readers will also experience how I feel after reading your article 토토사이트검증

    ReplyDelete
  25. appreciate your information in this article. It’s smart the good performance of your site. You can also check my article you made it mice 메이저검증업체

    ReplyDelete
  26. I look forward to your kind cooperation. Guess I will just bookmark this site 토토추천

    ReplyDelete
  27. The blog is instructive additionally 메이저사이트 This post is invaluable

    ReplyDelete
  28. The Design looks very good You’re incredible! Thank you! 먹튀폴리스

    ReplyDelete
  29. Pandaranol can lead a horse to water AND make it drink 메이저놀이터

    ReplyDelete
  30. Just wish to say your article is as amazing. The clearness in your
    post is simply great and i could assume you’re an expert on this subject.
    Well with your permission let me to grab your feed to keep up to date
    with forthcoming post. Thanks a million and please continue
    the rewarding work.경마

    ReplyDelete
  31. Hello there! Quick question that’s completely off topic.
    Do you know how to make your site mobile friendly? My website looks weird when viewing from my iphone.
    I’m trying to find a template or plugin that might
    be able to resolve this issue. If you have any recommendations, please share.
    Thank you!

    website:파워볼


    ReplyDelete
  32. That's a great article! The neatly organized content is good to see. Can I quote a blog and write it on my blog? My blog has a variety of communities including these articles. Would you like to visit me later? keo nhacai


    ReplyDelete
  33. How can you think of this? I thought about this, but I couldn't solve it as well as you.샌즈카지노I am so amazing and cool you are. I think you will help me. I hope you can help me.


    ReplyDelete
  34. Are you the one who studies this subject?? I have a headache with this subject.우리카지노Looking at your writing was very helpful.

    ReplyDelete
  35. Excellent read, I just passed this onto a friend who was doing a little research on that. And he actually bought me lunch as I found it for him smile Therefore let me rephrase that: Thank you for lunch. 먹튀신고

    ReplyDelete
  36. You made some good points there. I did a Google search about the topic and found most people will believe your blog. 먹튀검증

    ReplyDelete
  37. 파워볼사이트January 6, 2022 at 11:43 AM

    Your posts are always informative. This post was a very interesting topic for me too. 파워볼사이트 I wish I could visit the site I run and exchange opinions with each other. So have a nice day.


    ReplyDelete
  38. 토토사이트모음January 13, 2022 at 11:24 AM

    While looking for articles on these topics, I came across this article on the site here. As I read your article, I felt like an expert in this field. I have several articles on these topics posted on my site. Could you please visit my homepage? 토토사이트모음

    ReplyDelete

Popular Posts

Followers