Archive for the 'Django' Category

DB2 on Mac

Antonio Cangiano September 19th, 2007

Python and DB2

We now have a working Python driver for DB2 which is currently undergoing internal testing. The driver is similar to the Ruby and PHP ones, which means that you get an advanced and very easy to use API. It also means that if you are confident with the Ruby driver, you will be able to use the Python one in no time.

Ruby:

require 'ibm_db'

conn = IBM_DB::connect(database, user, password)

if conn
  puts "Connection succeded."
  IBM_DB::close(conn)
else
  puts "Connection failed."
  puts IBM_DB::conn_errormsg
end



Python:

import ibm_db

conn = ibm_db.connect(database, user, password)

if conn:
    print "Connection succeeded."
    ibm_db.close(conn)
else:
    print "Connection failed."
    print ibm_db.conn_errormsg


We made it so that if you know one, you already know the other. These drivers are CLI wrappers that provide you with performance and stability. Also they don’t limit you to user data and are able to retrieve a good deal of metadata about your database. We’ll also provide a thin wrapper for those of you who intend to use a PEP 249 API. The next step, working on SQLAlchemy, has already started.

DB2 on Mac (no, really!)

macpro.pngWhen I first posted about our interest in Python/Django and DB2, the comment thread got hijacked by many people who asked for a Mac client in order to develop on Mac and deploy on Linux. Ask and you shall receive. I’ve promoted the idea of Django/SQLAlchemy/Python in IBM for a while now, and we are finally close to delivering the driver (with the adapter progressing at the same time too). Well, don’t take this as an official announcement, but Python wasn’t the only thing that I’ve been promoting for months within IBM. With the ever growing community of Ruby/Python hackers adopting Mac as their development platform of choice, I strongly believe that an investment in porting the great free version of DB2 to Mac is a very valid one.

I couldn’t talk about this for weeks, and it must be viewed as a rumor until IBM makes an official announcement, but we have been working on porting DB2 to Intel Mac. Not just the client, the whole package. This makes me a happy panda, no longer will a virtual machine be required to develop with DB2 on Rails on my Mac Book Pro. It’s a joy to see DB2 Express-C run on a Mac Pro (shown in picture) next to the other black boxes in the lab. Work is still in progress, but we should have a beta out there relatively soon (before winter kicks in). DB2 Express-C on Mac is intended for development purposes rather than production, this means that we expect you to develop on your shiny Mac but deploy on Linux or Windows. DB2 on Mac will be a beta product, but again it won’t just be a client runtime, it will be the full product and there is no reason why it shouldn’t be just as stable and efficient as the Linux and Windows versions.

Time to employee some of the newly acquired Cocoa-fu. I’m starting to feel that I could even learn Wasabi and IBM would still be able to let me use that skill in my day job. Awesome.

Python, Django and DB2 Status Update

Antonio Cangiano September 4th, 2007

python-logo.pngPython 3000’s first alpha release was made available last week, and as to be expected, it gathered a lot of interest from the development community. With Python on everyone’s lips, let’s talk about Python in this post as well.

Python and DB2

Back in March we gathered an overwhelming amount of feedback in regards to IBM’s interest in developing a reliable driver and adapter for Python and Django, just like we did for Ruby and RoR. We considered your feedback and took action. I’m glad to be able to “leak” some news to you: our team in the States has been working hard on an advanced driver whose initial development is about to be completed. A closed beta is expected to take place relatively soon, but not immediately.

The Python DB2 driver will be the stepping stone and we have decided to proceed with the creation of an adapter for SQLAlchemy first, and for the default Django ORM next. Enabling SQLAlchemy and DB2 means going further than just Django. It means automatically providing support for any framework that builds on top of it. The development of these adapters should not require too much time. Building a modern, fast and reliable driver was our number one priority and the most challenging part, but now that that component is almost complete, the rest should be smooth sailing from here on out.

Pythonistas’ reactions

In the last few weeks I’ve received many emails in regards to requests about Python and DB2. I have yet to finish replying to everyone, so I thought I would proceed with a public update. Some of these emails are very interesting because they come from very prepared programmers who are willing to help and have good ideas for creating plugins that exploit the unique features of DB2 like pureXML, DB2 Spatial Extender, and so on. Many people see the big potential of having DB2 working with Python, SQLAlchemy and Django, and are really looking forward to it.

The Rails community seems to be more oriented towards MySQL while the Django/Python one leans towards the historically more feature-rich PostgreSQL. I wonder if this difference explains the wider interest amongst pythonistas in seeing a best-selling, high-quality database like DB2 become available.

DB2 Express-C

As a remainder, for those of you who may not be in the loop, DB2 Express-C is an awesome free version of DB2 that doesn’t pose any limits on your database size, connections or users. You can run it on any server with up to 4GB of RAM and 4 CPU cores (the limit is in the license; the code is essentially the same as that of the more expensive versions). You also get native XML storage and querying, high performances and endless scalability. It won’t cost you a cent, but should you require it, you can optionally purchase one year support and get High Availability Disaster Recovery as well at a very competitive price per server.

There is a bigger surprise in the making, and this should be available in a month or so. However I’m absolutely not able to talk about it for the time being, so I’ll have to leave you hanging. As usual, it will be covered in this blog in due time, and it’s sure to please many people, so please feel free to subscribe to this blog by feed or by email if you haven’t done so already.

PlanetDB2.com and a couple of updates

Antonio Cangiano April 12th, 2007

Planet DB2The website PlanetDB2.com is a DB2 blog aggregator that is about to be launched in a few days. If you work with, or are interested in, DB2, you may want
to take a sneak peek and subscribe to the feed.

Everyone who blogs regularly about DB2 is welcome to add their feed, whether you are an IBMer or not, by just getting in touch with us at join [at] planetdb2.com.

I also have a quick update in regards to Python, Django and DB2. I’d like to thank everyone who took the time to contribute to the discussion. The amount of feedback received was very encouraging and it has been carefully collected and will
be taken into serious consideration. I’ll provide updates within this blog,
as soon as news comes up from the dedicated development team at IBM.

Lastly, since publishing the first Ruby Shootout, I’ve received many inquires in regards to a new test run. Testing is in progress and the results, which will include updated versions and new entries like XRuby, will be published relatively soon.

UPDATE (April 15, 2007): The stable version of Ubuntu 7.04 is about to be released. I think it’s worth waiting for a week in order to run the tests directly on this new version.

« Prev - Next »