220 likes | 382 Views
IST 318 Database Administration. Lecture 1 What Is DBA?. Topics. DBMS and DB Applications Database, Data, and System Administration DBA Tasks Types of DBAs Test and Production Environments. DB Applications. Data is the lifeblood of computerized applications
E N D
IST 318 Database Administration Lecture 1 What Is DBA?
Topics • DBMS and DB Applications • Database, Data, and System Administration • DBA Tasks • Types of DBAs • Test and Production Environments
DB Applications • Data is the lifeblood of computerized applications • In many ways, business today is data • Using DBMS is the efficient way for data persistence and manipulation • DBA is at the center of the development lifecycle
Database vs. DBMS • Database • An organized store of data • Data can be accessed by names • DBMS • Software that enable users or programmers to share and manage data
Data Administration • Concentrate on the business aspects • Business lexicon logical data model • Requirements gathering, analysis, and design • Typical tasks include • Identifying and cataloging business data • Producing conceptual and logical data models • Creating enterprise data model • Setting data policies and standards • Concerns more about metadata
Metadata • Metadata is often described as data of data • Definition • Business name • Abbreviation • Type and length/accuracy • Domain, or range of valid values
Data Models – three levels • Conceptual model • Outlines data requirements at a very high level • Describes data mostly in business context • Logical model • Provides in-depth details of data types, lengths, relationships, and cardinality • Physical model • Defines the way data is organized in physical medium
DBA vs. DA DBAs have to take care the first two levels if no DA roles are implemented in an organization
System Administration • SAs are more concerned about the installation and setup of DBMS • Typical SA tasks include • Underlying OS systems • DBMS Installation, modification, and support • System configurations enabling DBMS to work with other software systems
DBA Tasks • Ensuring data and databases are useful, usable, available, and correct • Typical DBA tasks include • DB design and implementation • Performance monitoring and tuning • Availability • DB security and authorization • Backup and recovery • Data integrity • DBMS release migration
DB Design & Implementation • Understand and adhere to sound relational design principles • Relational theories and ER diagrams • DBMS specifics • Understanding conceptual/logical models and being able to transform to physical DB implementation • Poor design can result in poor performance
Performance Monitoring & Tuning • Performance = the rate at which the DBMS supplies info to its users • Influenced by five factors • Workload • Throughput • Resources • Optimization • Contention
Availability • Multifaceted process • Keep the DBMS up and running • Minimize the downtime required for admin tasks • Technologies and up-front planning can help
DB Security & Authorization • Ensure data is available only to authorized users by granting privileges to different (groups of) users • Actions need to be controlled • Creating/altering DB objects and/or their structures • Reading/modifying data from tables • Starting/stopping DB and/or associated objects • Running stored procedures or DB utilities
Backup & Recovery • Be prepared to recover DB in the event of • Improper shutdown of DB applications, due to • Software error • Human error • Hardware failure • Types of recovery • Recover to current • Point-in-time recovery • Transaction recovery
Data Integrity • Store the correct data in the correct way • Physical integrity • domains and data types • Semantic integrity • quality data with no redundancy • Internal integrity • internal structures and code
Desired Skill Set • SQL + PL/SQL • System specific operations and practices • Data modeling methodologies and tools • Networking (client/server) • O/S • Programming (conventional and web-oriented) • Transactional/messaging systems
Types of DBAs • System DBA • DB architect • DB analyst • Data modeler • Application DBA • Task-oriented DBA • Data warehouse administrator
Test & Production • At least two separate environments must be created for quality DB implementation • Testing (aka development) • QA (aka staging) • Production • Differences • They should share the same configuration • They don’t need to be identical • Testing DB may have only a subset of data