Friday, July 06, 2007

Kalido Setup and Default Passwords of Oracle Schemas

When setting up Kalido for the first time it asks you to create a number of schemas in the database. It also expects them to have default passwords, e.g. goldeneyex for WHSUSR or gatekeeper for GATEKEEPER schema.

However, there are strict password guidelines these days in almost every organization. A strict DBA group would never let you have the kind of passwords mentioned above. If DBAs do decide to have difference passwords for these schemas then it would be a problem. When you create a Kalido Gatekeeper it goes to gatekeeper schema and grabs the encrypted username and password for WHSUSR schema from USER_DETAILS table. If you have changed the password of GATEKEEPER schema itself then you can override that by checking the option ‘Force the GateKeeper to connect to the database as a specific user’ and then supplying the schema name and new password. However, even after that, gatekeeper configuration will fail. It fails because of the fact that it grabs the encrypted password for WHSUSR schema from USER_DETAILS table that equals the default password of WHSUSR, goldeneyex.

You would think that it is not a problem. You will use the KSetPass utility and change the password of WHSUSR schema. However, that would not work because for KSetPass utility to work you would need gatekeeper configured first. So now you are into a vicious circle. There are two ways to solve this puzzle. One is by asking Kalido Support to give you encrypted value of WHSUSR password and then update the USER_DETAILS table manually. Another way is by asking your DBA team to change the password of WHSUSR schema to default goldeneyex. Once you have configured your gatekeeper they can change it back to whatever they want and then you can change it accordingly using KSetPass utility.

The key here is to get your Kalido gatekeeper configured first and foremost. Once the gatekeeper is there, you can do pretty much whatever you want.

Tuesday, June 26, 2007

Strategies for Testing Data Warehouse Applications

June issue of DM Review magazine has an interesting article on Data Warehouse Testing. This topic has always been up for debate. Traditional testing teams want to test a Data Warehouse like any other transactional systems. Whereas Data Warehouse gurus would always suggest testing the input and output. This article lists seven goals for a successful data warehouse testing, namely;

  • Data completeness. Ensures that all expected data is loaded.
  • Data transformation. Ensures that all data is transformed correctly according to business rules and/or design specifications.
  • Data quality. Ensures that the ETL application correctly rejects, substitutes default values, corrects or ignores and reports invalid data.
  • Performance and scalability. Ensures that data loads and queries perform within expected time frames and that the technical architecture is scalable.
  • Integration testing. Ensures that the ETL process functions well with other upstream and downstream processes.
  • User-acceptance testing. Ensures the solution meets users' current expectations and anticipates their future expectations.
  • Regression testing. Ensures existing functionality remains intact each time a new release of code is completed.
This is an interesting read for those who have struggled to find the right balance while implementing strategies for a data warehouse testing.

Monday, June 25, 2007

Restoring from Oracle Dump Without any Data

I was trying to restore an Oracle backup dump the other day. The only catch was that I didn't want any data in the restore. However, large amount of data in the dump would have made the whole process last for a whole day ... no kidding. I started Googling around but unfortunately there was little to no information available. Once I found the solution I decided to share it for everybody's benefit.

Command for restoring from a dump file is age old imp command. So I am not going to go into that any further. What will do the trick for you is rows flag. If you want to import all the table structures with no data, use the flag as below

rows=n

Default for this flag is Y, so if you don't use this flag it will import all the data.

Monday, February 12, 2007

Koshish Karne Walon Ki Haar Nahin Hoti …

An inspirational poem from Harivansh Rai Bachchan. Thanks to Vishva for the lyrics


Lehron se Darkar nauka par nahin hoti,
koshish karne walon ki haar nahin hoti

Nanhi cheenti jab daana lekar chalti hai,
chadhti deewaron par,
sau bar phisalti hai.
Man ka vishwas ragon mein saahas bharta hai,
chadhkar girna,
girkar chadhna na akharta hai.

Akhir uski mehnat bekar nahin hoti,
koshish karne walon ki haar nahin hoti.

Dubkiyan sindhu mein gotakhor lagata hai,
ja ja kar khali haath lautkar aata hai
Milte nahi sahaj hi moti gehre paani mein,
badhta dugna utsah isi hairani mein.

Muthi uski khali har bar nahin hoti,
koshish karne walon ki haar nahi hoti.

Asaflta ek chunauti hai,
ise sweekar karo,
kya kami reh gayi,
dekho aur sudhar karo.
Jab tak na safal ho,

neend chain ko tyago tum,
Sangharsh ka maidan chhodkar mat bhago tum.

Kuch kiye bina hi jai jaikar nahin hoti,
koshish karne walon ki haar nahin hoti.


- Harivansh Rai Bacchan

लहरों से डर कर नौका पार नहीं होती ,
कोशिश करने वालों  की हार नहीं होती।

नन्ही चींटी जब दाना लेकर चलती है,
चढ़ती दीवारों पर,
सौ बार फिसलती है।
मन का विश्वास रगों में साहस भरता है,
चढ़कर गिरना,
गिरकर चढ़ना ना अखरता है. 

