1

Where I work, there is an Oracle data warehouse that is managed by another group that contains some pretty critical information for the company to run smoothly. The issue is that they (apparently, haven't confirmed with anyone on their team yet) take this server down for long periods bi-weekly.

Before I started here, my team created a SQL database and accompanying WCF service to download this data at different intervals for us to store locally, to have available in case any of our applications need access to the data during one of the main servers' down periods, and it also provides some basic lookup methods.

Lately we've been developing new applications that require us to have more data from the other group's database that we didn't have before. This involves a long process of modifying the tables in our cache server, re-writing queries to pull in the new data that we need, having it tested, updating any other apps that also reference this database, and finally push it to production. I have had to do this process twice lately, and I foresee it happening many times in the future as well.

My question is, is there a better way we could be going about this? I'm not sure how important it is that we have 100% uptime, because if other applications around the company don't have access to that data when the server is down, I don't see why ours couldn't just wait for it to be up again.

In that case I think a web API we could add endpoints to as needed would reduce the change impact when we need more data.

  • 4
    If you don't know how important it is that you have 100% uptime, then you should try to clarify this first - can save you a lot of hassle. Actually, you should have clarified this before even starting to create a cache DB. – Doc Brown Jul 10 '18 at 18:28
  • 5
    But for the technical problem: can't you mirror the data warehouse completely, in a 1:1 manner? Then you will never need "more data from the other group's database", since there isn't "more data". – Doc Brown Jul 10 '18 at 18:30
  • @DocBrown: Only if his team has access to everything, an unlikely security scenario in a corporate environment that uses technologies like Oracle databases and WCF services. – Robert Harvey Jul 10 '18 at 22:31
  • @RobertHarvey: I would be more interested in a reply from the OP, I guess the answer is "no", but the exact reason why they cannot at least duplicate the parts they have access to in a 1:1 manner would probably helpful for giving a sensible answer. – Doc Brown Jul 11 '18 at 5:48
  • Hey guys, sorry for the wait. @DocBrown As I said before, this cache DB and service was in place before I started here. I'm waiting on a reply from support from the other team on the uptime. We don't have access to everything. We only have read access, not even with schema-view. – JB06 Jul 11 '18 at 11:18
1

... an Oracle data warehouse that is managed by another group that contains some pretty critical information for the company to run smoothly. The issue is that they (apparently, haven't confirmed with anyone on their team yet) take this server down for long periods bi-weekly.

If the information "disappears" for "long periods" every other week, then I would suggest that it can't be that critical to the company.

Get the other Team to investigate Oracle's data replication technologies, like DataGuard (that's "DataGuard", the "free" one, and not "Active DataGuard" that you have to pay for). Armed with this, the other Team can create a copy of this "critical" database, updated either continually in [near] real time or periodically ("snapshot standby" are the Magic Words to look for). This copy can remain available all the time while they do whatever they do with the "master" database.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.