Data Management Components
Data Management Components
Management Services: There are a number of basic Data Services, such as database administration and data maintenance. In addition, data modelling also sits within this service. Database administration includes maintenance of the database environment with recoverability, integrity, development, and testing support services. Data maintenance includes the adding, deleting, changing, and updating of data elements. Usually, data is edited and maintained at a slightly higher level of abstraction that takes into account the content of the data, such as text, images, and scientific or financial information. Data modelling involves the creation of data structures and conceptual, logical, and physical data models that adhere to concrete business requirements. It also enables the transformation of data among these models.
Query Services: One of the basic services is to submit SQL queries against a database. SQL is a programming language for querying and modifying data and managing databases and database objects. In essence, SQL enables the retrieval, insertion, updating, and deletion of data stored in a relational DBMS.
Continuous Query Services: Generically speaking, these services enable users to receive new results when available. One field of application is the Internet, where we are faced with large amounts of frequently updated data. These services are especially important to allow data streams to be managed effectively. A continuous query over those data streams is often called a streaming query.
Following are some examples of key requirements that need to be addressed by the Continuous Query Services:
- Multiple data streams from different sources have to be continuously merged and aggregated.
- A rapidly changing aggregation hierarchy has to be maintained with corresponding drill-down and roll-up capabilities.
- Subscribers or observers require continuous publication of aggregations (for instance, multiple times per minute or once every second.)
Storage Model Services: The storage model describes the relationship between key DBMS objects, such as instances and databases, table spaces and tables, containers or storage patchs, physical machine memory, and physical disks associated to the machine. One of the aspects of the storage model is to describe the mapping of logical DBMS objects, such as a table to the physical disks. Modern relational DBMS systems also contain automatic storage mechanisms that would, for instance, allow fo space allocation to grow automatically. Another key capability of the storage model is to support a variety of different data types and data structures, such as native support for XML type documents. The storage model needs to support functionality such as storing, querying, and modifying the XML data with required performance characteristics.
Performance Optimization Services: Driving, monitoring, and optimizing for performance are requirements to be addressed by the Data Management Component. This relates to performance requirements in terms of accommodating a high number of users, throughput (number of transactions per second), query response times, and so on. In addition, performance optimization needs to include capabilities to optimize for a mixed workload such as Online Transactional Processing (OLTP) and decision support applications.
Connector Services: These are essentially data access services. Data access typically refers to capabilities related to storing, retrieving, or acting on data that is stored in a database or other repository. Historically, different access methods and programming languages were required for every repository, different DBMS’s, or file systems, where many of these repositories stored their content in different and incompatible formats. Standardized languages, access methods, and formats have been created to serve as interfaces for the often proprietary systems. Well-established standards include SQL, Object DataBase Connectivity (ODBC), Java DataBase Connectivity (JDBC), ActiveX® Data Object.NET (ADO.NET), XML, XQUery, and Xpath. Brand-new connector service standards support JMS, Web services using SOAP/HTTP, RSS, JSON, and REST, making operational data consumption for Mashup applications, lightweight Web applications, or other systems using these new protocols seamless.
Data Indexing Services: Simply speaking, a data index is a data structure that is added to a table to provide faster access to the data. This is achieved by reducing the number of blocks that the DBMS has to retrieve and check. In addition to performance improvements (faster data access), another objective is also to ensure uniqueness of data values in a table. Furthermore, data indexing services need to address the needs of different application types, such as streaming applications, enterprise search, intelligent mining, and so on.
In-Memory DB Services: An in-memory database management system primarily relies on main memory for computer data storage, contrary to traditional DBMS systems that emply a disk storage mechanism. Naturally, in-memory databases can be significantly faster than disk-optimized databases because the internal optimization algorithms are more straightforward, and data records don’t have to be transferred from disk to memory.
Calculation Engine Services: These are the basic calculation services that are inherent in the DBMS system. For example, they allow aggregations by grouping and ordering of result sets and can calculate average figures or statistical samples. More complex calculations, for instance aggregations in cubes, are typically delivered through DW capabilities that are part of the Analytical Applications Component.
