Need advice about which tool to choose?Ask the StackShare community!
ArangoDB vs MariaDB: What are the differences?
Introduction
ArangoDB and MariaDB are both popular database management systems that offer unique features and functionalities.
1. Query Language:
ArangoDB uses a multi-model query language, AQL, which allows users to seamlessly work with document, graph, and key-value data models within a single query. In contrast, MariaDB primarily uses SQL for querying relational data, requiring separate queries for different data models.
2. Data Models:
ArangoDB supports multiple data models, including documents, graphs, and key-value pairs, providing more flexibility for diverse use cases. On the other hand, MariaDB is primarily focused on supporting relational data models, limiting its versatility compared to ArangoDB.
3. Indexing:
ArangoDB offers automatic indexing on all attributes by default, optimizing query performance without manual intervention. In comparison, MariaDB requires manual indexing to enhance query execution speeds, making it more labor-intensive for database administrators.
4. Replication:
ArangoDB includes built-in sharding and replication capabilities, allowing for easy horizontal scaling and high availability setups. In contrast, MariaDB requires additional tools and configurations for sharding and replication, making it less straightforward for scaling and ensuring data redundancy.
5. Licensing:
ArangoDB is open-source and comes with a community edition that is free to use, making it a cost-effective option for businesses of all sizes. Conversely, MariaDB offers both community and enterprise editions, requiring a licensing fee for enterprise features, which can be a limiting factor for budget-conscious organizations.
6. Ease of Use:
ArangoDB's user-friendly interface and comprehensive documentation make it easier for developers to get started and maintain databases efficiently. While MariaDB is known for its robust features, it may have a steeper learning curve for users unfamiliar with relational databases, potentially impacting usability for beginners.
In Summary, ArangoDB and MariaDB differ in query language, data models, indexing, replication, licensing, and ease of use, offering unique advantages and considerations for various database management needs.
Hello All, I'm building an app that will enable users to create documents using ckeditor or TinyMCE editor. The data is then stored in a database and retrieved to display to the user, these docs can contain image data also. The number of pages generated for a single document can go up to 1000. Therefore by design, each page is stored in a separate JSON. I'm wondering which database is the right one to choose between ArangoDB and PostgreSQL. Your thoughts, advice please. Thanks, Kashyap
Which Graph DB features are you planning to use?
Hi all. I am an informatics student, and I need to realise a simple website for my friend. I am planning to realise the website using Node.js and Mongoose, since I have already done a project using these technologies. I also know SQL, and I have used PostgreSQL and MySQL previously.
The website will show a possible travel destination and local transportation. The database is used to store information about traveling, so only admin will manage the content (especially photos). While clients will see the content uploaded by the admin. I am planning to use Mongoose because it is very simple and efficient for this project. Please give me your opinion about this choice.
The use case you are describing would benefit from a self-hosted headless CMS like contentful. You can also go for Strapi with a database of your choice but here you would have to host Strapi and the underlying database (if not using SQLite) yourself. If you want to use Strapi, you can ease your work by using something like PlanetSCaleDB as the backing database for Strapi.
Your requirements seem nothing special. on the other hand, MongoDB is commonly used with Node. you could use Mongo without defining a Schema, does it give you any benefits? Also, note that development speed matters. In most cases RDBMS are the best choice, Learn and use Postgres for life!
MongoDB and Mongoose are commonly used with Node.js and the use case doesn't seem to be requiring any special considerations as of now. However using MongoDB now will allow you to easily expand and modify your use case in future.
If not MongoDB, then my second choice will be PostgreSQL. It's a generic purpose database with jsonb support (if you need it) and lots of resources online. Nobody was fired for choosing PostgreSQL.
SQL is not so good at query lat long out of the box. you might need to use additional tools for that like UTM coordinates or Uber's H3.
If you use mongoDB, it support 2d coordinate query out of the box.
Any database will be a great choice for your app, which is less of a technical challenge and more about great content. Go for it, the geographical search features maybe be actually handy for you.
Hi, Maxim! Most likely, the site is almost ready. But we would like to share our development with you. https://falcon.web-automation.ru/ This is a constructor for web application. With it, you can create almost any site with different roles which have different levels of access to information and different functionality. The platform is managed via sql. knowing sql, you will be able to change the business logic as necessary and during further project maintenance. We will be glad to hear your feedback about the platform.
Any database engine should work well but I vote for Postgres because of PostGIS extension that may be handy for travel related site. There's nothing special about your requirements.
We actually use both Mongo and SQL databases in production. Mongo excels in both speed and developer friendliness when it comes to geospatial data and queries on the geospatial data, but we also like ACID compliance hence most of our other data (except on-site logs) are stored in a SQL Database (MariaDB for now)
Pros of ArangoDB
- Grahps and documents in one DB37
- Intuitive and rich query language26
- Good documentation25
- Open source25
- Joins for collections21
- Foxx is great platform15
- Great out of the box web interface with API playground14
- Good driver support6
- Low maintenance efforts6
- Clustering6
- Easy microservice creation with foxx5
- You can write true backendless apps4
- Managed solution available2
- Performance0
Pros of MariaDB
- Drop-in mysql replacement149
- Great performance100
- Open source74
- Free55
- Easy setup44
- Easy and fast15
- Lead developer is "monty" widenius the founder of mysql14
- Also an aws rds service6
- Consistent and robust4
- Learning curve easy4
- Native JSON Support / Dynamic Columns2
- Real Multi Threaded queries on a table/db1
Sign up to add or upvote prosMake informed product decisions
Cons of ArangoDB
- Web ui has still room for improvement3
- No support for blueprints standard, using custom AQL2