Archive for the ‘cloud computing’ Category

What VMware’s Cloud Foundry announcement is about

Апрель 13th, 2011

I chatted today about VMware's Cloud Foundry with Roger Bodamer, the EVP of products and technology at 10Gen. 10Gen's MongoDB is one of three back-ends (along with MySQL and Redis) supported from the start by Cloud Foundry.

If I understand Cloud Foundry and VMware's declared "Open PaaS" strategy, it should fill a gap in services. Suppose you are a developer who wants to loosen the bonds between your programs and the hardware they run on, for the sake of flexibility, fast ramp-up, or cost savings. Your choices are:

  • An IaaS (Infrastructure as a Service) product, which hands you an emulation of bare metal where you run an appliance (which you may need to build up yourself) combining an operating system, application, and related services such as DNS, firewall, and a database.

    You can implement IaaS on your own hardware using a virtualization solution such as VMware's products, Azure, Eucalyptus, or RPM. Alternatively, you can rent space on a service such as Amazon's EC2 or Rackspace.

  • A PaaS (Platform as a Service) product, which operates at a much higher level. A vendor such as handles all the back-end services and just exposes an API to which you program.

By now, the popular APIs for IaaS have been satisfactorily emulated so that you can move your application fairly easily from one vendor to another. Some APIs, notably OpenStack, were designed explicitly to eliminate the friction of moving an app and increase the competition in the IaaS space.

Until now, the PaaS situation was much more closed. VMware claims to do for PaaS what Eucalyptus and OpenStack want to do for IaaS. Vmware has a conventional cloud service called Cloud Foundry, but will offer the code under an open source license. Right Scale has already announced that you can use it to run a Cloud Foundry application on EC2. And a large site could run Cloud Foundry on its own hardware, just as it runs VMware.

Cloud Foundry is aggressively open middleware, offering a flexible way to administer applications with a variety of options on the top and bottom. As mentioned already, you can interact with MongoDB, MySQL, or Redis as your storage. (However, you have to use the particular API offered by each back-end; there is no common Cloud Foundry interface that can be translated to the chosen back end.) You can use Spring, Rails, or Node.js as your programming environment.

So open source Cloud Foundry may prove to be a step toward more openness in the cloud arena, as many people call for and I analyzed in a series of articles last year. VMware will, if the gamble pays off, gain more customers by hedging against lock-in and will sell its tools to those who host PaaS on their own servers. The success of the effort will depend on the robustness of the solution, ease of management, and the rate of adoption by programmers and sites.


PlanetMySQL Voting: Vote UP / Vote DOWN

Open Source Cloud Computing Training at Scale 9x

Февраль 23rd, 2011

Scale 9x This Friday at SCaLE 9x in Los Angeles, CA there will be a special build an open source cloud day teaching users how to use technologies from Cloud.com, OpenStack, Opscode and Zenoss to deploy, configure, manage and monitor infrastructure-as-a-service using open source software.

Here’s an overview of the program:

“Build a Cloud Day” will be dedicated to teaching users how to build and manage a cloud computing environment using free and open source software. The program is designed to expose attendees to the concepts and best practices around deploying cloud computing infrastructure. Attendees should expect to learn how to deploy a cloud computing environment using Cloudstack CE. In addition Build a Cloud Day attendees will learn about tools( Opscode Chef and Zenoss Core) that can be used to handle the dynamics of a cloud computing environment including automatic provisioning and configuration and monitoring.


9:00 – 9:15: Welcome – Mark Hinkle, VP of Community, Cloud.com

We’ll kick off the day reviewing the program with attendees and gathering information so we can tailor the program to best address the needs and experience level of the audience.


9:15 – 11:15: Build Your Private Cloud – Cloud.com

Cloud.com - Open Source Cloud ComputingUsing CloudStack Community Edition (CE), free and open source cloud computing software to build a private cloud. During the training attendees will be instructed on how to install Cloudstack CE to manage virtual infrastructure in a private cloud computing configuration. At the conclusion of the Build a Private section users will have the knowledge needed to create a simple private cloud network.

Cloudstack CE is an open source Infrastructure-as-a-Service (IaaS) software platform available under the GPLv3 license, which enables users to build, manage and deploy compute cloud environments. The community edition is based on the latest, leading edge features and bits that the Cloud.com team of engineers are working on and is supported by both our engineers and our open source community.


