https://msutexas-edu.zoom.us/j/9403974439
- Days: MW 5:00 p.m. - 6:20 p.m.
- Location: BO 320
- Semester: Monday August 23rd - Friday December 3rd
- Holidays:
- Labor Day Monday September 6th
- Thanksgiving Wednesday November 23rd - Sunday November 28th
- Last Day for “W”: Friday October 25th
- Last Day of Class: Friday December 3rd
- Final Exam: Monday Dec 6th, 5:45 p.m. - 7:45 p.m.
Many database courses involve relational algebra
and/or normal forms
and some other ways to formally model a database. These formal methods are usually applied to RDBMS's (Relational Database Management System) with not a whole lot of formal methods for NOSql databases. Recently, some NoSql DB's have introduced "transactions" and ACID compliance.
This course will be a survey of databases comparing and contrasting each DB's strengths and or weaknesses. We will look at speed and ACID transactions for a subset of the databases listed below. Not all DB's were created for the same purpose, so they will have differing strengths and weaknesses. This won't stop us from comparing them. We may prove what we already expect, or we may get surprised.
-
SQL / RDBMS / Relational databases
-
NoSQL / Non-relational databases
- Document Stores
- Wide Column Stores
- Key-Value Stores
- Graph Databases
- Search Engine
-
API Querying
-
Users from ~40000+ - ~70000+ responded
Database | 2019 | 2020 | 2021 | DB Type | |
---|---|---|---|---|---|
1 | MySQL | 54.0% | 53.5% | 50.18% | Relational |
2 | PostgreSQL | 34.3% | 38.5% | 40.42% | Relational |
3 | Microsoft SQL Server | 32.8% | 34.8% | 26.87% | Relational |
4 | SQLite | 31.6% | 30.6% | 32.18% | Relational |
5 | MongoDB | 25.5% | 26.7% | 27.7% | NoSQL - Document Store |
6 | Redis | 18.6% | 20.5% | 20.69% | NoSQL - Key Value Store |
7 | MariaDB | 16.5% | 16.9% | 17.19% | Relational |
8 | Oracle | 16.5% | 16.3% | 12.61% | Relational |
9 | Elasticsearch | 14.3% | 15.5% | 13.27% | NoSQL |
10 | Firebase | 12.8% | 13.9% | 16.17% | NoSQL |
11 | DynamoDB | 6.2% | 7.8% | 7.3% | NoSQL - Key Value Store |
12 | Cassandra | 3.5% | 3.6% | 2.66% | NoSQL |
13 | IBM DB2 | ---- | 2.9% | 2.04% | Relational |
14 | Couchbase | 2.0% | 2.0% | 1.57% | NoSQL |
Categories | Grade | ||
---|---|---|---|
Presentations 1 | 30% | A | 89-100 |
Projects 2 | 30% | B | 79-88 |
Final Exam 3,4 | 30% | C | 69-78 |
Github Portfolio 5 | 10% | D | 59-68 |
Participation | 5% | F | below 59 |
Participation: Obviously this has to do with going to class, asking questions, and generally being a physical part of class. But even more importantly it has to do with interacting with our class on Slack. Responding to queries on Slack either with text response or an emoticon reaction to a post. Asking me questions with direct message is a huge help, as I can turn that into (what the military calls) an "overhead correction". Most questions help bring to my attention things that need clarification for everyone. I will be gauging everyone's participation and the best guarantee is on slack as that creates a digital record.
1. Each student will give 2 presentations over topics of the professors choosing.
2. Programming projects will be assigned. Any project turned in must include basic instructions, comments, file descriptions and of course must run.
3. A final exam over general database topics will be given. As the semester progresses we will accumulate the necessary study materials from your projects and presentations, as well as my lessons.
4. Plane ticket prices, events like weddings, or trips out of the country are not valid excuses for missing the final exam at its scheduled time. I will not make accommodations for anything other than an issue vetted by the dean of students.
5. Late work will be accepted on a case by case basis. Late penalty is 15 points (out of 100) for initial lateness and 1 half a letter grade (5 points) for every class period until the total reduced is 50 (half credit). Extremely late work is totally at the instructors discretion on whether it will be accepted or not.