During the run up to The Org being formed, one of our biggest challenges was answering all the questions about BearDB. It delayed this website by about 30 days, until which point you realize 'Hey, a programmer needs to program'.
So we will cover as much as we can fit into this small space.
We have the BearDB W.T.F., and will also have a complete 'How it works' section put up in the next 60 days.
We are a group of programmers who work together to fix and add features to BearDB. There is really nothing weird about it. We don't even have shirts!
And please stop asking if we are a gang! We have one team member who still has not been outside since the start of the year. (medical reasons)
No sunlight and no group tshirt tells you all you need to know.
Ok, so about the bear thing. One of the members who created the initial technology on which BearDB is based believes in Medicine. Not pills-like medicine, but the understanding of 'The Medicine' as taught to him by his Grandmother, a real Cherokee.
So its really nothing more than that, and it works on so many levels.
Another answer is that we have all this crap with bears on it, so changing to BirdDB would be rather ackward.
BearDB is an in-memory database with local persistence. It is written in Java and C# and both codebases look nearly identical.
Yes, the database was started in C++. Yes, the Java version is much faster than the C++ version and many times easier to deploy to any platform so we got rid of the C++ port years ago.
BearDB is accessed from clients which utilize a native protocol and support encryption if enabled. All clients in all supported programming languages will work with the database server in any of its supported programming languages.
BearDB supports Structured Query Language, or SQL. BearDB supports SQL defined by SQL:2016, but not all features have been implemented in the current release. BearDB has extensive SQL support and a full SQL guide to give examples.
BearDB does support JOINS. (the most common question we get)
BearDB also supports data replication between database instances. This is not a monolithic feature as other database providers have turned it into. Our approach was to create one simple, secure process for data-exchange between BearDB instances. The current replication process allows a client to issue a replication job to have specific data moved, based on a query.
The technology in BearDB started as Yona's open-source project, and has been around for 11 years with thousands of users.
We chose this as our starting point because of the amazing features it has such as the multi-platform support, client interoperability, multi-language encryption, replication process, REST support direct to DB, smaller memory footprint, and blazing fast performance.
Our goal is to make BearDB a modern Hybrid database, which can scale as big or small as needed.
BearDB supports REST requests directly to the database server. BearDB's REST support is not a driver or database middleware. BearDB has a REST listener which can be configured to run whenever it is needed, or can be disabled if not being utilized.
REST requests can be used to query existing data, or to insert a record.
The REST feature in BearDB can also be used to eliminate the need for customized REST servers. Instead of developing REST services in a middle layer of your system you can just have your application models perform REST requests directly to BearDB. BearDB will always handle your request as a reliable relational database system and ensure you get a response as fast as possible.