As far as computer languages go, SQL (Structured Query Language) is a pretty old one. It came to light in the early 1970s and it is probably not too popular with the Facebook generation. But the fact remains - SQL is a pretty awesome thing. It is by far one of the easiest and most efficient ways to query and interact with structured data. That's why it remains by far one of the most heavily used languages for business applications.

But perhaps the most important role that SQL plays is that it makes developers think with a relational model in mind - and that means thinking about the best data structures for the application at hand. That's a good thing. When developing applications -and particularly when developing business applications- the most important things are the data and the structures the data is stored in, not the application logic. Rob Pike, one of the original creators of UNIX, came up with an elegant maxim for this:

"Data dominates. If you have chosen the right data structures and organized things well, the algorithms will almost always be self-evident. Data structures, not algorithms, are central to programming."

In this era of distributed file systems and cloud computing, traditional databases are being used less and less, in favor of other data storage and retrieval methods. And that has led to improved, faster and more responsive web applications. But while there are some SQL-like approaches for cloud computing out there, they tend to be fairly limited and not as powerful as the full-blown SQL - in particular because it doesn't take into account the intricate data relationships that SQL so elegantly describes.

The problem is, there's a fundamental mistake people make when they think of SQL: they think of the access language and the storage mechanism as one and the same. But they can in fact be separated. SQL can be just a pure access language used to describe the data and relationships being accessed. The backend (the engine that actually handles and stores the data) can be anything.

That's why today we're announcing a new Zoho technology. It is a milestone for accessing data on the cloud through the familiar SQL language. We have aptly named this Zoho CloudSQL.

Zoho CloudSQL is a middleware technology that allows customers to interact with their business data stored in Zoho through the familiar SQL language. Customers are able to access Zoho cloud data using SQL on both other cloud applications as well as through traditional on-premises software.

At a high-level, Zoho CloudSQL serves as the bridge between the external application and the data stored inside Zoho. It receives the query in SQL, interprets it, delegates queries and aggregates results across the Zoho services.

Zoho CloudSQL Architecture Diagram

There are in particular 3 things that stand out about Zoho CloudSQL:

  1. It's the first technology that allows customers to interact with their data on the cloud, from another cloud application or from an on-premises one through real SQL.
  2. It supports multiple SQL dialects. We support all the major (and even some not so major) ones: ANSI, Oracle, SQL Server, IBM DB2, MySQL, PostgreSQL and Informix.
  3. With our JDBC/ODBC drivers, developers can access data in the cloud just as easily as if it were stored in a local database.

The next natural question is: What Zoho services you can access through Zoho CloudSQL? Today we're starting with Zoho Reports, our on-line reporting and business intelligence service, and soon other relevant Zoho services will follow-suit. Zoho Reports (which used to be called Zoho DB & Reports) also added a new Web API today.

Zoho CloudSQL also underscores Zoho's commitment to never lock-in customers through the artificial retention of their data. Customers trust Zoho with their data because they know they can get it out anytime, through a variety of clearly documented and accessible means.

And just in case you were wondering - yes, Zoho CloudSQL is meant for developers, not end-users. So if this is the first time you're hearing about SQL dialects and JDBC drivers, well, Zoho CloudSQL is probably not for you. But hey, it's never too late to get started!

Get more details about Zoho CloudSQL.

Rodrigo Vaca

Comments

Post Comment