What is Holding SAP-DB Back? 457
Derek Neighbors queries: "The current story about MySQL 4.0 has erupted into a Postgres vs. MySQL debate. We at GNU Enterprise, who have used about all Free and Propietary databases, would like to know why exactly people arent using SAP-DB? It clearly is on par with Oracle, is GPL and frankly has an awesome support team in SAP AG. There was a PG vs SAP-DB recently. Someone else mentioned that you can get CDROMs for free. So again the question is 'What exactly is hindering a wider acceptance of SAP-DB in Free/Open Software projects?'"
Why doesn't SAP use it? (Score:3, Insightful)
Re:Why doesn't SAP use it? (Score:1, Insightful)
Not in BSD ports tree. (Score:5, Insightful)
Subject says it all. Probably also goes for Linux, (but the argument there would probably be more
"doesn't comes (integrated) with the distribution"
If something gets included with distributions, it spreads much faster
Documentation (Score:3, Insightful)
It doesn't exist. The bottom line is that most websites and the like don't need all the features of Oracle. In fact, they don't even need all the features of MySQL or PostgreSQL. Most of them could probably run fine on DBASE. So, the fact that SAP-DB has sixteen billion enterprise features doesn't really make a difference. Combine this with a total lack of third-party documentation for SAP-DB, and it really makes sense to stick with the "standards."
Incidentally, another problem is that, when I develop a web app, I know I can easily find hosting on PostgreSQL (my preferred DB). What hosting providers run SAP-DB? The bottom line is that most web apps run on hosted servers that often don't allow people to run their own DB engines, so this is a big issue.
Applications (Score:5, Insightful)
Unless you are a software genius, the sensible choice is the one with most support in the community. Think perl, mysql.
This creates a network effect that your expertise gets added to the pool of knowledge and thus that pool becomes even more inviting.
Taken to the next step, you see fine languages like Python and fine databases like PostgreSQL fall behind in terms of support because their pool of expertise comes from a smaller number of users. But they do fine because there are so many developers out there who love them. These tools thrive with a a certain "less popular but more excellent" feel.
Sadly, if a third player comes along some years later, then they will have a very hard time getting a following big enough to generate the pool of expertise that leads to having lots of applications. Think Ruby, SAP-DB.
And its applications that determine popularity.
That is the short answer to the question - waht is holding SAP-DB back. Excellence isn't everything - being first on the scene gives huge advantages. And they were nowhere near first...
Patrick
PostgreSQL is truly free (as in BSD) (Score:3, Insightful)
As far as I know, PostgreSQL is the only truly free database (in this licensing sense).
But I could be wrong -- I'm standing by to be corrected...
the actual question (Score:3, Insightful)
one fine example of this was the boss conversation thread (this one [slashdot.org]).
the point was, its an open source database, why aren't people using it INSTEAD OF PG/MYSQL.
i tend to agree with the complexity side of things as about 3 years ago i tried getting it up and running - without much success. although, friends of mine who know pretty much nothing about unix are running a web solution on apache jakarta (jsp+servlets) using SAPDB as the databaase which they installed from RPMs. they sing its praises all day long.
maybe its the communities fear of a traditionally large $$ corporation giving away its technology?
Re:SAP DB vs. Oracle (Score:3, Insightful)
time (Score:5, Insightful)
The originator of the thread should learn that technology doesn't change overnight, and certainly not without the kind of marketing budgets behind Java & C#. Change takes time.
As another answer, I'd ask what is the driving point behind SAPDB? MySQL has/had noteriety for being a very simple system; Postgres had noteriety for advanced research into ORDBMS'es as well as coming out of a university lab that produced two very successful commercial DBs in the past. What's the big focus with SAPDB? All I know so far is that it was an in-house thing that worked for SAP. No idea what that's supposed to mean to me. Maybe someone should answer that first.
Umm... (Score:3, Insightful)
PostgreSQL does transactions, hot backups etc, would you consider switching to it?
Why we *are* using it (Score:4, Insightful)
We previously used Postgres for a long time but had two problems with it at that time:
- Postgres required daily database reorganizing (VACUUM) which was a problem in a 24/7 availability scenario
- Postgres didn't scale well beyond a few hundred concurrent database connections on SMP systems
This caused us to look for an alternative. After extensive testing with SAP-DB we decided to start using it on our production systems.
On our production systems we use both Red Hat Linux 7.2 and Solaris 8. On both setups SAP-DB has been rock-solid.
Some of our systems usually have 1000+ concurrent database connections, with all of those doing inserts and updates all the time. SAP-DB has shown that it is able to handle this kind of load without any performance or availability problems and without requiring any database maintenance.
If you are looking for a reliable enterprise scale GPL database, look no further: you'll love SAP-DB.
Main drawbacks for being a succesfull OSS project:
- source code structure takes getting used to
- database setup is quite straightforward, but documentation on getting it to work over ODBC etc. could be better, so new users would have an easier start
Last but not least, online support by the developers from SAP AG is excellent.
Jeroen Boomgaardt
Re:sapdb is too complicated - interbase/firebird. (Score:3, Insightful)
However, since it is damm hard to use and build I do not play around with it. As an example look how easy it is to build MySQL, Apache and PHP. DEAD SIMPLE. And look what are the biggest tools LAMP (Linux, Apache, MySQL and PHP) or WAMP (Windows, Apache, MySQL and PHP).
Too complicated and _RUNS AS ROOT_ (Score:2, Insightful)
Both the DBM server and the Replication Manager server must run as user root. The files instdbmsrv and instlserver set the appropriate permissions every time these programs are built.
Seems like as good a reason as any not to use it. What daemons run as root any more? Especially ones that move large amounts of data around like RDBMS's.
We use Postgres or BerkeleyDB.
-- Azaroth
On par with PostgreSQL? (-: (Score:4, Insightful)
If PostgreSQL could magically don an Oracular CIO-level reputation, the bottom half - or more - of the Oracle market would evapourate in a few short years.
Re:Ease of Setup and Use are the most critical... (Score:3, Insightful)
And that is exactly why MS is around. Any moron (nothing personal mind you, just a generality) can set up a MS SQL database engine. Or for that matter, DNS, mail, etc.
Why should you need to know the things Oracle (or Postgress or MySql) asks you to? Because you need to know what the f*ck you are doing if you are going to manage any database that is important. How many disks should you use? Which data sets go on which disk? How about indexes? What ports should I use and why should I not use the defaults? Where are the default passwords? Why should my commit files be on different disks from my data and indexes?? Why do I need more than one copy of the parameter or control file?
If someone doesn't know the answer to the above questions, then they have no business calling themselves a DBA, or installing a real database that someone else uses or depends on.
Or, in other words, just because you can start a car doesn't mean you get to drive on the freeway.....you have to learn how to use it without killing anyone first.
Re:Wrong - you dont work in an enterprise-level sh (Score:4, Insightful)
the problems with sapdb (Score:3, Insightful)
i do find free software db's amusing though. they tend to be easier to install and manage then the closed source alternatives.
SAP DB is a dead end (Score:2, Insightful)
Soon, the Internet came and everybody at SAP started loving Java. But the JDBC driver of ADABAS was (and still is) a big mess. The developers at SAP had spent their time fixing Software AG's bugs. Now, they had a stable database but no connection to their new applications
Incidentally, it was fashionable at that time to "give something away for free" if you were a big IT company so SAP decided to open-source SAP DB because it was no threat to their business and they had failed to replace Oracle etc. anyway.
SAP DB is a very good RDBMS and SAP is supporting it. But it just came too late to replace Oracle et.al. at SAP's customers and it came too late to compete against MySQL and Postgres on the "open source market".
However, since it's almost identical to earlier ADABAS-D versions, it's very popular among ADABAS users since Software AG changed their licensing policy for ADABAS-D
Rapunzel
Support (Score:2, Insightful)
Personally, it's no good to me if it has no Pascal, Python or PHP (PPP) support under _both_ Win32 and *nix, or if I can't guarantee it'll be updated in a timely fashion (bug fixes, compatibility tweaks for new OS revisions, etc) after I go to significant trouble to install it.
Why not? Why in Hell? Let me count the reasons... (Score:2, Insightful)
I've been the DBA for a company using SAP-DB as a bundled DB for the past 4 months. Let me outline the major reasons I'll avoid it in the future.
One, in the first week I was there my machine crashed. When it came back up the SAP database was corrupted. The PostgreSQL database running on the same box came back up fine. Not my idea of how a database should work.
Two, the command line sucks. This is a real problem for administrators and developers trying to understand how their queries are going to run. Every SQL query you want to run has to be prefaced with sql_execute and there's no multi-line buffer support. Putting a semi-colon on the end of your query (which is standard practice in Oracle or PG) causes a syntax error. Frustrating as hell.
Three, programmability is pathetic. No before triggers, only after triggers. No docs whatsoever on the procedural language extentions that would mirror PL/SQL or PL/pgSQL for example. Actually, they're there, but buried in the Reference Manual along with all the other SQL commands so you have a hell of a time getting your head into it. Some might say putting logic in the database is a design flaw. I have two words for you: "Oracle Financials". Billions in revenue from an application written almost entirely in stored procs. Encapsulation is a joke if you think it means putting logic in your Java. It's only going to protect data shared across applications properly when it's inside the DB in the form of rules, triggers, constraints, etc. First time someone calls up DBVisualizer or something and screws your data you'll understand. Scalability can come from distributed database instances just as easily as it comes from bloated application servers.
Four, no support now, nor any planned for making external calls ala Oracle or PostgreSQL so you can have triggers/procedures call programs outside the database etc. Think about all the noise about Message-Oriented-Middleware and then imagine that your database triggers could simply call external procs. Now put a trigger on your shipment table so that any time a shipment is updated it calls an external proc to email the parties involved in the shipment a status update. Saves a hell of a lot of code to encapsulate that at the DB since you *know* it can't be called unless the data was successfully updated. But you'll never be able to do it in SAPDB. Both Oracle and PostgreSQL support this today.
Five, creation, management, and maintenance are 10x what they are for PostgreSQL. You have to spend a lot of time trying to figure out what parameters to use for your database creation. Then you have to spend a lot of time watching over devspace allocations or you'll wake up to find the database hung cause you had somebody fill up the logspace. Same problem can happen on PG if you fill up the disk, but you probably already have sysad jobs checking for that in a production environment anyway.
Six, support is available if you think waiting for the folks in Germany to wake up and respond to your email is "timely". I don't. Meanwhile the PostgreSQL development team never seems to sleep. Those guys are always online, and always ready to respond to well stated questions.
In summary, I recently had to propose a database to one of my clients moving a 24x7 shop off of Oracle8i. I said PostgreSQL because it a) didn't corrupt data, b) had serious docs and 5 separate books out (of which you have to purchase at least two to get full coverage but at least they exist), c) had tools that were easily accessible and UNIX-friendly, d) was a breeze to administer, and e) had an active developer community that was 100x the size of the SAP community in case we needed help.
Why not SAPDB? More accurate to ask Why In Hell?
ss
Open source "free" databases are too costly !!! (Score:2, Insightful)
All this having been said, it is quite possible to have a very good business solution which is built on top of an open source database engine but you had better know good and well what you're getting into and know what the limitations and challenges are BEFORE you get started. This in itself could become a major "research project." What's "tried and true" may not work for you. Looking for a "free" open source database engine? "Buyer beware." "You get what you pay for..." one way or another.
Re:I never heard of SAP-DB... (Score:3, Insightful)
We are talking about SAP-DB, not SAP, the ERP....
Why, then, did this "America - The Republic that voted to become a Totalitarianism. [sic]" post earn a "Score:4, Interesting?"
SAP-DB and SAP are two totally different topics.
Re:Wrong - you dont work in an enterprise-level sh (Score:3, Insightful)
You are right about their products being overkill for most companies out there. I've called Oracle knowing exactly what license I need. Before my conversation is over they've always tried to change my requirements and sell me more than I need. They've even suggested I change my server platform to Linux so I can free up some money for buying their additional stuff. If this continues to be their practice, other solutions, maybe even open source might be an alternative for me in the future. But I can see where companies can get tricked into getting more than they need and end up with overkill for a simple solution.
Here's why (Score:3, Insightful)
I have since got a more powerful machine with enough memory to at least try it out. When I've got a spare moment, I'll have another look at it. Spare moments are not exactly thick on the ground right now, so goodness only knows when that will happen.
Re:What SAP doesn't want you to know... (Score:1, Insightful)