PC4 Notes
PC4 Notes
Definition of DATABASE
● A collection of related data, typically stored electronically in a computer system.
● It can be recorded in an indexed address book or stored on a hard drive, using a
personal computer and software.
● It is designed, built, and populated with data for a specific purpose. It has an intended
group of users and some preconceived applications in which these users are interested.
Manipulation Uses SQL for queries and Uses formulas and manual
automation input
Key Features
1. Data Modeling: Tools for designing and modifying database structures and relationships
2. Data Storage and Retrieval: Efficient tools for fast data storage and retrieval.
3. Concurrency Control: Ensures conflict-free multi-user database access.
4. Data Integrity and Security: Enforces data accuracy, security, and access control.
5. Backup and Recovery: Protects data with regular backups and enables recovery in
case of system failures.
Users
1. Administrators: Maintains the DBMS and are responsible for administrating the
database. They are responsible to look after its usage and by whom it should be used.
2. Designers: Group of people who actually work on the designing part of the database.
3. End Users: Those who actually reap the benefits of having a DBMS. They can range
from simple viewers to sophisticated users such as business analysts.
Types of Databases
1. Hierarchical Database
● Hierarchical databases organize data in a tree-like structure where each record
has one parent record and multiple child records, forming a hierarchy.
● Records are linked together in parent-child relationships, with each child record
having only one parent.
● Examples: Information Management System (IMS) by IBM, NOMAD by NCSS,
etc.
2. Network Database
● The Network Model in a Database Management System (DBMS) is a data model
that represents data as collections of records and sets, with relationships defined
between records.
● It allow records to have multiple parent and child records, forming a network
structure
● Examples: Integrated Database Management System
3. Relational Database
● It represents data and their relationships through a collection of tables. Each
table also known as a relation consists of rows and columns.
● It uses primary keys to uniquely identify rows and foreign keys to establish
relationships between tables.
● Queries are written in SQL (Structured Query Language), which allows for
efficient data manipulation and retrieval.
● Examples: MySQL, Oracle, Microsoft SQL Server and Postgre SQL.
4. Object-oriented Database
● An object-oriented database stores data in the form of objects, similar to how
data is represented in object-oriented programming (OOP).
● Instead of tables with rows and columns like traditional databases, object
databases use complex data structures to represent data.
● Examples: db4o, Object DB, etc.
Advantages of DBMS
● Controlling of Redundancy: A DBMS allows for the organization and storage of data in
a structured manner, making it easy to retrieve and query the data as needed.
○ Data redundancy – duplication of data i.e., storing same data multiple times
● Improved Data Sharing: A DBMS provides mechanisms for controlling concurrent
access to the database, to ensure that multiple users can access the data without
conflicting with each other.
● Data Integrity: Centralized control of the data helps in permitting the administrator to
define integrity constraints to the data in the database.
○ Integrity means that the data in the database is accurate.
● Security: The DBA controls access to operational data, enforcing authorization checks
for sensitive data.
● Data Consistency: Eliminating data redundancy reduces inconsistency, simplifies
updates, and saves storage.
● Backup and recovery: A DBMS provides mechanisms for backing up and recovering
the data in the event of a system failure.
Disadvantages of DBMS
● Complexity: DBMS can be complex to set up and maintain, requiring specialized
knowledge and skills.
● Performance overhead: The use of a DBMS can add overhead to the performance of
an application, especially in cases where high levels of concurrency are required.
● Scalability: The use of a DBMS can limit the scalability of an application, since it
requires the use of locking and other synchronization mechanisms to ensure data
consistency.
● Cost: The cost of purchasing, maintaining and upgrading a DBMS can be high,
especially for large or complex systems.
● Limited Use Cases: Not all use cases are suitable for a DBMS, some solutions don’t
need high reliability, consistency or security and may be better served by other types of
data storage.
Conclusion
A Database Management System (DBMS) is an essential tool for efficiently managing,
organizing, and retrieving large volumes of data across various industries. Its ability to handle
data securely, ensure integrity, support concurrent access, and provide backup and recovery
options makes it indispensable for modern data-driven applications.
While DBMSs come with complexities and costs, their benefits in terms of data
management and security far outweigh the challenges, making them a crucial component in any
data-centric environment.
QUIZ 1
1. SPREADSHEET – It is a simple tool for organizing and analyzing data in flat structure,
best suited for small-scale data management and calculations.
2. DATA – It refers to a single piece of information that is collected, stored, and analyzed.
3. DATABASE MANAGEMENT SYSTEMS – It acts as an intermediary between the raw data
and the user, ensuring that the data is stored securely, remains consistent, and is easily
accessible
4. DATABASE MANAGEMENT SYSTEMS – It refers to the technology for creating and
managing databases. It is meant to handle an extensive collection of information.
5. DATABASE – It is a structured collection of data that is stored in an electronic device.
6. HIERARCHICAL – Records are linked together in parent-child relationships, with each
child record having only one parent.
7. RELATIONAL – A type of database model that organizes data into tables based on a
schema that defines how the data is structured.
8. OBJECT-ORIENTED – A database that stores data in the form of objects, similar to how
data is represented in object-oriented programming (OOP).
9. NETWORK – It allows more complex, many-to-many relationships between records,
offering greater flexibility but being more complex to manage.
Data Administration
● A planning and analysis function that is responsible for setting data policy and
standards, for promoting the company’s data as a competitive resource.
● It focuses on data governance, policies, and quality to ensure data is well-structured,
secure, and available for business needs. It is more strategic and business-oriented.
Database Administration
● It is more operationally oriented and is responsible for the day-to-day monitoring and
management of the company’s various active databases, as well as for providing liaison
support to program designers during application development
● Typically carries out many of the policies set by data administration
● It is more technical and focuses on managing and maintaining databases to ensure
performance, availability, and security.
DA vs. DBA
ASPECT DATA ADMINISTRATION DATABASE
(DA) ADMINISTRATION (DBA)
Responsibilities
DATA ADMINISTRATION (DA) DATABASE ADMINISTRATION (DBA)
Data Dictionaries
In a database management system (DBMS), a data dictionary is a tool that stores
important details about the data in a database, such as names, definitions, and attributes of
data elements. It holds metadata, which is simply information about the data, helping to keep
everything organized, consistent, and easy to manage.
Database Architecture
● A database architecture is a representation of DBMS design. It helps to design, develop,
implement, and maintain the database management system.
● A DBMS architecture allows dividing the database system into individual components
that can be independently modified, changed, replaced, and altered. It also helps to
understand the components of a database.
● A database stores critical information and helps access data quickly and securely.
Therefore, selecting the correct architecture of DBMS helps in easy and efficient data
management.
2. 2-Tier Architecture – 2-tier architectures consist of multiple clients connecting directly to
the database This architecture is also known as client server architecture.
Example: A banking system where the app (client) connects to a database (server) to
process transactions.
3. 3-Tier Architecture – There is another layer between the client and the server. This
intermediate layer acts as a medium for the exchange of partially processed data
between the server and the client. This type of architecture is used in the case of large
web applications.
a. User Interface (Client): Where users interact (e.g., website, app).
b. Application Layer (Middleware): Processes user requests and communicates
with the database.
c. Database Layer: Stores and retrieves data.
Example: Online shopping websites (Shopee, Lazada, Amazon) where the app connects
to a database through a web server..
Conclusion
By understanding data administration, database administration, and architecture,
organizations can implement efficient data governance strategies that support business
operations and decision-making.
As construction projects increasingly rely on digital tools and big data, well-managed
databases ensure seamless collaboration, reduce data redundancy, and enhance data-driven
decision-making.
COMMON DATABASE SOFTWARE
Civil engineers handle vast amounts of data, including survey results, material
inventories, structural analysis reports, and project schedules. Proper management of these
datasets ensures accurate decision-making, streamlined operations, and compliance with safety
regulations.
Database software helps engineers organize, store, retrieve, and analyze data
systematically, reducing errors and improving efficiency. It enables collaboration among
engineers, architects, project managers, and stakeholders by providing a centralized system for
accessing and updating critical project information.
Microsoft Access
● Microsoft Access enables business and enterprise users to manage data and analyze
vast amounts of information efficiently. The program provides a blend of database
functionality and programming capabilities for creating easy to navigate forms. Microsoft
Access is like Microsoft Excel in that you can store, edit, and view data. However,
Access has much more to offer.
● Applications:
○ Storing construction material inventory.
○ Managing project schedules and timelines.
○ Keeping track of personnel and subcontractor details.
PROS CONS
Seamless integration with Microsoft Office Performance issues – Becomes slow and
– works well with Excel and other Office inefficient for complex queries.
applications.
Cost-effective for small projects – No need Lacks advanced security – Not suitable for
for complex infrastructure. projects requiring high data security.
It struggles with handling large amounts of data and does not perform well in multi-user
environments, making it unsuitable for enterprise-level projects. Security features are also
limited, which can be a concern for projects requiring strict data protection.
MySQL
● An open-source relational database management system that is used for large-scale
engineering data storage and analysis. It works well with web applications and
Geographic Information Systems (GIS).
● Structured Query Language (SQL) a programming language used to manage and
manipulate relational databases. It allows users to create, read, update, and delete data
(CRUD operations) within databases.
● Applications:
○ Managing geotechnical and environmental data.
○ Storing and analyzing survey and topographic data.
○ Handling real-time project monitoring systems.
PROS CONS
Open-source and free – Reduces software Requires technical knowledge – Setup and
costs for companies. management can be challenging for
beginners.
Highly scalable – Can handle large datasets Lacks advanced business analytics – Less
efficiently. built-in data visualization features.
Strong community support – Many online Performance issues under heavy loads –
resources and active forums. May require optimization for high-traffic
environments.
It is highly reliable and widely used, with strong community support. However, it requires
technical expertise for setup and lacks built-in analytics tools, which may necessitate third-party
solutions. Performance can also be an issue for extremely high data loads without proper
optimization.
Oracle
● The system is built around a relational database framework in which data objects may be
directly accessed by users through SQL. It is a fully scalable relational database
architecture and is often used by global enterprises which manage and process data
across wide and local area networks. The Oracle database has its own network
component to allow communications across networks.
● Application:
○ Construction Project Management
○ Geospatial Data Management
○ Asset and Resource Management
PROS CONS
High scalability for large-scale projects Expensive licensing and maintenance costs
Excellent for managing complex data and Requires more technical expertise to
relationships manage and operate
Supports a wide variety of data types, High hardware and resource requirements
including spatial data
Reliable with a high uptime and data Longer learning curve for new users
consistency
Oracle Database is ideal for large-scale, enterprise-level Civil Engineering projects due
to its scalability, advanced data management features, and ability to handle complex data
relationships, including geospatial data. However, its high licensing costs, complex
configuration, and steep learning curve may limit its use for smaller projects.
MS SQL
● MS SQL Server is a user-friendly, affordable database management system, known for
its integration with Microsoft tools like Excel, Power BI, and Azure. It offers good
performance and scalability for most enterprise applications.
● Applications:
○ Integrates well with AutoCAD, Revit, and MS Excel, helping civil engineers with
project monitoring, reporting, and data analysis.
PROS CONS
MS SQL Server is an accessible and cost-effective DBMS that works well for small to
medium-sized Civil Engineering projects. It offers ease of use, strong integration with Microsoft
products, and efficient management of project schedules, budgets, and resources. While it may
not be as scalable or feature-rich as Oracle for complex projects, it remains a solid choice for
those looking for an affordable, user-friendly database solution.
Conclusion
Choosing the right database software depends on project size, complexity, and required
features. Civil engineers benefit greatly from database management systems in organizing
construction data, improving project efficiency, and ensuring compliance with regulations.
Mastering these tools will enhance engineering workflows and decision-making processes,
ultimately leading to better project management and execution.