Bedrock Topper For SQLite
Written by Kay Ewbank   
Thursday, 20 October 2016

A networking and distributed transaction layer, called Bedrock, based on SQLite has been 'opened to the public' by Expensify.

The announcement of the general availability of Bedrock was made at this year's FinDEVr in San Francisco. FinDEVr is a conference aimed at developers working in the financial sector. Expensify is best known for its travel and expense application that can be used to manage expense transactions, upload receipts, and create expense reports. Bedrock was developed to manage the transactions in Expensify by its CEO, David Barrett.

Bedrock is described in the release notes as a simple, modular, WAN-replicated data foundation for global-scale applications. It consists of a number of separate plugins that are decoupled and independently maintainable.

The plugins implement and expose externally-visible commands Current plugins are: 

  • Status - Provides basic status about the health the Bedrock cluster.
  • DB - Provides direct SQL access to the underlying database.
  • Jobs - Provides a simple job queue.
  • Cache - Provides a simple replicated cache.
  • MySQL - Emulates MySQL 

While the announcement and release of the code for Bedrock is new, the product has been in continuous development and production use for eight years. The Experia system for which Bedrock was developed has 4.5 million users, and runs on six nodes split between three datacenters. According to the developers:

"The point of Bedrock is to make SQLite usable in the enterprise"

Bedrock offers what the developers describe as “Selective synchronization”, which they say achieves linear scalability of distributed transactions even in high-latency environments. They also say that there's no need for application-level awareness of which node is the master, and that the system offers automatic failover to a slave without requiring application reconfiguration or loss of data. Recovery is automatic back to the master.

Bedrock uses C++ as its primary stored procedure language. The developers say that the security is largely based on the use of the plugin framework, so you write C++ "stored procedures" that enforce your application's security model.

Whether Bedrock develops into a popular database remains to be seen, but it takes an interesting approach to using SQLite beyond the embedded norm.

 bedrock

More Information

BedrockDB

Bedrock On Github

Related Articles

Portable Version Of DB Browser For SQLite

SQLite 3.9  

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter,subscribe to the RSS feed and follow us on, Twitter, FacebookGoogle+ or Linkedin

 

Banner


Diabolo Juggling By Robot Arms
22/11/2020

Watching two robot arms play diabolo is enough to induce diabolo envy in anyone who has ever experimented with this type of toy. The good news is that Omron is going to release the simulation model, d [ ... ]



MongoDB Trends
09/11/2020

A report that looks at trends in the usage of MongoDB alongside  SQL and other NoSQL database technologies, reveals a decline in SQL-only technologies at the same time as the adoption of&nbs [ ... ]


More News

 

square

 



 

Comments




or email your comment to: comments@i-programmer.info

Last Updated ( Thursday, 20 October 2016 )