?

Log in

No account? Create an account

Web Service, MySQL, myhttp_engine, you expected this right?

« previous entry | next entry »
Apr. 11th, 2007 | 04:37 pm

About three years ago I implemented the myhttp engine. It is one of about three engines I wrote for 4.1 that I never made public.

If you have seen the example I gave at Google a couple of years ago, ha_giggle, this is the engine that it was based on (and it was the base for Mark's AWS Engine as well). Its a very basic engine that implements SELECT, INSERT, and DELETE... or as we call them in the web sphere, PUT, GET, and DELETE.

Just as an example you can do the following:

mysql> CREATE TABLE `d` (`a` varchar(125), b text, primary key(a)) ENGINE=HTTP DEFAULT CHARSET=latin1 CONNECTION="http://en.wikipedia.org/wiki/";

What can you do from this? You can SELECT pages from wikipedia :)

For INSERT to work you need a webserver that support PUT (and of course DELETE for DELETE). There is an Apache module for 1.3 but none exists for the 2.X servers. I've got a hacked up Apache module for this that I wrote years ago, but I would need to clean it up a lot before I would make it public.

You can find the announcement for it here:
http://tangent.org/index.pl?node_id=528

And you can download it from:
http://download.tangent.org/myhttp_engine-0.2.tar.gz

If you find this sort of thing interesting I am teaching a three hour tutorial at the MySQL User's Conference in a couple of weeks, and I am doing a shorter 45 minute session on the very basics covering our pluggable API . More information here:

Writing Your Own Storage Engine
Understanding MySQL's Pluggable Engine AP

Link | Leave a comment | Share

Comments {2}

Philip Neustrom

(no subject)

from: codetoad
date: Apr. 17th, 2007 03:31 am (UTC)
Link

Clever hack! :)

Have you read about that REST DB project?

Reply | Thread

Brian "Krow" Aker

(no subject)

from: krow
date: Apr. 18th, 2007 07:07 am (UTC)
Link

Thank you.

Have a URL to it?

Reply | Parent | Thread