From the orientation, your reading from week 1, and your own experience answer the following questions:
Relational database tables and spreadsheets look similar with both having rows and columns. What are some important differences between the two?
At first glance, a relational database and a spreadsheet in an application such as Excel look fairly commensurate to each other in purpose and functionality--they both are comprised of rows and columns that hold data organized by column names and row numbers. The truth is that their visual similarity is where the commensuration ends and the vast differences begin. Relational databases adhere to strict and organized rules that ensure they can manage large volumes of structured data as well as complex queries to return results from that data whereas spreadsheets can be filled out arbitrarily. Foreign keys and primary keys can tie individual values or sets of values to other tables of data which in turn impact how data can be returned or changed while spreadsheets generally abide by far less sophistication. Database structures and queries all adhere to their own subsets of rules such as data types and constraints that ensure clarity and accuracy in perpetuity.
Installing and configuring a database and learning how to use it is more complicated than just reading and writing data to a file. What are some important reasons that makes a database a useful investment of time?
Data, such as what is read and written to a file, is useless without organization. While there are powerful sort algorithms available to programmers to implement across myriad languages, databases provide a necessary "structure" that allows for best practice and precision. I am not only referring to the literal structure for the data being handled but also a conceptual structure for programmers to follow that allows for maintaining integrity of the data while also carrying out complex functions and queries on that data. Multiple users writing data to a file would be a disaster without a database. Databases allow for backup, recovery, and security in a world that is increasingly shifting all of its data to the digital space. Beyond using databases to increase understanding of the architecture and landscape that a computer scientist may use daily, there are also many roles and careers that revolve around database programming and management.
What do you want to learn in this course that you think will be useful in your future career?
I want to gain more familiarity and mastery in designing efficient and powerful relational databases, tools, and structures. There are many more SQL queries to learn and they have all been useful and interesting so far. Creating databases in Java feels quite primordial and esoteric, I would like to get even more comfortable creating schema, tuples, tables, and queries outside of SQL. There is a lot more context and insight to gain with the bridges between applications and databases that I am now becoming aware of in a deeper and more profound way. Data management is a crucial aspect of being an amazing programmer and computer scientist, so I am buckled in.
Comments
Post a Comment