{"id":50729337,"url":"https://github.com/mariadb-corporation/mariadb-analytics-sample-data","last_synced_at":"2026-06-10T07:03:28.402Z","repository":{"id":54869051,"uuid":"87103620","full_name":"mariadb-corporation/mariadb-analytics-sample-data","owner":"mariadb-corporation","description":"Example OLAP queries and dataset","archived":false,"fork":false,"pushed_at":"2026-05-29T23:04:12.000Z","size":34,"stargazers_count":20,"open_issues_count":0,"forks_count":16,"subscribers_count":15,"default_branch":"master","last_synced_at":"2026-05-30T01:06:01.574Z","etag":null,"topics":["analytics","columnstore","database","mariadb","olap"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mariadb-corporation.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2017-04-03T17:50:34.000Z","updated_at":"2026-05-29T23:01:27.000Z","dependencies_parsed_at":"2025-08-02T08:28:11.793Z","dependency_job_id":"91a861bf-ba90-4414-9875-536cb6bbfbcd","html_url":"https://github.com/mariadb-corporation/mariadb-analytics-sample-data","commit_stats":null,"previous_names":["mariadb-corporation/mariadb-columnstore-sample-data","mariadb-corporation/mariadb-columnstore-samples","mariadb-corporation/mariadb-analytics-sample-data"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mariadb-corporation/mariadb-analytics-sample-data","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-analytics-sample-data","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-analytics-sample-data/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-analytics-sample-data/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-analytics-sample-data/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mariadb-corporation","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-analytics-sample-data/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-analytics-sample-data/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34140776,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-10T02:00:07.152Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analytics","columnstore","database","mariadb","olap"],"created_at":"2026-06-10T07:03:22.873Z","updated_at":"2026-06-10T07:03:28.396Z","avatar_url":"https://github.com/mariadb-corporation.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sample Analytics Data\n## Description \nThis simple data set uses the [on time performance](https://www.transtats.bts.gov/homepage.asp) dataset from the *Bureau of Transportation Statistics (BTS)* for US based commercial airline flights. This includes the following 3 tables:\n\n*   **airlines**: Dimension table for airlines (30 records)\n*   **airports**: Dimension table for airports (400 records)\n*   **flights**: Fact table for airline departure data (38,083,735 records)\n\n## Prerequisite\n\nA MariaDB server is required. For a quick test environment, try [MariaDB Cloud](https://cloud.mariadb.com/).  \n\n## Quick Start\n### Clone The Repo\n```\ncd /tmp\n```\n```\ngit clone https://github.com/mariadb-corporation/mariadb-analytics-sample-data.git\n```\n```\ncd mariadb-analytics-sample-data\n```\n### Run The Project\n```\n./run_project\n```\nThis script will:\n1. Create sample schemas(s)\n2. Download flight data from our public S3 bucket\n3. Load into the database\n4. Offer you the ability to clone this data to InnoDB for direct comparisions with ColumnStore.\n\n## Sample Queries\nThe following sample queries are provided in the [queries directory](/queries/):\n\n1.   **1.sql** : Provides a report of flight count, market share percentage, cancelled flights percentage, and diverted flights percentage by airline for 2020.\n2.   **2.sql** : Provides a report of the delay types by airline by year.\n3.   **3.sql** : Provides a report of the volume and average arrival delay for California based airports by airline in 2020.\n4.   **4.sql** : Provides a report of the average and maximum delay by month and hour in the day for bay area airports in 2020.\n5.   **5.sql** : Provides a report of the average and maximum delay by day and hour for bay area airports in November 2020.\n```\nmariadb -vvv columnstore_bts \u003c queries/1.sql\n```\nor\n```\nmariadb -vvv innodb_bts \u003c queries/1.sql\n```\n\n## InnoDB vs Analytics Comparison\n\n### Environment\n|Metric                |Value                |\n|:---------------------|--------------------:|\n|Provider              |AWS                  |\n|Instance Type         |m5.8xlarge           |\n|Architecture          |x86_64               |\n|CPU                   |32                   |\n|RAM                   |128GB                |\n|MariaDB Version       |10.6.12              |\n|ColumnStore Version   |23.02.2              |\n|MariaDB Exa Version   |25.1.8               |\n\n### Data Load Times\n|Engine                |Time                 |\n|:---------------------|--------------------:|\n|InnoDB                |19 min 10.126 sec    |\n|ColumnStore*          |68.5367 sec          |\n|MariaDB Exa*          |49.591 sec           |\n\n_*Loaded via the engine's native bulk loader (not LOAD DATA INFILE)._\n\n### Query Times\n\n|Query                 |InnoDB*              |ColumnStore          |MariaDB Exa          |\n|:--------------------:|--------------------:|--------------------:|--------------------:|\n|[1](/queries/1.sql)   |27.226 sec           |0.457 sec            |0.317 sec            |\n|[2](/queries/2.sql)   |1 min 24.368 sec     |1.523 sec            |0.402 sec            |\n|[3](/queries/3.sql)   |6.038 sec            |0.209 sec            |0.175 sec            |\n|[4](/queries/4.sql)   |6.070 sec            |0.093 sec            |0.161 sec            |\n|[5](/queries/5.sql)   |18.589 sec           |0.418 sec            |0.032 sec            |    \n\n_*Note: InnoDB tables were given indexes and a warm bufferpool._\n\n### Disk Usage\n|Engine                |Size                 |\n|:---------------------|--------------------:|\n|InnoDB                |14GB                 |\n|ColumnStore           |2GB                  |\n|MariaDB Exa           |1.4GB                |\n\n## Conclusion\n\nIn terms of performance, both storage engines excel in different areas. InnoDB is optimized for transactional workloads, where data is frequently updated or inserted. It uses a write-ahead logging mechanism to ensure that data is always consistent and recoverable in case of a system failure. \n\nIn contrast, ColumnStore is optimized for analytical workloads, where data is read-intensive and queries often involve aggregation and filtering operations. ColumnStore can execute these queries much faster due to its columnar design and vectorized processing.\n\nIn addition, ColumnStore also offers additional benefits such as a high-speed bulk loader and a smaller disk footprint. Unlike InnoDB, ColumnStore does not use traditional indexes, which contributes to its smaller disk footprint. Additionally, the columnar design of ColumnStore allows for higher compression ratios of data, reducing the amount of disk space required to store data. These advantages make ColumnStore a compelling add on for organizations looking to optimize their data storage and processing for analytical workloads.\n\nBuilding on these analytical foundations, MariaDB Exa raises the ceiling for high-performance analytics. On this dataset, Exa loaded the data roughly 28% faster than ColumnStore, compressed it into a 1.4GB footprint — about 10x smaller than the InnoDB copy — and delivered query latencies that consistently sit comfortably below ColumnStore's, including more than 3x faster on Query 2 and an order of magnitude faster on Query 5. Beyond raw speed, MariaDB Exa includes built-in change data capture for zero-ETL replication from InnoDB — keeping the analytical copy in lockstep with the transactional source without a separate pipeline, a capability ColumnStore does not offer. Exa is also self-tuning: rather than relying on DBAs to design indexes up front, it builds and adapts its own indexes to match the incoming workload. For organizations where every millisecond and every gigabyte matters, MariaDB Exa is the high-performance option in MariaDB's analytical engine family.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmariadb-corporation%2Fmariadb-analytics-sample-data","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmariadb-corporation%2Fmariadb-analytics-sample-data","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmariadb-corporation%2Fmariadb-analytics-sample-data/lists"}