आखिर उसकी मेहनत बेकार नहीं होती,
कोशिश करने वालों की हार नहीं होती।

डुबकियाँ  सिन्धु में गोताखोर लगाता है,
जा जा कर खाली हाथ लौटकर आता है 
मिलते नहीं सहज ही मोती गहरे पानी में,
बढ़ता दुगना उत्साह इसी हैरानी में।

मुट्ठी उसकी खाली हर बार नहीं होती,
कोशिश करने वालों  की हार नहीं होती।

असफलता एक चुनौती है,
इसे स्वीकार करो,
क्या कमी रह गई,
देखो और सुधार करो।
जब तक ना सफल हो,
नींद चैन को त्यागो तुम,
संघर्ष का मैदान छोड़कर मत भागो तुम।

कुछ किए बिना ही जय जयकार नहीं होती,
कोशिश करने वालों की हार नहीं होती।

- हरिवंश राय बच्चन 

Tuesday, January 09, 2007

Think Big, Start Small

This is my second post in the series where I will go through a real life MDM (Master Data Management) implementation. The problem at hand and in fact generic to all MDM implementations is the presence of multiple operational and transactional systems. In this case however, it gets worse. As the cases progress from one system to another they are manually entered in the next system in the chain and hence all the problems. In our case there are four systems in all, w, x, y and z. Cases progress from w through z in that order. In each system cases are entered manually and these systems are as distinct and disconnected from each other as North and South Pole.

When starting any MDM initiative in such scenarios it would be tempting to put all the systems in project scope. But, that would have disaster written all over it. It is heartening to know that scope of this phase of MDM implementation has been scaled down to system y. This also doesn't mean that our vision would get so narrow that we would not even look at other systems. The right balance is to start the implementation from one system but the design should be flexible enough to accommodate remaining systems in coming phases.

Right now we are looking at data elements that are going to be part of the Gold Copy in this phase. In addition to that we are looking at data elements from other systems, so that we keep them in the back of our mind when we are working on the design and model.

Of all the problems in Enterprise Information Management MDM is one where taking it one piece at a time would be highly beneficial and effective.

Wednesday, January 03, 2007

Real World Master Data Management (MDM) Implementation

Okay! So you have been to conferences and attended the webinars. But how many real world MDM implementations you have come across. One or may be none. MDM is such a hot buzz word these days that every possible vendor out there has started offering a solution based on technologies that were stacked together in a hurry to cash in on the concept.
Just a few weeks ago we started a project for Master Data Management. When I was starting this project I started googling for any real world case studies on Master Data Management implementations. What I found was way less than my expectations. I thought it may not be a bad idea if I blog through the whole implementation process. I would share as much detail as possible on the implementation piece, keeping some of the less interesting details about the organization and the data hidden. Keep reading …

Sunday, May 07, 2006

Success Factors in the Implementation of a KM System

Below I present a set of factors required to exist for a successful implementation of a KM system, compiled from.

Knowledge friendly culture
– The organization values learning and innovation, and establishes appropriate incentives and reward systems. People collaborate and have a positive attitude towards knowledge. When there is free flow of knowledge from other employees, individuals tend to respond in the same manner.

Opportunities
– Employees must be placed in an environment where they have opportunities to use their capabilities to the fullest.

Motivation
– Employees must be motivated to share their knowledge with other people in the organization. They must be convinced that their sharing of knowledge will be valuable to the organization and, most importantly, to themselves.

Concrete shared objectives
– Develop a broadly shared understanding of the enterprise’s mission, current direction, and the role of the individual in support of the enterprise and of the individual’s own interests.

Knowledge base – The knowledge base should be managed the same way as physical assets. Time and effort should be invested in designing, building and maintaining its content.

Technical infrastructure – All knowledge management systems should be linked to other information systems, providing necessary security features.

Effective governance for the KM practices – Continuous monitoring, evaluation, and guidance of the KM activities and their plans, results and opportunities.

Interdisciplinary problem solving working groups – Create problem-solving groups comprised of people from a variety of disciplines. This will transfer the knowledge from one discipline to another, as well as provide solutions to interdisciplinary problems in decreased time.

Multiple channels for knowledge transfer - A variety of channels for knowledge transfer are desirable, as each adds value in a different way. It is particularly important to provide opportunities for face-to-face contact, as well as electronic forms of communication.

Measurement
- Measuring the usage of the KM system and its efficiency is essential to the accurate assessment and improvement of knowledge management programs in order to be able to increase the value or prolong the duration of the sustainable competitive advantage.

Empowerment – Employees must be given permission to innovate, improvise and stretch enterprise policies and practices beyond the predetermined scopes.

Source: Knowledge Management in Software Engineering

The latest #BigData #Analytics Daily! https://t.co/IvIGAevVLn Thanks to @mauriciogarciar @hivemaster @EnvironicsA #bigdata #analytics

The latest #BigData #Analytics Daily! https://t.co/IvIGAevVLn Thanks to @mauriciogarciar @hivemaster @EnvironicsA #bigdata #analytics Source...