If you remember the old Saturday Night Live skit by the baseball player, Oracle's been very, very good to me. I chose to work with databases and specifically Oracle right out of college, the 80s. It was a right career decision. It took me this far. I'll probably get to my retirement on it. That's a pretty sound technology. Had I picked some other technology to bet on, I probably would've had to go through several different learning iterations. The Oracle Database scales well. Every time there's a new version they add the features that you are wishing they would add or finding that you need. They stay ahead of the game. A lot of times you'll talk to one of their product managers and you'll say, "Well, partitioning is great, but if it only did this," and they'll say, "Oh, well if you sign an NDA, I'll tell you." Legitimately, they've already thought of it and they're developing it, and a lot of times if you get into the beta program, you can participate in the development of those features. That's really unique. It's much better than say a community preview edition like other vendors would do.
The beta program, you sign up for and you're very proactive with it and you have direct access to people who are working on the beta itself. You can help drive the product direction and that's kind of fun.
Improvements to My Organization:
Right now, one of the things I've been using a lot of is the In-Memory column store, which is a new Oracle 12c feature and it's gotten a lot of press. It's a great feature. If you remember a few years ago, Vertica and some other column oriented databases came out and it was all the hot rage. Now, lo and behold, starting in Oracle 12, I can have column oriented data storage and it makes my memory more efficient so I can fit more In-Memory. It makes the queries faster and it makes more queries faster because of the memory being more efficient, there are more queries that can benefit from the same amount of memory. It's literally you turn on a configuration parameter and you say alter database or table and say that that table was In-Memory, and you're done. The database does everything. It's very simple to use, very powerful, and it's exactly what people were asking for a few years ago.
The same is true, I attended some of the Oracle 12c R2 sort of pre-announcement sessions and while we're not allowed to talk about what we heard, I can say for a fact that some of the stuff that they talked about was exactly the same type of things where there's a feature that was introduced late in 11 or early in 12 and you thought, "Boy, I hope this is step one and they're going to do step two and step three." They have. Now it's not public yet, but it's very reassuring to know, again, they understand the database market and well enough to develop the features just in time.
Room for Improvement:
I know that a lot of people like Oracle Enterprise Manager and it's capable and it's great, but for a lot of tasks it's overkill. They came out with this new tool in 12, the OEM Express. I would like to see that tool persist. Oracle does on occasion have a bad habit of developing a tool, I'll go back to Oracle 8 on Windows, they had a really cool little GUI for developing DBA and then it was gone a version later. I'm hoping OEM Express sticks around. I'm not saying that it competes with OEM, but a lot of times, if all I'm doing is going in and adding some space to a table space or creating a user or do something simple and easy, that flash interface local on my web browser runs 100 times faster and it's easier to find stuff because there's less features in it, so you don't have to look as far.
Oracle stability's a funny thing. I know companies who do not have any database administrators. Stability in those shops is sporadic, and it should be. You need a database administrator to oversee your databases, just like you need a manager to oversee your people. It's an asset. In fact, your data's your most important asset. You sure as heck should have a specialist.
Oracle's a very powerful, robust, capable database. However, in order to be powerful, capable, and robust, it's a little complex. You need a database administrator. I'm not saying you have to hire a six figure guy, but you've got to have somebody. I know a lot of SQL server shops where they also don't work with database administrators. They can get away with it because the database isn't quite as industrial. I'm not going to build petabyte databases in SQL server but I am going to build it in Oracle. If I've got that size, it helps to have a DBA around.
You can start with the basic database, so the Oracle single instance. You can scale that pretty much to whatever size, symmetric, multi-processing processor you want to put it on. If that's not going to scale large enough for you, then you can do RAC clusters and you can build basically a little database mainframe. If you've got extra money to spend, I've got this wonderful solution called Exadata. I wish that Exadata was it, that that was the only thing Oracle had to offer. It's that far superior to the standard database, but it requires both hardware and software and there's special licensing. You can't build an Exadata at your own and just get the software. It is just standard Oracle with some hardware tricks. That's impressive, that you can make a database machine that outruns anything and it's still the standard database. They didn't have to really change it.
Rating: I would give it a nine. The only reason I don't give it a ten is because they do keep inventing and adding more stuff. The stuff that they told me yesterday and today that'll be available in the next release, let's say next year, not only is it stuff I wanted, it's stuff I didn't even dream of. I'll be excited. If I had those features today it'd be a ten, but they're on top of it.