MySQL vs ToroDB

Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

MySQL
MySQL

24K
18.6K
+ 1
3.7K
ToroDB
ToroDB

0
3
+ 1
0
Add tool

MySQL vs ToroDB: What are the differences?

MySQL: The world's most popular open source database. The MySQL software delivers a very fast, multi-threaded, multi-user, and robust SQL (Structured Query Language) database server. MySQL Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software; ToroDB: Open source, document-oriented, JSON database that runs on top of PostgreSQL. ToroDB is an open source, document-oriented, JSON database that runs on top of PostgreSQL, providing storage and I/O savings and ACID semantics. ToroDB is MongoDB-compatible, so you can use Mongo clients to connect to it.

MySQL and ToroDB belong to "Databases" category of the tech stack.

MySQL and ToroDB are both open source tools. It seems that MySQL with 3.97K GitHub stars and 1.56K forks on GitHub has more adoption than ToroDB with 10 GitHub stars and 2 GitHub forks.

What is MySQL?

The MySQL software delivers a very fast, multi-threaded, multi-user, and robust SQL (Structured Query Language) database server. MySQL Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software.

What is ToroDB?

ToroDB is an open source, document-oriented, JSON database that runs on top of PostgreSQL, providing storage and I/O savings and ACID semantics. ToroDB is MongoDB-compatible, so you can use Mongo clients to connect to it.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose MySQL?
Why do developers choose ToroDB?
    Be the first to leave a pro

    Sign up to add, upvote and see more prosMake informed product decisions

      Be the first to leave a con
      What companies use MySQL?
      What companies use ToroDB?
        No companies found

        Sign up to get full access to all the companiesMake informed product decisions

        What tools integrate with MySQL?
        What tools integrate with ToroDB?

        Sign up to get full access to all the tool integrationsMake informed product decisions

        What are some alternatives to MySQL and ToroDB?
        PostgreSQL
        PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions.
        Oracle
        Oracle Database is an RDBMS. An RDBMS that implements object-oriented features such as user-defined types, inheritance, and polymorphism is called an object-relational database management system (ORDBMS). Oracle Database has extended the relational model to an object-relational model, making it possible to store complex business models in a relational database.
        MariaDB
        Started by core members of the original MySQL team, MariaDB actively works with outside developers to deliver the most featureful, stable, and sanely licensed open SQL server in the industry. MariaDB is designed as a drop-in replacement of MySQL(R) with more features, new storage engines, fewer bugs, and better performance.
        MongoDB
        MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding.
        Microsoft SQL Server
        Microsoft® SQL Server is a database management and analysis system for e-commerce, line-of-business, and data warehousing solutions.
        See all alternatives
        Decisions about MySQL and ToroDB
        StackShare Editors
        StackShare Editors
        MySQL
        MySQL
        Vitess
        Vitess

        They're critical to the business data and operated by an ecosystem of tools. But once the tools have been used, it was important to verify that the data remains as expected at all times. Even with the best efforts to prevent errors, inconsistencies are bound to creep at any stage. In order to test the code in a comprehensive manner, Slack developed a structure known as a consistency check framework.

        This is a responsive and personalized framework that can meaningfully analyze and report on your data with a number of proactive and reactive benefits. This framework is important because it can help with repair and recovery from an outage or bug, it can help ensure effective data migration through scripts that test the code post-migration, and find bugs throughout the database. This framework helped prevent duplication and identifies the canonical code in each case, running as reusable code.

        The framework was created by creating generic versions of the scanning and reporting code and an interface for the checking code. The checks could be run from the command line and either a single team could be scanned or the whole system. The process was improved over time to further customize the checks and make them more specific. In order to make this framework accessible to everyone, a GUI was added and connected to the internal administrative system. The framework was also modified to include code that can fix certain problems, while others are left for manual intervention. For Slack, such a tool proved extremely beneficial in ensuring data integrity both internally and externally.

        See more
        Kir Shatrov
        Kir Shatrov
        Production Engineer at Shopify · | 12 upvotes · 79.5K views
        atShopifyShopify
        Rails
        Rails
        MySQL
        MySQL
        Memcached
        Memcached
        Redis
        Redis

        As is common in the Rails stack, since the very beginning, we've stayed with MySQL as a relational database, Memcached for key/value storage and Redis for queues and background jobs.

        In 2014, we could no longer store all our data in a single MySQL instance - even by buying better hardware. We decided to use sharding and split all of Shopify into dozens of database partitions.

        Sharding played nicely for us because Shopify merchants are isolated from each other and we were able to put a subset of merchants on a single shard. It would have been harder if our business assumed shared data between customers.

        The sharding project bought us some time regarding database capacity, but as we soon found out, there was a huge single point of failure in our infrastructure. All those shards were still using a single Redis. At one point, the outage of that Redis took down all of Shopify, causing a major disruption we later called “Redismageddon”. This taught us an important lesson to avoid any resources that are shared across all of Shopify.

        Over the years, we moved from shards to the concept of "pods". A pod is a fully isolated instance of Shopify with its own datastores like MySQL, Redis, memcached. A pod can be spawned in any region. This approach has helped us eliminate global outages. As of today, we have more than a hundred pods, and since moving to this architecture we haven't had any major outages that affected all of Shopify. An outage today only affects a single pod or region.

        See more
        Kir Shatrov
        Kir Shatrov
        Production Engineer at Shopify · | 13 upvotes · 149.7K views
        atShopifyShopify
        Docker
        Docker
        Kubernetes
        Kubernetes
        Google Kubernetes Engine
        Google Kubernetes Engine
        MySQL
        MySQL
        Redis
        Redis
        Memcached
        Memcached

        At Shopify, over the years, we moved from shards to the concept of "pods". A pod is a fully isolated instance of Shopify with its own datastores like MySQL, Redis, Memcached. A pod can be spawned in any region. This approach has helped us eliminate global outages. As of today, we have more than a hundred pods, and since moving to this architecture we haven't had any major outages that affected all of Shopify. An outage today only affects a single pod or region.

        As we grew into hundreds of shards and pods, it became clear that we needed a solution to orchestrate those deployments. Today, we use Docker, Kubernetes, and Google Kubernetes Engine to make it easy to bootstrap resources for new Shopify Pods.

        See more