11:15-11:45: Openstack – Rackspace

OpenstackOpenStack Deployment and Integration Engineer Jordan Rinke will give a brief overview of the Openstack project.

OpenStack is a collection of open source technologies delivering a
massively scalable cloud operating system. OpenStack is currently
developing two interrelated projects: OpenStack Compute and OpenStack Object Storage.
OpenStack Compute is software to provision and manage large groups of
virtual private servers, and OpenStack Object Storage is software for
creating redundant, scalable object storage using clusters of commodity
servers to store terabytes or even petabytes of data. OpenStack is sponsored by Rackspace, a leader in web hosting and managed infrastructure.


11:45 – 12:45: Lunch – Catered

We will bring in a simple catered lunch (We’ll do our best to accomadate all dietary restrictions).


12:45 – 2:45: Automatic Configuration of Your Cloud – Opscode

Opscode - Open Source Configuration Management

This training section will cover deploying cloud infrastructure automatically using Opscode Chef. We will be cover installation basics of Chef clients and working with a Chef server. Other topics will include: creating Chef repositories, writing cookbooks and advanced uses of the command line utility Knife.

Chef is a systems integration framework, built to bring the benefits of automated configuration management to your entire infrastructure. With Chef you can:

  • Manage your servers by writing code, not by running commands.
  • Dynamically integrate your applications, databases and other infrastructure.
  • Easily configure applications that require knowledge about your entire infrastructure (“What systems are running my application?”, “What is the current master database server?”)

3:00 – 5:00: Monitoring Your Cloud – Zenoss

Zenoss Open Source IT ManagementA representative from the Zenoss Core project will provide training on how to monitor a cloud computing environment. The presentation will give an overview of the Zenoss Core management platform. Attendees will also learn how to install Zenoss Core, add devices and send alerts based on conditions within your cloud computing infrastructure.

Zenoss Core is an open source IT monitoring product that delivers the functionality to effectively manage the configuration, health, performance of networks, servers and applications through a single, integrated software package.

All devices in the environment can be modeled – networks, servers, software, and applications – as well as custom devices such as power supplies and temperature sensors. The model provides logical and physical grouping allowing you to map devices to business systems, locations, and responsible people. The model is populated by the auto-discovery process, supplemented by the web services API, XML import/export, or manual user input.Collections of monitoring templates are called ZenPacks, and more than 100 are available.

5:00 -5:10 Special Guest – Arista Networks

Cloud architectures have changed the design requirements for high-performance networking infrastructure and a 100% Linux based, fully extensible networking solution can bring your Cloud to the next level. Arista Networks gives a 10-minute overview of the EOS Extensible Operating Systems and reviews some of the tricks of the trade that can make deploying, managing and maintaining a best-in-class network infrastructure easier than ever before.

Technorati Tags: , , , ,


PlanetMySQL Voting: Vote UP / Vote DOWN

CAOS Theory Podcast 2010.12.10

Декабрь 11th, 2010

Topics for this podcast:

*Oracle, Java, the Apache Software Foundation and open source
*An update on some open source database and data management players
*CorraTech grows with support for open source application alternatives
*Red Hat-Makara acquisition analysis and impact
*Linux kernel report shows strong support, but what now for Novell?

iTunes or direct download (29:31, 5.1MB)


PlanetMySQL Voting: Vote UP / Vote DOWN

Cloud Challenges for Databases Series: Distributed Environment

Ноябрь 17th, 2010

Setting up a database on a cloud environment can be a challengeWhen it comes to cloud computing, people want to command nearly endless resources while still being able to deploy, run and consume a distributed solution anywhere and anytime. The reality, however, is not that simple.

Cloud computing relies on the interconnection of resources. Network latency usually plays a critical role in the application flow from the front end, through the middle tier to the database and all the way back again.

Setting mobile access aside for the sake of this discussion, the performance one would get would depend on the proximity to the cloud entry point (datacenter). For example, if your SaaS application is deployed in the Amazon EC2 West Availability Zone, users on the East Coast would not get the same level of performance as those on the West Coast. That’s reality at work – no bending of physical laws.

One way to work around this issue is to deploy the application in several geographical locations (in this case East and West Coasts) so that the majority of users closer to each location will enjoy better performance.

