Erlang Solutions the database architects
Feature
![]() |
|
Not a very long time ago big centralised servers controlled all storage. In order to grow their operations, businesses typically scaled (up) vertically, by upgrading to a bigger server. Traditional approaches to data management, such as relational databases from Sybase or Oracle have significant drawbacks:
- Scaling up is limited;
- Servers can only become so big;
- The bigger a server the higher the cost.
Businesses soon started outgrowing the scale-up process and applied workarounds in order to scale. This led to solutions such as horizontal scaling. Today, the data debate continues on a larger scale. Cloud computing has become far more than a “buzzword” in the technology space and is now recognized in the mainstream “world”. Data in the cloud has become synonyms to:
- Lowering total costs of operation: the cloud allows your business to share data infrastructure with other organisations. This results in lowering total cost of operation by paying only for what you use.
- Quick and out of the box services: cloud computing in its most basic essence works out of the box, which allows business to get things up and running quickly.
- Scalability: whether you are an established or growing business cloud computing copes with sharp increases or decreases in data.
- Mobility: the cloud works from one or multiple locations, offering full mobile services to businesses.
However, as companies move to distributed architectures this solution is no silver bullet to your database needs. A new set of business issues have arisen, which requires trade-offs to be made between the following:
- Consistency: distributed nodes see the same updates at the same logical time. This is hard to guarantee in distributed systems.
- Availability: guarantees the system will service every read and write sent to it.
- Partition tolerance: guarantees continued system operation even when the network breaks and messages are lost.
Database systems generally tend to support “Partition tolerance” and the choice of either “Consistency” or “Availability”.
Riak: the data solution
A new platform has been developed to tackle shortcomings in previous database solutions. Riak is built for the cloud and is highly available, fault tolerant and less expensive to own and operate. Riak offers a secure, fault tolerant data platform to help your business make the move to the cloud a simple and worry-free endeavour.
Why Riak?
“The most powerful open-source, distributed database you will ever put into production”.
The engineers of Riak are the leading minds behind distributed systems and next-generation approaches to data. Data loss or downtime can be disastrous to your business. Riak has been designed to be best in class by offering the following benefits:
- Distributed: Riak is designed to operate in highly distributed environments, such as the cloud.
- Master-less: Riak has no single point of failure.
- Fault-Tolerant: Because of Riak’s distributed design, you can lose access to many Riak nodes, but never lose data.
- High Availability: This makes Riak ideal for read and write-intensive web applications.
- Simply Scalable: Riak’s scaling is simple and intelligent. Add nodes to clusters with just a few commands and no downtime.
- Incredibly Stable: Many see Riak as the essential “building blocks” of a cloud data infrastructure.
- Economical: Riak lowers the total cost of operation for your business.
Erlang Solutions and Basho – the data store partners
Basho and Erlang Solutions have partnered in order to provide end-to-end data store solutions. Basho, as the leading distributed data store provider and the producer of Riak complements Erlang Solutions services, which are focussed on building systems around a Riak database.
Customer Benefits
- Experience: Erlang Solutions has accumulated unrivalled expertise and experience in building database systems and has previously built gateways in Erlang for other high-profile companies in a wide range of verticals.
- Result Driven: performance testing with previous clients has showed ‘outstanding’ results. See Project Notes for further information.
- Bespoke Systems: Erlang Solutions has the flexibility to build server side systems which focus on the needs of the customer. Furthermore, Erlang Solutions is sufficiently flexible in using the best available technologies.
- Support: Erlang Solutions provides an unparalleled support offering, due to its worldwide exclusive support agreement with Ericsson AB.
- Time to Market & Maintainability: Erlang Solutions builds and manages systems using AGILE and Test Driven regimes, focused on the needs of their customers.
Why Erlang?
Erlang is a general-purpose concurrent programming language and runtime system. The sequential subset of Erlang is a functional language, with strict evaluation, single assignment and dynamic typing. Concurrency was built into the Erlang language from the beginning, and all Erlang programs follow the same share-nothing, scalable and fault-tolerant actor-style concurrency model. For this reason, Erlang is generally thought to be the best language in the business for concurrency-oriented programming and data store solutions.
Erlang benefits
- No Single Point of Failure: even if a node is down because of a hardware or software fault, the system will still be available and provide services as usual.
- Scalability: additional instances of a node can be deployed if it has to handle more traffic than others. New instances of Erlang nodes can be added to support an increasing load.
- Flexibility: each node can be upgraded separately without any disruption to the other services.
- Reduced: Effort: 4–20 times less code than C/C++/Java, which makes Erlang suitable for rapid prototyping allowing a faster time to market.
- Support: Erlang code is significantly more succinct than other programming languages and its stability allows updates to accommodate new features.










