Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:37910 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 91236 invoked from network); 26 May 2008 20:55:53 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 26 May 2008 20:55:53 -0000 Authentication-Results: pb1.pair.com smtp.mail=prf.kishorekumar@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=prf.kishorekumar@gmail.com; sender-id=pass; domainkeys=bad Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.46.28 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: prf.kishorekumar@gmail.com X-Host-Fingerprint: 74.125.46.28 yw-out-2324.google.com Received: from [74.125.46.28] ([74.125.46.28:39938] helo=yw-out-2324.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id AB/51-18531-6D32B384 for ; Mon, 26 May 2008 16:55:51 -0400 Received: by yw-out-2324.google.com with SMTP id 5so1118609ywb.83 for ; Mon, 26 May 2008 13:55:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type; bh=tioiNAlioyqvX7h37z+olu1G33WpUtsh9nA1shy5i38=; b=ES0gBeZMw7qYKCL1Rp2l3hYnck4VGDIBBTMPX1Z7HYAUfx7PwXlJomW7FBaNJO3EMvEk3P6jB5My+16mUiOZU6v0gLlqCRa6H8cnoslLQfPgzSu4806nQJ7GcyJ9SYMB5feKYx0MUihc4u5G/qXFnwNqRJxUDku+kfRKY389XB4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:mime-version:content-type; b=DJTs7Tg4RJDnh7tYTsE7bmdRLEt5YlLFwRy4RCSjF9ITTBBniv+tRZbWBmN+2ppWnG41W1QP9c2mL39dV3gM0qSrdZsueP6pbIb+B9AMuZn3LI6kHtsMu8OGp1TV+e6b+seVc3gVFc0rmfSlbkifYJ4IGLSaYRqPDlYMp9DRbCc= Received: by 10.150.78.41 with SMTP id a41mr78478ybb.181.1211835348005; Mon, 26 May 2008 13:55:48 -0700 (PDT) Received: by 10.151.105.15 with HTTP; Mon, 26 May 2008 13:55:47 -0700 (PDT) Message-ID: Date: Tue, 27 May 2008 02:25:47 +0530 To: "PHP Internals" MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_13976_23599218.1211835348008" Subject: Streaming Enabled MySQL Driver for PHP - Google Summer of Code 2008 - MySQL From: prf.kishorekumar@gmail.com ("KishoreKumar Bairi") ------=_Part_13976_23599218.1211835348008 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline Hello all, I'm KishoreKumar Bairi, Google Summer of Code Student for MySQL. Project: *Streaming Enabled MySQL Driver for PHP* Details: MyBS[1] is a storage engine used along with other engines to manage BLOB data efficiently. MyBS maintains a blob repository for each database to store the blobs belonging to that database. Each blob stored in this repository has a unique ID which can be used to reference that blob. MyBS has an embedded light weight webserver which interfaces the blob repository and client. BLOBs can be stored in this repository by sending HTTP PUT request to the embedded web server which returns the unique ID that can be stored in database to refer this blob later. To retrieve this BLOB, HTTP GET request for referencing URL is sent to the embedded web server. This task involves addition of two functions to 'mysqli'. 1. resource mysqli_get_blob ( mysqli link, string reference ) reference: is the string which used after database part in the referencing URL. It can be repository Id (or) "//". 2. string mysqli_put_blob ( mysqli link, string file_path, string mode , int length ) file_path: is the path of the file which is to be stored in a blob field. mode: mode specifier if the file should be read ASCII mode or binary mode. link: is the object representing the MySQL database connection. So, finally this is how the usage will be. Procedural style: 1. resource mysqli_get_blob ( mysqli link , string reference ) 2. string mysqli_put_blob (mysqli link ,string file_path, string mode , int length) Object Oriented style: (methods) mysqli { resource mysqli_get_blob ( string reference ) } mysqli { string mysqli_put_blob(string file_path, string mode , int length) } Looking forward for suggestions and comments. [1] http://www.blobstreaming.org/ Regards, KishoreKumar Bairi. ------=_Part_13976_23599218.1211835348008--