Pursuing this solution assumes a couple key architectural and configuration considerations:

  1. The application is stateless and therefore agnostic of the servers that are actually active in the flow.
  2. The database can be replicated to several locations.
  3. The database’s replicas can operate in multi-master mode.

Running a database with multiple replicas is usually done using a single master that ships updates to several passive copies. The passive copies can be used to offload read operations, but not writes.

Regardless of the exact replication method, failing over (and ultimately back again) from master to a stand-by passive node takes time and can be painful. And if you need to have your database support heavy-duty online transaction processing that entails both reads and writes simultaneously, in several locations — that’s where it gets interesting.

Xeround addressed this specific challenge early on when we designed our solution as a subscriber database management system for telecoms. The very nature of the solution had to be distributed, serving roaming users in multiple locations — a core GSM function. Users would use and access the nearest database.

After moving to the cloud, we refreshed this core capability and applied the same principles to multiple copies of the same database that span multiple locations. In fact, since our core technology allows us to effectively and transparently distribute the database across multiple nodes, it is not really an issue if the same data is spread across multiple nodes or locations – the basic logic remains the same.

At this point, we’re often asked about the “CAP Theorem.” While it’s true that we can’t defy the laws of physics, we can certainly track, manage and synchronize multiple copies of the database and clear conflicts as and where applicable.

To do this, we keep a transaction log constantly updated in the same way we write transactions to multiple replicas. We organically provide this service out of the gate to ensure high availability. We’ve dubbed this concept “Active Global”, because groups of geographically-dispersed clusters of MySQL are accessed and managed locally while they’re synchronized with a top-level, global logic layer. Active Global ensures for near real-time “clearance” anytime, anywhere.

Read more about the challenges databases face when running on a cloud environment on our Cloud Challenges for Databases Series.


Filed under: Cloud Challenges for Databases Series, Cloud Computing, Databases
PlanetMySQL Voting: Vote UP / Vote DOWN

The 4 Things You Should Know When Designing Your Database for the Cloud

Ноябрь 16th, 2010

In his recent column, CNET’s Dave Rosenberg asks “Are databases in the cloud really all that different?”. The short answer: Yes, They ARE!

High Availability and Scalability for MySQL Database on the CloudAddressing Rosenberg’s point, I described the 4 key issues every system architect should take into account when designing their database for the cloud — and why achieving them on a Cloud environment might be more complex, tedious to manage, and way more expensive than you might think.

Basically, you need:

  1. Replicable, high-availability set-up - because the cloud is an unstable, unpredictable, environment.
  2. Database that scales elastically - and scaling out by adding nodes is harder on a cloud infrastructure.
  3. Distributed databases – which require building the logic to handle conflicts, network and latency problems.
  4. True Multi-tenancy - And not a simple standard SQL database installed in multiple copies on the same virtual machine – which can cause more headaches and management overhead to keep running.

This is all hard work – we know..

In his review, Rosenberg also describes why relational databases are here to stay, and why NoSQL isn’t necessarily the answer for your cloud concerns.

At Xeround, we’ve always felt the answer lies in making SQL Cloud-able – for REAL! Our technology for managing data in the cloud provides both the transactional and query capabilities of relational databases, along with the simplicity and scalability as of NoSQL data stores.

Xeround SQL Database, offered for both public clouds (IaaS) and private clouds, was designed specifically for the cloud, to give you multi-tenancy, high-availability, auto-scaling and self-healing – all without being bogged down by the development, management and expenses overhead.

If you haven’t tried us out yet- sign up for the private beta and check it out for yourself!

You can read more on CNET’s Are databases in the cloud really all that different?



Filed under: Availability, Cloud Computing, Databases, News & Press Mentions, NoSQL, Scalability, SQL
PlanetMySQL Voting: Vote UP / Vote DOWN

CAOS Theory Podcast 2010.11.12

Ноябрь 13th, 2010

Topics for this podcast:

*Our latest CAOS Special Report – Control and Community
*Red Hat releases RHEL 6
*Symbian and Oracle highlight community challenges
*The latest on government adoption of OSS from GOSCON
*Open core issue continues, now with Linux and evil twins

iTunes or direct download (31:02, 8.5MB)


PlanetMySQL Voting: Vote UP / Vote DOWN

Four short links: 26 October 2010

