Re: databases and operating systems

2001-04-20 Thread Rolf Hopkins

Ok. Now you make more sense.  This is from my personal point of view.  In
general, I prefer speed, ease of use and ease of maintenance.  What I like
about mysql is that you can choose which features to build into it when
compiling.  For example, standard mysql does not come built with transaction
support and, as transactions tend to take up time, I prefer not to use it.
You don't have much of a choice in other database packages.  Sure mysql
lacks functionality, but that will come as the developers progress.

The other bells and whistles, that come with most other products like Oracle
 MSSQL server, aren't used very often and usually tend slow down queries,
whether they're used or not.

- Original Message -
From: "Ben Garvey" [EMAIL PROTECTED]
To: "Rolf Hopkins" [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Friday, April 20, 2001 13:43
Subject: Re: databases and operating systems


 Sorry for the topic if if is off, but there are more uses for databases
than
 just in PCs.  I don't mean writing an OS explicitly using/for databases
 (like PalmOS), but rather, what features would better support modern
 databases.

 Ben Garvey

 - Original Message -
 From: "Rolf Hopkins" [EMAIL PROTECTED]
 To: "Ben Garvey" [EMAIL PROTECTED]; [EMAIL PROTECTED]
 Sent: Thursday, April 19, 2001 11:43 PM
 Subject: Re: databases and operating systems


  This is rather off topic but for what it's worth, to me, it doesn't make
  much sense in gearing OSs more towards databases.  PCs do far more than
 just
  databases.
 
  - Original Message -
  From: "Ben Garvey" [EMAIL PROTECTED]
  To: [EMAIL PROTECTED]
  Sent: Friday, April 20, 2001 1:52
  Subject: databases and operating systems
 
 
   Hello, my name is Ben Garvey and I'm doing a research paper on whether
   operating systems should be rewritten to offer more support for
 databases.
  
   What type of operating system features could benefit database
  implementors?
  
   Thank you in advance.
  
   Ben Garvey
   American University
   202-332-6218
  
  
  
  
   -
   Before posting, please check:
  http://www.mysql.com/manual.php   (the manual)
  http://lists.mysql.com/   (the list archive)
  
   To request this thread, e-mail [EMAIL PROTECTED]
   To unsubscribe, e-mail
  [EMAIL PROTECTED]
   Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
 
 


 -
 Before posting, please check:
http://www.mysql.com/manual.php   (the manual)
http://lists.mysql.com/   (the list archive)

 To request this thread, e-mail [EMAIL PROTECTED]
 To unsubscribe, e-mail
[EMAIL PROTECTED]
 Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php


-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




Re: databases and operating systems

2001-04-20 Thread Heikki Tuuri

Ben,

the relation of databases and OS's is a question also mentioned in
Jim Gray's and Andreas Reuter's bool Transaction processing.
I have written the InnoDB table handler (= storage engine) under
MySQL. Let me think how operating systems could make database
implementation easier.

- Log-based file systems could take the role of recovery mechanism
in case of a crash. For it to be feasible, the file system should immediately
write a log to a safe place of any changes to files cached in the file
cache of the OS. I do not know if such database-like file systems exist.

- The file cache of the operating system could take the place of
the buffer pool of the database. This is actually done in MySQL because
MySQL caches the data of rows in the file cache of the OS. Only indexes
are cached in MySQL's own 'key cache'.

- The file system of the OS can do the storage of tables and indexes
into regular files. That is how MySQL actually works. In InnoDB
I decided to build my own file space management, where the database
takes care of space allocation in a 'tablespace' consisting of
one or more files.

- Many databases implement their own thread abstraction above
the processes or threads of an OS. The reason is that OS threads
use too much memory, or thread scheduling is slow in the OS if there
is alarge number of threads. MySQL uses OS threads or a user-space
library threads, and does not implement its own thread abstraction.
InnoDB engine has its own thread abstraction above OS threads.

There are many performance-related viewpoints to the above questions.
Generally the services of operating systems are not as highly optimized
code as what is found in databases, and database implementors have
written their own modules to get the best performance.

- A special detail is semaphore (like a mutex) implementation.
Datbase implementors have tradiitionally written their own
semaphores using a test-and-set machine instruction. It would be
better if an OS would provide such a fast semaphore operation in
a library. I looked at FreeBSD source code and found that a pthread
mutex there is still much more complex, and consequently slower than
a mutex I can write myself using a machine instruction. However, in Win NT
a 'CriticalSection' corresponding to a mutex is very fast, I think.
For portability it would be better to use OS mutexes.

Thus an OS could to some extent help the work of us database implementors.
But the services of the OS should then be written to be fast enough.

- Standardized interfaces is a very important property of an OS from
the database viewpoint. Databases use quite a rich set of OS services
and deviations from (Posix) standards in an OS cause quite a lot of
work in form of portability bugs.

Hope this helps your work.

Regards,

Heikki Tuuri
Innobase Oy



Ok. Now you make more sense.  This is from my personal point of view.  In
general, I prefer speed, ease of use and ease of maintenance.  What I like
about mysql is that you can choose which features to build into it when
compiling.  For example, standard mysql does not come built with transaction
support and, as transactions tend to take up time, I prefer not to use it.
You don't have much of a choice in other database packages.  Sure mysql
lacks functionality, but that will come as the developers progress.
The other bells and whistles, that come with most other products like Oracle
 MSSQL server, aren't used very often and usually tend slow down queries,
whether they're used or not.- Original Message -
From: "Ben Garvey" [EMAIL PROTECTED]
To: "Rolf Hopkins" [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Friday, April 20, 2001 13:43Subject: Re: databases and operating systems
 Sorry for the topic if if is off, but there are more uses for databasesthan
 just in PCs.  I don't mean writing an OS explicitly using/for databases
 (like PalmOS), but rather, what features would better support modern
 databases.
 Ben Garvey
 - Original Message -
 From: "Rolf Hopkins" [EMAIL PROTECTED]
 To: "Ben Garvey" [EMAIL PROTECTED]; [EMAIL PROTECTED]
 Sent: Thursday, April 19, 2001 11:43 PM
 Subject: Re: databases and operating systems

  This is rather off topic but for what it's worth, to me, it doesn't make
  much sense in gearing OSs more towards databases.  PCs do far more than
 just
  databases.  
 - Original Message -
  From: "Ben Garvey" [EMAIL PROTECTED]
  To: [EMAIL PROTECTED]  Sent: Friday, April 20, 2001 1:52
  Subject: databases and operating systems  
   Hello, my name is Ben Garvey and I'm doing a research paper on whether
   operating systems should be rewritten to offer more support for
 databases.  
   What type of operating system features could benefit database
  implementors?
  
   Thank you in advance.
  
   Ben Garvey
   American University   202-332-6218
   -
   Before posting, please check:
  http://

databases and operating systems

2001-04-19 Thread Ben Garvey

Hello, my name is Ben Garvey and I'm doing a research paper on whether
operating systems should be rewritten to offer more support for databases.

What type of operating system features could benefit database implementors?

Thank you in advance.

Ben Garvey
American University
202-332-6218




-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




Re: databases and operating systems

2001-04-19 Thread Rolf Hopkins

This is rather off topic but for what it's worth, to me, it doesn't make
much sense in gearing OSs more towards databases.  PCs do far more than just
databases.

- Original Message -
From: "Ben Garvey" [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Friday, April 20, 2001 1:52
Subject: databases and operating systems


 Hello, my name is Ben Garvey and I'm doing a research paper on whether
 operating systems should be rewritten to offer more support for databases.

 What type of operating system features could benefit database
implementors?

 Thank you in advance.

 Ben Garvey
 American University
 202-332-6218




 -
 Before posting, please check:
http://www.mysql.com/manual.php   (the manual)
http://lists.mysql.com/   (the list archive)

 To request this thread, e-mail [EMAIL PROTECTED]
 To unsubscribe, e-mail
[EMAIL PROTECTED]
 Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php


-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




Re: databases and operating systems

2001-04-19 Thread Ben Garvey

Sorry for the topic if if is off, but there are more uses for databases than
just in PCs.  I don't mean writing an OS explicitly using/for databases
(like PalmOS), but rather, what features would better support modern
databases.

Ben Garvey

- Original Message -
From: "Rolf Hopkins" [EMAIL PROTECTED]
To: "Ben Garvey" [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Thursday, April 19, 2001 11:43 PM
Subject: Re: databases and operating systems


 This is rather off topic but for what it's worth, to me, it doesn't make
 much sense in gearing OSs more towards databases.  PCs do far more than
just
 databases.

 - Original Message -
 From: "Ben Garvey" [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Sent: Friday, April 20, 2001 1:52
 Subject: databases and operating systems


  Hello, my name is Ben Garvey and I'm doing a research paper on whether
  operating systems should be rewritten to offer more support for
databases.
 
  What type of operating system features could benefit database
 implementors?
 
  Thank you in advance.
 
  Ben Garvey
  American University
  202-332-6218
 
 
 
 
  -
  Before posting, please check:
 http://www.mysql.com/manual.php   (the manual)
 http://lists.mysql.com/   (the list archive)
 
  To request this thread, e-mail [EMAIL PROTECTED]
  To unsubscribe, e-mail
 [EMAIL PROTECTED]
  Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php