Re: databases and operating systems
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
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
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
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
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