Октябрь 26th, 2010

  1. 12 Months with MongoDB (Worknik) -- every type of retrieval got faster than their old MySQL store, and there are some other benefits too. They note that the admin tools aren't really there for MongoDB, so "there is a blurry hand-off between IT Ops and Engineering." (via Hacker News)
  2. Dawn of a New Day -- Ray Ozzie's farewell note to Microsoft. Clear definition of the challenges to come: At first blush, this world of continuous services and connected devices doesn’t seem very different than today. But those who build, deploy and manage today’s websites understand viscerally that fielding a truly continuous service is incredibly difficult and is only achieved by the most sophisticated high-scale consumer websites. And those who build and deploy application fabrics targeting connected devices understand how challenging it can be to simply & reliably just ‘sync’ or ‘stream’. To achieve these seemingly simple objectives will require dramatic innovation in human interface, hardware, software and services. (via Tim O'Reilly on Twitter)
  3. A Civic Hacktivism Abecedary -- good ideas matched with exquisite quotes and language. My favourite: Kick at the darkness until it bleeds daylight. (via Francis Irving on Twitter)
  4. UI Guidelines for Mobile and Web Programming -- collection of pointers to official UI guidelines from Nokia, Apple, Microsoft, MeeGo, and more.


PlanetMySQL Voting: Vote UP / Vote DOWN

Open source in the clouds and in the debates

Сентябрь 8th, 2010

We continue to see more evidence of the themes we discuss in our latest CAOS special report, Seeding the Clouds, which examines the open source software used in cloud computing, the vendors backing open source, the cloud providers using it and the impact on the industry.

First, as usual, we are seeing consistencies between our own research — which indicates open source is a huge part of today’s cloud computing offerings from major providers like Amazon, Google, Rackspace, Terremark and VMware — and that of code analysis and management vendor Black Duck. In its analysis of code that runs the cloud, Black Duck also found a preponderance of open source pieces, in many cases the same projects we profile in our report.

Indeed, open source software is an important part of the infrastructure, data and application layers of today’s cloud computing stacks with significant use of Linux, open source hypervisors KVM and Xen, open source data technologies such as MySQL, PostgreSQL, Hadoop, NoSQL and memcached and open source languages such as Java, PHP, Python and Ruby on Rails.

There will be plenty of users and customers content to use non-open source options that serve as the defacto standards, but we do see a move to higher-level, production and mission critical use, which represents continued commercial opportunity for open source and other vendors.

One of the more subtle effects of all this open source in the cloud, as covered in Seeding the Clouds, is the impact on discussions, debates and downright fights in the market. There is much scrutiny on claims of being open, technical aspects of open and what ‘open cloud’ means. A prime example is the Twisticuffs that have gone on between Simon Crosby of XenSource and Citrix, discussing OpenCloud and the response from Open Cloud Initiative co-founder Sam Johnston, who claims this is misuse of the open label.

We already saw open source playing a role in the discussions and debates about open clouds, open APIs and open data, and this latest confrontation is evidence that role continues to be significant. We still wonder though about the question of open enough as we contemplate openness in the clouds.


PlanetMySQL Voting: Vote UP / Vote DOWN

Cloud systems vs. NoSQL email with tons of questions

