MongoDB is undoubtedly one of the most popular database systems these days. According to different database experts, MongoDB is one of the best database systems suitable for big data applications. In fact, MongoDB has been identified as the collection oriented and schema less database and most database developers agree that MongoDB has the most authoritative query language.
Moreover, over the years, more database experts have had a remarkable interest in MongoDB and with this come a few advantages – Scalability, dynamic document style schemas, excellent performance, advanced querying and the cutting-edge GridFS for data storage are just but a few of the advantages of MongoDB.
Sadly, there have been some poorly configured MongoDB databases in the market. Some attackers took this to their advantage and wiped all the significant data that was stored in these ‘out of sorts’ databases. What is even more frustrating is that the attackers are asking for ridiculous ransom in return.
Fortunately, there are some professional database developers like Victor Gevers (Netherlands) and Niall Merrigan (Norway) who are tracking the MongoDB related attacks. According to these experts, the attackers are wiping poorly configured databases, wiping all the data and replacing it with empty database. In fact, it is now clear that the attackers are using databases with names like ‘PWNED, PLEASE_READ and WARNING’ as a replacement of all the vulnerable databases they can find.
Merrigan also clarifies that more and more databases are being compromised as the days pass on. In fact, the number has drastically increased in just three days since the attack. But to focus more on the positive, MongoDB is ranked fourth after Oracle, MySQL and Microsoft SQL Server on the DB-Engines Database Rank. So, now that the database is becoming more and more popular, it is important that we all understand the basics.
To start you off, here are some useful database support concepts and terminologies that are worth your time of day. Read on.
- Document – this is a group of key value pairs which are comparable to a hash in ruby. Values are made of an opulent set of buoyed data types while the keys are the strings. The keys are also referred to as the column names. When it comes to storage, document is stored in Binary Serialized Document Notation, which is also referred to as BSON format.
- Data Types – MongoDB remarkably supports all JSON data types including, but not limited to, Boolean, array, interger, string and object. There are also other special data types that MongoDB surprisingly supports; binary data, code and regular expression.
- BSON format – this is a binary encoded serialization. The serialization is not only efficient in storage of data but also traversable and lightweight. And JSON, BSON supports the embedding of arrays and objects within other arrays and objects in the systems.
- Embedding – is the insertion of arrays and objects into a document. A good example of embedding is inserting all photo comments within the related photo instead of storing them in a different document.
- Collection – this is a group of similarly structured documents. In fact, most developers refer to it as a relational database table.
- Indexing – just like it is in relational databases, every document is assigned a default index which also sums up the primary key catalogue.
Felicia Montgomery is a database expert with over 15 years of experience. She loves spending her free time with her children. For more information about database support tips, visit her blog here.