Next Generation Distributed Database Technology
At GenieDB, we are solving a fundamental problem faced by all growing websites: scaling your database to meet increasing customer demand while maintaining its ease of use, performance and uptime so application developers can focus on application enhancements and not database workarounds. We aim to reduce capital expenditure, administrative overhead and the burden on all companies faced with expensive hardware and clustering solutions.
GenieDB offers a fully replicated distributed database that is both a MySQL storage engine and a high-speed key value data store. It provides SQL and NoSQL functionality with inter-table joins to help application developers use the database more effectively and efficiently. Our patent-pending replication technology provides instantaneous consistency across a cluster, increases read/write performance and supports almost linear scaling. Our products reduce planned and unplanned downtime by automating node provisioning and operating in self-healing clusters.
Features of GenieDB
Performance: GenieDB provides instantaneous data consistency, so your application always reads the most current data.
Ease of Use: Providing a well-known SQL interface and automatic node provisioning means spending less time retraining your technical staff and allowing more time for them to solve business critical issues.
Resilience: With an automated self-healing algorithm, GenieDB recovers from faults with little effort.
Cost Efficiency: You can realize the benefits of GenieDB on your existing hardware without any application changes.
GenieDB CloudScaler
CloudScaler is designed to scale out existing MySQL websites and simplify the overall administration associated with MySQL.
GenieDB CloudMaster
CloudMaster utilizes the same core technology as CloudScaler, but adds the power of a NoSQL interface allowing for more flexible and efficient database access.
Featured Contributions
CloudTV: SQL vs NoSQL - January 2010
By Alaric Snell-Pym - Chief Software Architect at GenieDB
Article:Flow Control in a Distributed System - February 2010
As a replicated database, the core of GenieDB technology is multicasting update operations to a number of servers efficiently. Each server runs a daemon which listens for these multicasts, and performs the updates contained therein. However, there are only small fixed-size buffers for pending multicasts; while this daemon is busy applying an update to disk (which can block on locks and disk bandwidth and so on), more multicasts might arrive, so it's very important to satisfy them promptly. Here is an overview of how to stop too many updates coming through the system at once.
Paper:GenieDB Technology Overview
White Paper - 2009
Over the past few years, "scaling" and "availability" have come to vie with "cutting costs" and "delivering new features" as major headaches for the CTOs of online businesses. With Moore's Law starting to lose steam, existing applications can no longer be scaled by simply buying faster hardware each year; instead, scaling an application has become an exercise in rebuilding it to utilize techniques such as sharding or non-SQL databases, while struggling to keep the existing live system going despite rising load, before users start leaving in frustration.
But the outlook isn't that bleak. "Clustering", a suite of technologies built around the concept of a group of independent servers co-operating to provide a service, has the potential to cut costs and provide scaling and availability in one fell swoop (sadly, however, they can't really help you deliver new features).
In this white paper we will illustrate the challenges of applying cluster computing solutions to online application problems, and how the latest technologies address those challenges.