RES: RES: Delivery by Demand
OK, Shawn, nice tip. I really didn't know if it was actually performed by server or by client. But I'll study the MySQL client protocols. But it is still strange and needs investigation, because as I remember, I've submit a prove fire to the oracle server. The prove was: I've sent a really really really heavy query, containing several tables cartesian joins, resulting in too many data (billions of billions of records), and we've imaginate it could spend at least many hours. For my surprising, the server reponse was imediate, with a only first page. Do you think that the server continues the actual processing until the end, despite no more pages being requested anymore? My Regards FM -Mensagem original- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Enviada em: sexta-feira, 4 de novembro de 2005 02:06 Para: Fabricio Mota Cc: mysql@lists.mysql.com Assunto: Re: RES: Delivery by Demand Yes, it is a client-side behavior to the extent that the MySQL server does not page through data. It gets the complete results unless you ask for a LIMIT, then it stops building results after it meets the criteria of your LIMIT. I really do not know much about Oracle administration and communication protocols so I am just guessing.I believe that even your Oracle clients had to ask for data in pages instead of the full set. Are you sure your Oracle server was really holding those results for you and only delivering batches of 100 records? That seems very much like a client-side behavior that was just hard for you to notice. It could have been designed as part of the client library As I said, I just don't know but I know others on the list have had some extensive Oracle experience. Maybe one of them can weigh in on this With MySQL, the behavior you want to emulate is definitely something you control from the client-end either by using the LIMIT clause or by pulling down single rows in batches. You have to remember, though, that while the client is processing it's latest batch of rows that the server still holds onto a complete result set and has to maintain an open connection to your client. It's really in the best interest of performance for your client to spend as little time getting the data from the server. That means that you should only write queries that ask for the data you actually need and you should get the data out of the server as soon as possible. That way the server has more resources available to deal with other queries. Shawn Green Database Administrator Unimin Corporation - Spruce Pine Fabricio Mota [EMAIL PROTECTED] wrote on 11/03/2005 10:52:34 PM: Shawn, So are you telling me that it's a configuration in Client, but not in Server? FM -Mensagem original- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Enviada em: quarta-feira, 2 de novembro de 2005 17:37 Para: Fabricio Mota Cc: mysql@lists.mysql.com Assunto: Re: Delivery by Demand Fabricio Mota [EMAIL PROTECTED] wrote on 11/02/2005 10:23:46 AM: Hi all, In the past, I worked as a Oracle user. I've noted that in oracle (or maybe in that configuration), when we request a great amount of data, such like: select * from million_records_table It does not delivers the entire table at the first moment. It delivers a little amount of data - such like a single page containing about 100 records - and awaits the cursor request the Record No 101 for fetch the next set of data. In MySQL - at least, with the default configuration I have used - it does not happens. It delivers all the million of records existent in the table, inconditionally. I know that there is the clause LIMIT N, to limit the first N records existing in the query, but is there a way to warrant a delivery by demand, such Oracle does, without to have to alter the application's SQL code? Thank you I know that in the C-API (and others) there are two commands to retrieve records from the server. One is mysql_store_result() which will bring all of your results into your machine in a single pull. The second is mysql_use_result(). That command sets up a transfer process of pulling the rows from the server one at a time. If you need 100 rows of data, you issue 100 mysql_fetch_row() commands. You are responsible for storing the records for later re-use. Is that the flexibility you are looking for? http://dev.mysql.com/doc/refman/5.0/en/mysql-use-result.html Shawn Green Database Administrator Unimin Corporation - Spruce Pine
RES: Heikki: What will become of InnoDb once MySQL license runs out
There are several opinions... I would like to forecast the real intentions of Oracle... FM -Mensagem original- De: Ezra Taylor [mailto:[EMAIL PROTECTED] Enviada em: sexta-feira, 4 de novembro de 2005 23:46 Cc: mysql@lists.mysql.com Assunto: Re: Heikki: What will become of InnoDb once MySQL license runs out To Mysql users: Just to remind you all, Oracle is a business that expects to make money. As you all know, Mysql is a threat to the fat cats such as Oracle,DB2,MSSql and others. If you think Oracle is going to play fair with us then you will believe that crack will one day be a multi vitamin. For those you that don't know what crack is, it's a drug that will fuck your life up. Ezra Taylor On 11/4/05, Heikki Tuuri [EMAIL PROTECTED] wrote: Mike, - Original Message - From: mos [EMAIL PROTECTED] Newsgroups: mailing.database.myodbc Sent: Saturday, November 05, 2005 12:11 AM Subject: Heikki: What will become of InnoDb once MySQL license runs out Heikki, I am about to start a large MySQL project that requires transactions and I need to know if InnoDb will be around for MySQL after MySQL's license for InnoDb runs out in 2006. the current GPL version of MySQL/InnoDB will of course be available then by the very nature of the GPL license. The MySQL AB - Innobase Oy OEM agreement is about commercial non-GPL MySQL/InnoDB licenses. About that agreement I want to refer to the official press release of Oracle Corporation: http://www.oracle.com/innodb/index.html If yes, will you still be supporting it or will it be up to MySQL AB? I want to refer to the official press release where Charles Rozwat, Oracle's Executive Vice President in charge of Database and Middleware Technology says: Oracle intends to continue developing the InnoDB technology and expand our commitment to open source software. TIA Mike Regards, Heikki Tuuri Vice President, server technology Oracle Corporation -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED] -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED] -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
RES: Delivery by Demand
Shawn, So are you telling me that it's a configuration in Client, but not in Server? FM -Mensagem original- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Enviada em: quarta-feira, 2 de novembro de 2005 17:37 Para: Fabricio Mota Cc: mysql@lists.mysql.com Assunto: Re: Delivery by Demand Fabricio Mota [EMAIL PROTECTED] wrote on 11/02/2005 10:23:46 AM: Hi all, In the past, I worked as a Oracle user. I've noted that in oracle (or maybe in that configuration), when we request a great amount of data, such like: select * from million_records_table It does not delivers the entire table at the first moment. It delivers a little amount of data - such like a single page containing about 100 records - and awaits the cursor request the Record No 101 for fetch the next set of data. In MySQL - at least, with the default configuration I have used - it does not happens. It delivers all the million of records existent in the table, inconditionally. I know that there is the clause LIMIT N, to limit the first N records existing in the query, but is there a way to warrant a delivery by demand, such Oracle does, without to have to alter the application's SQL code? Thank you I know that in the C-API (and others) there are two commands to retrieve records from the server. One is mysql_store_result() which will bring all of your results into your machine in a single pull. The second is mysql_use_result(). That command sets up a transfer process of pulling the rows from the server one at a time. If you need 100 rows of data, you issue 100 mysql_fetch_row() commands. You are responsible for storing the records for later re-use. Is that the flexibility you are looking for? http://dev.mysql.com/doc/refman/5.0/en/mysql-use-result.html Shawn Green Database Administrator Unimin Corporation - Spruce Pine
Delivery by Demand
Hi all, In the past, I worked as a Oracle user. I've noted that in oracle (or maybe in that configuration), when we request a great amount of data, such like: select * from million_records_table It does not delivers the entire table at the first moment. It delivers a little amount of data - such like a single page containing about 100 records - and awaits the cursor request the Record No 101 for fetch the next set of data. In MySQL - at least, with the default configuration I have used - it does not happens. It delivers all the million of records existent in the table, inconditionally. I know that there is the clause LIMIT N, to limit the first N records existing in the query, but is there a way to warrant a delivery by demand, such Oracle does, without to have to alter the application's SQL code? Thank you
RES: Hi all
In true, I have a project to develop a new (revolutionary) engine for mySQL, and so increase many times applications performance, and reduce enterprises cost with hardware infraestruture. So I'm looking for peoples to help me to develop this project - or appoval by MySQL AB. My regards, Fabricio Mota -Mensagem original- De: Stewart Smith [mailto:[EMAIL PROTECTED] Enviada em: segunda-feira, 31 de outubro de 2005 05:08 Para: Fabricio Mota Cc: mysql@lists.mysql.com; [EMAIL PROTECTED]; [EMAIL PROTECTED] Assunto: Re: Hi all On Sun, 2005-10-30 at 00:14 -0300, Fabricio Mota wrote: Anybody has worked as a developer to MySQL Database Server features? If you mean people who work for MySQL hacking on Cluster, then yes, we exist. -- Stewart Smith, Software Engineer MySQL AB, www.mysql.com Office: +14082136540 Ext: 6616 VoIP: [EMAIL PROTECTED] Mobile: +61 4 3 8844 332 Jumpstart your cluster: http://www.mysql.com/consulting/packaged/cluster.html -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
RES: RES: Hi all
Ok, could you suggest me where I may find it with more occurrences? Another problem is: MySQL is a very big project, and I have no UML (or any abstraction) that could help me to understand it!! Can you tell me where could I find this kind of documentation? My Regards Fabricio Mota -Mensagem original- De: Stewart Smith [mailto:[EMAIL PROTECTED] Enviada em: segunda-feira, 31 de outubro de 2005 23:14 Para: Fabricio Mota Cc: mysql@lists.mysql.com; [EMAIL PROTECTED]; [EMAIL PROTECTED] Assunto: Re: RES: Hi all On Mon, 2005-10-31 at 21:16 -0300, Fabricio Mota wrote: In true, I have a project to develop a new (revolutionary) engine for mySQL, and so increase many times applications performance, and reduce enterprises cost with hardware infraestruture. So I'm looking for peoples to help me to develop this project - or appoval by MySQL AB. You certainly don't need anybody's permission. (distributing under a non-GPL license would). Best bet is to start hacking and ask when you get stuck. There are a couple of articles around on writing a storage engine - as well as the best doc ever - the code. (btw, this probably should be on internals, not mysql, cluster or plusplus list) -- Stewart Smith, Software Engineer MySQL AB, www.mysql.com Office: +14082136540 Ext: 6616 VoIP: [EMAIL PROTECTED] Mobile: +61 4 3 8844 332 Jumpstart your cluster: http://www.mysql.com/consulting/packaged/cluster.html -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
RES: RES: Hi all
Ok, David. Thank you, I'll take a good look on it! My Regards, Fabricio Mota -Mensagem original- De: Logan, David (SST - Adelaide) [mailto:[EMAIL PROTECTED] Enviada em: segunda-feira, 31 de outubro de 2005 23:36 Para: Fabricio Mota; Stewart Smith Cc: mysql@lists.mysql.com; [EMAIL PROTECTED]; [EMAIL PROTECTED] Assunto: RE: RES: Hi all Hi Fabricio, You can find a lot of information in the manual, more specifically at http://dev.mysql.com/doc/refman/5.0/en/example-storage-engine.html This would be a very good place to start. Otherwise, as suggested, ask questions on the internals list. Regards David Logan Database Administrator HP Managed Services 148 Frome Street, Adelaide 5000 Australia +61 8 8408 4273 - Work +61 417 268 665 - Mobile +61 8 8408 4259 - Fax -Original Message- From: Fabricio Mota [mailto:[EMAIL PROTECTED] Sent: Tuesday, 1 November 2005 12:54 PM To: Stewart Smith Cc: mysql@lists.mysql.com; [EMAIL PROTECTED]; [EMAIL PROTECTED] Subject: RES: RES: Hi all Ok, could you suggest me where I may find it with more occurrences? Another problem is: MySQL is a very big project, and I have no UML (or any abstraction) that could help me to understand it!! Can you tell me where could I find this kind of documentation? My Regards Fabricio Mota -Mensagem original- De: Stewart Smith [mailto:[EMAIL PROTECTED] Enviada em: segunda-feira, 31 de outubro de 2005 23:14 Para: Fabricio Mota Cc: mysql@lists.mysql.com; [EMAIL PROTECTED]; [EMAIL PROTECTED] Assunto: Re: RES: Hi all On Mon, 2005-10-31 at 21:16 -0300, Fabricio Mota wrote: In true, I have a project to develop a new (revolutionary) engine for mySQL, and so increase many times applications performance, and reduce enterprises cost with hardware infraestruture. So I'm looking for peoples to help me to develop this project - or appoval by MySQL AB. You certainly don't need anybody's permission. (distributing under a non-GPL license would). Best bet is to start hacking and ask when you get stuck. There are a couple of articles around on writing a storage engine - as well as the best doc ever - the code. (btw, this probably should be on internals, not mysql, cluster or plusplus list) -- Stewart Smith, Software Engineer MySQL AB, www.mysql.com Office: +14082136540 Ext: 6616 VoIP: [EMAIL PROTECTED] Mobile: +61 4 3 8844 332 Jumpstart your cluster: http://www.mysql.com/consulting/packaged/cluster.html -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED] -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Hi all
Hi all, Anybody has worked as a developer to MySQL Database Server features? Thank you Fabricio Mota -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]