Object and Object-Relational Databases - concepts and applications - Question Bank

1. Which feature of Object Databases allows for the definition of custom data types that can encapsulate both data and behavior?
A) Normalization
B) User-Defined Types (UDTs) or Abstract Data Types (ADTs)
C) Primary Keys
D) Indexing
2. What is a potential performance bottleneck in Object-Relational Databases when implementing complex object hierarchies?
A) The overhead of object-relational mapping (ORM) and the need for multiple table joins.
B) The lack of support for basic data types.
C) The inability to perform any form of indexing.
D) The absence of query processing capabilities.
3. What is the primary goal of an Object Database Management System (ODBMS)?
A) To store and manage data in tables.
B) To provide a system for creating, storing, and accessing data as objects.
C) To manage network connections.
D) To perform mathematical calculations.
4. What is a key advantage of Object Databases for applications dealing with version control systems or configuration management?
A) Efficient storage of large, unstructured text files.
B) Natural representation and querying of object histories and relationships.
C) Simple management of user access privileges.
D) High performance for numerical computations.
5. In ORDBs, what does the term 'Object SQL' or 'SQL Object Extensions' refer to?
A) A completely new query language for objects.
B) Extensions to standard SQL to support object-oriented concepts like user-defined types, inheritance, and methods.
C) A simplified version of SQL for basic data retrieval.
D) A query language specifically for binary large objects.
6. What is a 'Collection-Member' relationship in Object Databases?
A) A relationship where one object directly references another object.
B) A relationship where an object contains or is part of a collection of other objects.
C) A relationship defined by a foreign key constraint.
D) A relationship indicating ownership.
7. What is 'Late Binding' in Object Databases, often associated with Polymorphism?
A) The process of binding object attributes at compile time.
B) The resolution of method calls to the correct implementation at runtime, based on the object's actual type.
C) The initial creation of an object in the database.
D) The connection establishment to the database.
8. Which of the following best describes a 'Composite Object' in Object Database terms?
A) An object composed of multiple primitive data types.
B) An object that consists of other objects, forming a hierarchical structure.
C) An object that represents a complex mathematical formula.
D) An object that combines data from multiple tables.
9. What is the purpose of 'Persistence Transparency' in Object Databases?
A) To hide the complexity of the underlying hardware.
B) To make the distinction between in-memory objects and persistent database objects invisible to the programmer.
C) To encrypt all data stored in the database.
D) To automatically optimize query performance.
10. What is a potential drawback of ORDBs compared to pure Object Databases when dealing with very complex object hierarchies?
A) They might require more complex mapping and potentially lead to performance overhead.
B) They lack support for any object-oriented features.
C) They are too simple to handle complex data.
D) They are slower at storing basic data types.
11. What is 'Identity' in the context of Object Databases, as opposed to 'Value'?
A) Identity refers to the attributes of an object, while Value refers to its methods.
B) Identity is a unique, immutable OID, while Value refers to the actual data content of the object's attributes.
C) Identity is the class name, while Value is the object's state.
D) Identity is transient, while Value is persistent.
12. Which application domain benefits significantly from the ability of Object Databases to model complex, nested data structures like XML documents or JSON data?
A) Online Transaction Processing (OLTP)
B) Web Services and Data Integration
C) Simple File Storage
D) Basic Arithmetic Calculations
13. What is a key difference between Object Databases and Object-Relational Databases regarding their origin?
A) Object Databases evolved from relational models, while ORDBs evolved from object models.
B) Object Databases were designed from scratch for object paradigms, while ORDBs extend relational databases with object features.
C) Both originated independently from different paradigms.
D) ORDBs are older than Object Databases.
14. What is 'Object Versioning' in some advanced Object Database systems?
A) The ability to assign unique versions to each object.
B) The mechanism to track and manage different revisions of an object over time.
C) A way to limit the number of objects in a collection.
D) A method for encrypting object data.
15. What is the role of a 'Query Optimizer' in an Object Database system?
A) To enforce data integrity constraints.
B) To translate object-oriented queries into low-level data access operations and find the most efficient execution plan.
C) To manage concurrent access to the database.
D) To perform backups and recovery.
16. What is a 'Collection Class' in an Object Database?
A) A class that defines the structure of the database itself.
B) A class that represents a container for other objects (e.g., lists, sets, arrays).
C) A class used for managing user permissions.
D) A class that holds metadata about the database.
17. Which of the following is a characteristic of Object Databases that helps manage complex relationships between objects?
A) Foreign Keys
B) Direct object references or pointers
C) Primary Keys
D) Normalization techniques
18. What is a 'Method Dispatch' mechanism in Object Databases?
A) The process of deciding which method implementation to execute based on the object's type.
B) The assignment of methods to database tables.
C) The retrieval of object attributes.
D) The deletion of unused methods.
19. What is an 'Object Cache' in Object Database systems?
A) A temporary storage for query results.
B) A memory area that holds frequently accessed database objects for faster retrieval.
C) A mechanism for encrypting sensitive data.
D) A log of database transactions.
20. In an Object-Relational Database, what is a 'Type Extender'?
A) A mechanism to extend the relational model with new data types and functions.
B) A tool for compressing large data types.
C) A function to automatically convert data between types.
D) A way to define primary keys.
21. What is the main advantage of Object Databases for storing and querying recursive data structures (like organizational charts or bill-of-materials)?
A) They require complex SQL JOINs.
B) They map naturally to object structures, simplifying traversal.
C) They are stored as simple strings.
D) They are not supported by object databases.
22. What is a 'Database Programming Language' (DBPL) in the context of Object Databases?
A) A language used for designing database schemas.
B) A programming language that seamlessly integrates database operations and object manipulation.
C) A query language like SQL.
D) A language for network communication between database servers.
23. What is a 'Complex Object' in the context of Object Databases?
A) An object with a very large number of attributes.
B) An object that contains other objects or references to other objects.
C) An object that is difficult to query.
D) An object stored in a complex format.
24. Which type of data is often poorly handled by traditional relational databases but well-suited for object databases?
A) Simple numerical values.
B) Short text strings.
C) Hierarchical or graph-like structures.
D) Fixed-length records.
25. What does the term 'Schema Evolution' refer to in Object Databases?
A) The process of physically storing objects on disk.
B) The ability to modify the structure of classes and their relationships over time without losing existing data.
C) The automatic creation of new database instances.
D) The process of backing up the database.
26. In Object-Relational Databases, what is a 'Table Inheritance' concept?
A) A mechanism where tables are related through foreign keys only.
B) A way to define a table that inherits columns and constraints from another table.
C) The process of joining multiple tables.
D) A type of database normalization.
27. What is a primary use case for Object Databases in scientific research, such as genomics or particle physics?
A) Storing large volumes of structured, tabular experimental results.
B) Managing complex, multi-dimensional datasets and experimental data.
C) Handling simple user account information.
D) Performing basic financial transactions.
28. Which term describes the ability of different objects to respond to the same message (method call) in different ways?
A) Inheritance
B) Encapsulation
C) Polymorphism
D) Abstraction
29. What is a 'Subclass' in an inheritance hierarchy within an Object Database?
A) A class from which other classes inherit properties.
B) A class that inherits properties from another class.
C) A base class with no derived classes.
D) A class that is never instantiated.
30. What is a 'Superclass' in an inheritance hierarchy within an Object Database?
A) A class that inherits properties from another class.
B) A class from which other classes inherit properties.
C) A class that represents a collection of objects.
D) A class with no attributes.
31. Consider a 'Person' class with attributes 'name' and 'age'. An object 'John' of class 'Person' would have specific values for 'name' and 'age'. What is 'John' called in Object Database terminology?
A) A Class
B) A Schema
C) An Instance (or Object)
D) A Type
32. What is a 'Method' in an Object Database context?
A) A data field describing an object.
B) A function or procedure associated with a class that defines its behavior.
C) A unique identifier for an object.
D) A link between objects.
33. What challenge does Object Database Mapping (ODM) address?
A) Mapping relational data to object structures.
B) Mapping object-oriented programming language objects to database objects.
C) Mapping hierarchical data to relational tables.
D) Mapping XML data to JSON structures.
34. Which of these is NOT a core concept directly inherited from OOP into Object Databases?
A) Class
B) Object Identity
C) Relational Schema
D) Inheritance
35. What does 'Persistence' mean in the context of Object Databases?
A) Objects can only exist within the scope of a program's execution.
B) Objects can be saved and retrieved from the database even after the program terminates.
C) Objects are automatically deleted when no longer referenced.
D) Objects are immutable and cannot be changed.
36. In an Object Database, what is a 'Collection'?
A) A single object with multiple attributes.
B) A group of objects of the same class.
C) A mechanism for storing methods.
D) A type of index.
37. What is a potential disadvantage of Object Databases compared to Relational Databases?
A) Less flexibility in schema design.
B) Lack of support for complex queries.
C) Maturity and standardization of query languages and tools.
D) Lower performance for simple data retrieval.
38. Which of the following is a typical application area for Object Databases?
A) Simple transactional systems like banking.
B) Web content management systems.
C) Computer-Aided Design (CAD) and Computer-Aided Manufacturing (CAM).
D) Inventory management systems.
39. What is a common query language extension used in ORDBs to support object-oriented features?
A) SQL/PSM
B) SQL/OLAP
C) SQL:1999 and later standards (e.g., SQL/Object)
D) XQuery
40. In ORDBs, how are complex data types typically handled?
A) They are broken down into primitive types and stored in separate tables.
B) They are represented as User-Defined Types (UDTs) or abstract data types.
C) They are stored as BLOBs (Binary Large Objects) without structure.
D) They are not supported and must be managed externally.
41. What is an 'Object-Relational Database' (ORDB)?
A) A database that only stores objects and no relational data.
B) A database that exclusively uses object-oriented principles.
C) A hybrid database system that combines features of both relational and object databases.
D) A database designed solely for relational algebra operations.
42. What is the primary advantage of using Object Databases for complex data types like multimedia or CAD designs?
A) Simpler query languages.
B) Better support for tabular data representation.
C) Direct mapping of complex data structures and relationships.
D) Reduced storage space requirements.
43. What is 'Encapsulation' in Object Databases?
A) The ability to treat objects of different classes in a uniform way.
B) The bundling of data (attributes) and methods (behavior) that operate on the data within a single unit (object).
C) The mechanism for creating new classes from existing ones.
D) The process of breaking down complex systems into simpler components.
44. Which feature allows an object in an Object Database to inherit properties and behaviors from its parent class?
A) Polymorphism
B) Encapsulation
C) Inheritance
D) Abstraction
45. What is a 'Class' in an Object Database schema?
A) An instance of a data structure.
B) A blueprint or template defining the structure (attributes) and behavior (methods) of a set of objects.
C) A physical storage unit for objects.
D) A type of index used for faster retrieval.
46. In the context of Object Databases, what does 'Object Identity' (OID) represent?
A) The value of an attribute within an object.
B) A unique, system-generated identifier for each object, independent of its attribute values.
C) The class to which an object belongs.
D) The relationship between two objects.
47. Which characteristic of Object-Oriented Programming (OOP) is directly mirrored in Object Databases?
A) Relational Algebra
B) Normalization
C) Encapsulation and Inheritance
D) SQL Queries
48. What is the fundamental concept behind an Object Database?
A) Data is stored in tables with rows and columns.
B) Data is stored as objects, similar to objects in object-oriented programming.
C) Data is stored in a hierarchical structure like a tree.
D) Data is stored as key-value pairs.