Сентябрь 7th, 2010
I had an email after my webinar on NoSQL/SQL for Oracle Development Tools User Group last week (http://www.odtug.com/apex/f?p=500:1:0) from an attendee that was chock full of some questions. I decided to answer them to clarify with this fellow NoSQL and Cloud Systems. I'm pretty happy with my answers. I'd be glad for any thoughts from people about my replies.

Here are my responses (the fellow's name is also Patrick):

Patrick,

You are welcome! Thank you for attending. I put that together a bit hasty but thought it was a good topic to be covering as there are so many organizations that are considering such an architecture.

Patrick Francois wrote:
> Hi,
>
> Thank you for the NoSQL Webinar!
> Not an easy theme. ..kind of "wide open".
> I have recently also tried getting more info on NoSQL and related systems and performance issues. ...and get confused, especially also with the "cloud systems".

Yeah, a lot of buzzword-BS and reinventing the wheel going on. They key to remember is that SQL is not going to be replace SQL any time soon, but the combination of SQL and NoSQL can have its advantages.

>
> I checked for example this document regarding benchmarking "cloud systems":
> (maybe you know that document as well)
> -> "BenchmarkingCloudServingSystemswithYCSB"
> (YCSB -> Yahoo!CloudServingBenchmark)
> -> straight link: http://www.brianfrankcooper.net/pubs/ycsb.pdf
>
> There they speak about : explosion of new systems for datastorage and management "in the cloud"
> They mention there all these different NoSQL storage systems,
> and say for example also: Some systems are offered only as cloud services, either directly in the case of Amazon SimpleDB[1]


Yeah, SimpleDB being Amazon's S3, a proprietary system. You can download it and run it on your own cluster or private cloud.


> ....
>
> That's why I'm also a bit confused about "cloud systems" and "NoSQL".

Cloud systems - usually virtual machines that can be easy spun up for elasticity - I want to add more servers to my virtual network on the fly. This can be via either your own VMWare Labmanager setup or something like EC2. There are also real hardware clouds using services such as what Rackspace offers.

By "cloud systems" and "NoSQL", it just means running these databases in an environment such as EC2, VMware, or Rackspace, etc... For instance, you can have relational databases in the cloud such as with MySQL, Drizzle, or etc...

You can also run them NoSQL databases on your own systems. NoSQL and Cloud systems are not mutually exclusive of each other.

> Basically if you speak about cloud systems, you also speak about scaling out same as you are speaking about "scaling out" when speaking about NoSQL.


Scaling out can be in the cloud as well as outside the cloud. It just means running applications and databases over a several systems versus using an every increasing big huge server and growing that server to scale as was done in the Good Old Days (TM).


>
> So, does it imply that NoSQL systems are cloud systems?

No, they can be, but are not. NoSQL means a database system that doesn't use SQL to access data, non-relational

> How would you see the relation "NoSQL" / "Cloud systems".


They complement each other. NoSQL works well in a cloud paradigm.


>
> --
> Even "cloud system" meaning as such is rather unclear.
> There was the question about "Cassandra server farm":
> If I create an own cassandra server farm, can I then still speak about a "cloud system", or can I speak about a "cloud system" only when underlying servers are also geographically distrubuted?

Geographical distribution isn't the determinant in the definition of cloud system. I could have a cloud system down in my cellar if I wanted to if I have multiple real or virtual servers.

>
> There is also the "security" issue when it comes to "cloud systems" and some say security is bigger because data is distributed. I understand that in that way, you cannot really get hand (or get hacked) on all the data at once, eventually just a part of the data.
> But if I think on an own Cassandra farm, where eventually all machines are in the same machine room and network, I can imagine if you can get into one machine, you can get into all of them.

This issue requires you to do some homework about how to secure your servers. Set up a good image with everything locked down and use something like puppet to have it come up with all the goodies you set up in that image. Define a list of must-haves before that box (virtual or real) is on the network.

>
> From the YCSB-document "some systems are offered only as cloud services",
> I understand that for using Amazon's SimpleDB, you could not create your own server farm, rather need to buy that service from Amazon?


Yeah, you're not going to run your own S3. You can run other NoSQL or distrubuted file systems - pick your choice with a Google Search.


>
> That is causing me confusion between "NoSQL" and "Cloud systems".


NoSQL - as I defined in the presentation - schema less, often non-relational, doesn't use SQL as the Linga Franca of data access.

Cloud systems - multiple boxes, real or virtual, elastic, as I mention above.

Two different but mutually complementary concepts.


> --
> Memcached and Membased sounded very interesting. I will check more on those.


Please do. And do join the mailing lists. I see Matt Ingenthron and Perry Krug answering emails every day!


> --
> Can you eventually also provide the slides you used?


Certainly - let me make sure they care clean and I'll send them to you!
PlanetMySQL Voting: Vote UP / Vote DOWN

Cloud systems vs. NoSQL email with tons of questions

Сентябрь 7th, 2010
I had an email after my webinar on NoSQL/SQL for Oracle Development Tools User Group last week (http://www.odtug.com/apex/f?p=500:1:0) from an attendee that was chock full of some questions. I decided to answer them to clarify with this fellow NoSQL and Cloud Systems. I'm pretty happy with my answers. I'd be glad for any thoughts from people about my replies.

Here are my responses (the fellow's name is also Patrick):

Patrick,

You are welcome! Thank you for attending. I put that together a bit hasty but thought it was a good topic to be covering as there are so many organizations that are considering such an architecture.

Patrick Francois wrote:
> Hi,
>
> Thank you for the NoSQL Webinar!
> Not an easy theme. ..kind of "wide open".
> I have recently also tried getting more info on NoSQL and related systems and performance issues. ...and get confused, especially also with the "cloud systems".

Yeah, a lot of buzzword-BS and reinventing the wheel going on. They key to remember is that SQL is not going to be replace SQL any time soon, but the combination of SQL and NoSQL can have its advantages.

>
> I checked for example this document regarding benchmarking "cloud systems":
> (maybe you know that document as well)
> -> "BenchmarkingCloudServingSystemswithYCSB"
> (YCSB -> Yahoo!CloudServingBenchmark)
> -> straight link: http://www.brianfrankcooper.net/pubs/ycsb.pdf
>
> There they speak about : explosion of new systems for datastorage and management "in the cloud"
> They mention there all these different NoSQL storage systems,
> and say for example also: Some systems are offered only as cloud services, either directly in the case of Amazon SimpleDB[1]


Yeah, SimpleDB being Amazon's S3, a proprietary system. You can download it and run it on your own cluster or private cloud.


> ....
>
> That's why I'm also a bit confused about "cloud systems" and "NoSQL".

Cloud systems - usually virtual machines that can be easy spun up for elasticity - I want to add more servers to my virtual network on the fly. This can be via either your own VMWare Labmanager setup or something like EC2. There are also real hardware clouds using services such as what Rackspace offers.

By "cloud systems" and "NoSQL", it just means running these databases in an environment such as EC2, VMware, or Rackspace, etc... For instance, you can have relational databases in the cloud such as with MySQL, Drizzle, or etc...

You can also run them NoSQL databases on your own systems. NoSQL and Cloud systems are not mutually exclusive of each other.

> Basically if you speak about cloud systems, you also speak about scaling out same as you are speaking about "scaling out" when speaking about NoSQL.


Scaling out can be in the cloud as well as outside the cloud. It just means running applications and databases over a several systems versus using an every increasing big huge server and growing that server to scale as was done in the Good Old Days (TM).


>
> So, does it imply that NoSQL systems are cloud systems?

No, they can be, but are not. NoSQL means a database system that doesn't use SQL to access data, non-relational

> How would you see the relation "NoSQL" / "Cloud systems".


They complement each other. NoSQL works well in a cloud paradigm.


>
> --
> Even "cloud system" meaning as such is rather unclear.
> There was the question about "Cassandra server farm":
> If I create an own cassandra server farm, can I then still speak about a "cloud system", or can I speak about a "cloud system" only when underlying servers are also geographically distrubuted?

Geographical distribution isn't the determinant in the definition of cloud system. I could have a cloud system down in my cellar if I wanted to if I have multiple real or virtual servers.

>
> There is also the "security" issue when it comes to "cloud systems" and some say security is bigger because data is distributed. I understand that in that way, you cannot really get hand (or get hacked) on all the data at once, eventually just a part of the data.
> But if I think on an own Cassandra farm, where eventually all machines are in the same machine room and network, I can imagine if you can get into one machine, you can get into all of them.

This issue requires you to do some homework about how to secure your servers. Set up a good image with everything locked down and use something like puppet to have it come up with all the goodies you set up in that image. Define a list of must-haves before that box (virtual or real) is on the network.

>
> From the YCSB-document "some systems are offered only as cloud services",
> I understand that for using Amazon's SimpleDB, you could not create your own server farm, rather need to buy that service from Amazon?


Yeah, you're not going to run your own S3. You can run other NoSQL or distrubuted file systems - pick your choice with a Google Search.


>
> That is causing me confusion between "NoSQL" and "Cloud systems".


NoSQL - as I defined in the presentation - schema less, often non-relational, doesn't use SQL as the Linga Franca of data access.

Cloud systems - multiple boxes, real or virtual, elastic, as I mention above.

Two different but mutually complementary concepts.


> --
> Memcached and Membased sounded very interesting. I will check more on those.


Please do. And do join the mailing lists. I see Matt Ingenthron and Perry Krug answering emails every day!


> --
> Can you eventually also provide the slides you used?


Certainly - let me make sure they care clean and I'll send them to you!
PlanetMySQL Voting: Vote UP / Vote DOWN