Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: native Oracle-port on Linux -- what would it take?
S V (sv1_at_mindspring.com) wrote:
: Bjorn Borud <borud_at_guardian.no> wrote in article
: <m2wwh3x5bs.fsf_-__at_lucifer.guardian.no>...
: Linux is missing many features for any OS to be worth considering
: as a viable database platform.
: 1. Linux has no logical volumes layer.
Multiple device driver is capable of merging several physical devices in
one logical.
BTW, SCO OpenServer 3, does not support logical volumes too. What the
difference ? Oracle really does not need LV, it can span databases
on several disks.
: 2. Linux has no transaction-oriented filesystem.
SCO OpenServer 3 has no such filesystem too. Oracle has not much need for
this type of filesystem, because it uses data files of fixed size, so
system crash does not cause file size problem. All other data protection
is provided by Oracle.
: 3. Linux has no support for raw devices - hence NO even remote possibility
: to run Oracle Parallel Server.
What is raw device ? I think this is device than could be operated with
read()/write() and may be seek(). Block device supports mount(). Device
drivers may support both interfaces, so one device file could provice
characted and block interfaces simultaneously.
Linux disk devices are capable of both operations, so why You need
separate device files? Don't mount it and feed it to Oracle. The real
problem is that Linux possibly caches disk devices with character interface,
that may be dangerous, because Oracle believes that anything written on
raw device is on disk already. But this could be fixed.
: 4. Linux networking is flaky at best.
Is not more flaky than on early versions of SCO
: 5. Linux OS block size is what? 512 bytes? It would make even MS Access
: laugh and puke steam.
I think that mkfs can specify block size. Moreover driver could read
several blocks at once, so there will be no or little performance penalty.
: 6. Linux SMP is rudimentary and flaky at best.
May be or may be not. Sorry, I have no experience with SMP on linux or
other OS.
: 7. The same for multithreading.
Oracle versions for Unix do not use kernel threads at all. Oracle runs
several processes that are communicating through shared memory. Dispatcher
processes are selecting one of free server processes to run query. It is
something like Apache Web Server "multithreading". IMHO this is more robust
than threads, because only some part of process memory is shared.
Therefore it is more likely to crash one of server processes than entire
server.
: 8. Oracle requires efficient IPC and record-locking mechanisms. Linux
: cannot do
: record-locking at all, last time I checked. So Oracle would have to
: write its own
: code for that. Why would anyone sane want that?
Not true. System V IPC package on linux seems working ok. Oracle really
needs shared memory or semafores from this package. Record locking on files
using fcntl() works also, but I am not sure that Oracle needs them. I think
that Oracle locks are quite different from record lock in files supported by
OS. I think Oracle locks are implemented as semafores or something in shared
memory.
: In fact porting Oracle to Linux would require Oracle to write its own Linux
: almost
: from scratch.
No No No. Linux is much like other Unixes so Oracle should not totally rewrite (like for sucker's OS Windows NT). I think that Oracle is working good on linux using IBCS2 becouse of it does not require something extraordinary from OS. Oracle IS GREAT !
: ==> I don't see much (or rather _any) prospects for seeing Oracle on
: Linux.
May be, but for completely other reasons. Oracle products are costly. Linux is free. If somebody uses Linux because it is free, will it pay many $$$ for Oracle ? I think Oracle thinks that they could not earn money on linux port for this reason.
BTR
Timofey Kutergin
Received on Fri Dec 19 1997 - 00:00:00 CST