General interview questions

  • I had an interview where the interviewer asked "how to load data to olap and oltp". I was little confused as I thought that OLAP data is for analysis purpose and we have fact and dim tables in DW(presentation layer). But this is not true as we have OLTP data , daily transactional data coming and we do incremental loads.

    Please  help me  to understand and answer this question properly next time.

  • komal145 - Wednesday, September 20, 2017 10:32 AM

    I had an interview where the interviewer asked "how to load data to olap and oltp". I was little confused as I thought that OLAP data is for analysis purpose and we have fact and dim tables in DW(presentation layer). But this is not true as we have OLTP data , daily transactional data coming and we do incremental loads.

    Please  help me  to understand and answer this question properly next time.

    Maybe a trick question? Apart from metadata, OLTP databases are 'loaded' by whichever applications are using them to store transactional data.

    If you haven't even tried to resolve your issue, please don't expect the hard-working volunteers here to waste their time providing links to answers which you could easily have found yourself.

  • I agree this is a "trick" question of a sort. They aren't asking this to get an answer, but more to see how you think. It's an open-ended question designed to stimulate a conversation, not to get an answer.
    My technique for dealing with questions like this is to come right back with a question of my own. "What kind of data is this, and what is it being used for?" is a good way to start. There's a hundred ways to load data into OLAP or OLTP situations, and there's some situations where there's no clear distinction between the two areas - a table might be used for both things. Loading that table is going to be wholly dependent on where the data is coming from, how important it is to keep it up to date, whether there is tolerance for it to be behind by a few minutes or a few days or whatever - lots of things going on here, and you need a ton more information to "design a solution" for this issue. Tables can be loaded by BCP, but SSIS packages, by stored procedures, by applications, by web services, by importing XML, by querying remote servers, etc, etc. All of those methods could be scheduled in a bunch of different ways too.

    In interviews, resist the temptation to simply give an answer to questions like this. Use it to start a conversation where you can take the person through a discovery process and this will help them understand what it's like to work with you. Personally, when I interview people, I don't care if they can answer my questions or not - I care that my questions generate thought, and I want to know what thoughts they generate. In fact, if you just give me an answer to a question and then shut up, I'm going to be very suspicious that you simply memorized answers to questions, and don't understand the underlying concepts.

    Interviewer: How do you load an OLAP table?
    Candidate: With SSIS. (crickets)

    Not gonna hire that guy. Don't answer questions with a simple answer.

  • komal145 - Wednesday, September 20, 2017 10:32 AM

    I had an interview where the interviewer asked "how to load data to olap and oltp". I was little confused as I thought that OLAP data is for analysis purpose and we have fact and dim tables in DW(presentation layer). But this is not true as we have OLTP data , daily transactional data coming and we do incremental loads.

    Please  help me  to understand and answer this question properly next time.

    Maybe the answer is that one is loaded using T-SQL and the other one by processing the cubes and dimensions?
    Or maybe they wanted to know what kind of information gets loaded on each  type of db.
    It's hard to know. This might be one of those questions that you need to ask for further details.

    Luis C.
    General Disclaimer:
    Are you seriously taking the advice and code from someone from the internet without testing it? Do you at least understand it? Or can it easily kill your server?

    How to post data/code on a forum to get the best help: Option 1 / Option 2
  • Check out the following...
    https://www.youtube.com/watch?v=XKu_SEDAykw
    I'm not a C# programmer but my personal feeling is that both the interviewer and the interviewee failed massively.  For example, both talked about having negative numbers but the interviewee never actually checked to see if his solution would work when negatives are present and the interviewer missed that fact.  Also, both missed the fact than an indexed array could be used on the presorted example, which would provide a massive shortcut I both examples given.  The shortcut for the ordered set is if the number is > 8, skip it but if it's < 8/2, just stop because no pair is possible.  Moving to the 2nd number from the right in the first set, the number was 3.  That's less than 8/2 so no pair is possible and you should just return false then.

    His complement table also ends up being worse the Triangular Join that would be necessary to solve the problem for the unordered sets not to mention that if the data needed to be used again, it would still be unsorted and un-optimizable except for the early "got lucky" hit.

    They both missed the problem definition.  The problem definition was to find out if a set of numbers had a PAIR of numbers that added up to an 8.  If an 8 is present and a 0 is not, that should be a FALSE according to the problem definition.

    There's more and you can talk all you want but that's enough to show non-critical thinking and a failure on the question.  If you think not, remember that they're supposedly bloody ENGINEERS and should be well versed in critical thinking.

    I wonder if these folks are actually from Google and whether they even know what a man-hole cover is. 😀

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply