Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
376,59 KB
Nội dung
Module8:DesigningDataServices THIS PAGE LEFT INTENTIONALLY BLANK Module 1: Course Overview Module 4: Deriving a Logical Data Design Module 5: Normalizing the Logical Data Design Module 6: Deriving a Physical Data Design Module 7: Implementing Data Integrity Module 2: Solution Design Processes Module 3: Using a Conceptual Design for Data Requirements Module8:DesigningDataServicesModule 9: Data Storage Considerations DesigningDataServices and Data Models Overview of DataServices Accessing Host-Based Systems Accessing Relational Data Activity 8.1: Selecting Data Access Technologies Module8:DesigningDataServicesModule8:DesigningDataServices 171 ! !! ! Overview " Overview of DataServices " Accessing Relational Data " Accessing Host-Based Systems " Activity 8.1: Selecting Data Access Technologies " Review In this module . In this module . At the end of this module, you will be able to: " Determine the role of dataservices for a business solution. " Describe the issues involved in distributing data access technologies. " List the primary considerations for choosing a data access technology. " List and describe primary data access technologies from Microsoft ® . " Determine the appropriate data access technology for a business solution. Slide Objective To provide an overview of this module’s topics and objectives. Lead-in In this module, you will learn how to design data services. 172 Module8:DesigningDataServices ! !! ! Overview of DataServices " DataServices Design " Deploying DataServices In this section . In this section . In this section, you will learn the basic concepts of data services. You will also learn the benefits of using different types of dataservices and services-based design in building a data-centric solution. Slide Objective To introduce data service fundamentals. Lead-in Before deciding on a data access technology, you need to understand the fundamentals of data services. Module8:DesigningDataServices 173 DataServices Design " Separates business services from the application’s data store " Provides basic create, retrieve, update, and delete capabilities " Performs data aggregation " Provides data integrity User Interface User Interface User Services User Services Business Services Business ServicesDataServicesDataServicesData Store Data Store As discussed in Module 2, “Solution Design Processes,” an application’s design can be represented as multiple tiered services. Within these tiered services, dataservices act as an intermediary between the application’s business services and its data store. Thus, as an application’s data store changes, as a data store’s structure changes, or as multiple data stores are consolidated, the higher levels of the application, from the business services up, do not need to be changed. Dataservices can be grouped into three categories: basic data services, data aggregation, and data integrity. (Data integrity was already discussed in Module 7, “Implementing Data Integrity.”) This module focuses on basic dataservices and data aggregation. Basic dataservices Basic dataservices are often referred to as CRUD: create, retrieve, update, and delete. These dataservices encapsulate and thus simplify the many steps required to perform these operations. The development team can create COM components to provide CRUD for a particular data store or multiple data stores. In the latter case, the components simplify access by presenting a single interface between the data stores and the other application services. Data aggregation Data aggregation services manipulate and derive information required by the application. A typical data aggregation service might summarize the records within the data store and present only summarized information, not individual data records. Other aggregation services might derive information based on columns within a data store, such as multiplying two columns to present a third data column to the application. Slide Objective To introduce data service design. Lead-in When designing an application, it is important to consider the different layers that can influence the data access technology. 174 Module8:DesigningDataServices Identifying dataservices To determine what dataservices a solution needs, you should perform the following: " Examine the number of data stores that the application accesses. " Identify the basic dataservices required by the application. " Look for information derived from data records that is required by the application. Module8:DesigningDataServices 175 Deploying DataServices " Deployment of logical design " Client (Web browsers and Windows) " Application servers " Database servers Database Database Server Server Application Servers Application Servers Client Client Deciding where dataservices reside and how they will be accessed can be complicated. All dataservices must reside somewhere in a physical design, so you will need to weigh the advantages and disadvantages of each possible configuration. Depending on the architecture used in building the solution, dataservices can reside in any one of three locations: " Client Dataservices reside in the client application typically as information stored in a recordset object. Often, this recordset object does not maintain a continuous connection to the data source, in which case it is called a disconnected recordset. " Application server Dataservices are abstracted into a set of objects that reside on a server. This application server acts as a proxy on the client’s behalf and accesses and manipulates data according to a set of rules by using COM components. " Database server Dataservices are in the database engine. Stored procedures or triggers are used to help automate data manipulation and process basic rules. Slide Objective To explain both the locations to which dataservices can be deployed and several factors that influence their deployment. Lead-in Data service deployment is more complex than it initially appears to be. Here are a few considerations that should be investigated. 176 Module8:DesigningDataServices The following table identifies some advantages and disadvantages of using one location over another. Location Advantages Disadvantages Client Fewer client requests to the data store. The client will not be required to query the data store as often. This decrease in data queries can result in improved client performance after the initial data recordset is created at the client. More maintenance. For example, if the access method is changed or a bug in the code is corrected, a new version needs to be recompiled and distributed. Depending on the type of user interface (Web based or Microsoft ® Windows based) this process could be time consuming and costly. Typically, Windows-based applications are more difficult to redeploy to clients than Web-based applications. Increased network traffic. Multiple clients simultaneously requesting a recordset could put a large load on the network, depending on the size of the recordset. Increased client resources. Increasing the amount of processing required by the client means increasing the client’s capacity to handle the excess load. Application server Easier maintenance. The increased cost of an application server might be offset by the maintainability of the system. Any necessary changes can be made on one or a few computers, as opposed to possible thousands of clients. Scaleable. As the load on the system increases, additional application servers can be added to distribute the increase. Increased cost. Introducing a middle tier into a solution will probably increase the solution’s overall cost. The added cost is associated not only with the hardware and software of the computer(s) serving as the application server, but also in the development costs of creating and maintaining the code that will serve the data access requests. Database server Less network traffic. If recordsets from multiple sources were needed, they could be retrieved and processed in one central location, as opposed to each client receiving a copy of the data. Easier maintenance. The code that establishes the connections would be in fewer locations and provide faster and easier access for maintenance. Improved security. Security is handled at the data source, rather than remotely. Possible bottleneck. As the load on the system grows, having one point of connectivity could present a bottleneck. Module8:DesigningDataServices 177 ! !! ! Accessing Relational Data " OLE DB and ODBC " ADO, RDO, and DAO " Selecting a Data Access Technology In this section . In this section . In this section, you will learn about various data access technologies and some of the factors that you should take into account when deciding which technology is most suitable for your application. Slide Objective To introduce data access technologies. Lead-in This section examines various data access technologies and factors that can influence your decision about which to use. 178 Module8:DesigningDataServices OLE DB and ODBC " OLE DB Relational and nonrelational data access Flexible and efficient COM Database Database OLE DB Provider OLE DB Provider ODBC Driver ODBC Driver " ODBC Relational data access Interoperability Vendor-neutral OLE DB This set of interfaces is Microsoft’s component database architecture for providing data access. The following characteristics of OLE DB might influence your choice to implement OLE DB as your data access method: " OLE DB can access relational and nonrelational databases. It provides universal data integration of an enterprise network from mainframes to desktops, regardless of the data type. " OLE DB provides a flexible and efficient database architecture that offers applications, compilers, and other database components efficient access to Microsoft and third-party data stores. " OLE DB is the fundamental COM building block for storing and retrieving records. It unifies Microsoft’s strategy for database connectivity. OLE DB is used throughout Microsoft’s line of applications for accessing data stores. ODBC Open Database Connectivity (ODBC) is a widely accepted application programming interface (API) for database access. ODBC is widely supported because of the following characteristics: " ODBC was primarily developed for access to relational data stores. Although additional drivers exist for nonrelational data stores, performance of nonrelational data stores might not be adequate. " ODBC is designed for maximum interoperability; it is designed to maximize the ability of a single application to access different DBMSs with the same source code. Applications call functions in the ODBC interface. These functions are implemented in data store-specific modules called drivers, which isolate an application for a specific data store call. " ODBC provides an open architecture that allows multiple vendors to use a single method to access data stored in a variety of proprietary personal computer, minicomputer, and mainframe data stores. Slide Objective To introduce OLE DB and ODBC as the underlying technologies with which to access data. Lead-in OLE DB and ODBC both have characteristics that make them sound choices for providing data access. [...]... for each layer Module 8:DesigningDataServices 191 Looking Forward Slide Objective To explain where you will go from here Module 9: Data Storage Considerations Lead-in The next module discusses data storage Module 1: Course Overview Module8:DesigningDataServicesModule 7: Implementing Data Integrity Module 2: Solution Design Processes DesigningDataServices and Data Models Module 3: Using a... Module 3: Using a Conceptual Design for Data Requirements Module 4: Deriving a Logical Data Design Module 6: Deriving a Physical Data Design Module 5: Normalizing the Logical Data Design In the next module, you will learn about data storage You will examine topics such as the following: " Storage technologies " Storage considerations 192 Module8:DesigningDataServices THIS PAGE INTENTIONALLY LEFT... system 190 Module8:DesigningDataServices Review Questions Slide Objective To reinforce this module s objectives by reviewing key points " Determine the role of dataservices for a business solution Lead-in " Describe the issues involved in distributing data access technologies " List the primary considerations for choosing a data access technology " List and describe Microsoft’s primary data access.. .Module 8:DesigningDataServices 179 ADO, RDO, and DAO Slide Objective To introduce ADO, RDO, and DAO and discuss how they work with OLE DB and ODBC to access data Jet Database Lead-in Non-Jet Database OLE DB and ODBC provide low-level data access Most likely, you will also want to select a higher-level interface Database Database ODBC Driver ODBC Driver ODBC... host-based services protocol conversion and communication management Module 8:DesigningDataServices 185 Accessing Host-Based Data and Applications Slide Objective To explain the role of ADO when accessing data in an SNA environment with current applications Lead-in To access legacy data, you need a data access method Two common methods are ADO and COMTI " Using ADO to access host-based data on: $... Host-Based Data Access Design " Accessing Host-Based Data and Applications " Selecting a Legacy Data Access Technology In this section In this section In this section, you will examine the need to continue to access legacy data, and you will identify some technologies that simplify data access implementations 184 Module8:DesigningDataServices Host-Based Data Access Design Slide Objective To explain... the data might need to filter through several layers of code and drivers, resulting in slower performance Module 8:DesigningDataServices 183 ! Accessing Host-Based Systems Slide Objective To explain why access to host-based systems containing legacy data needs to be maintained Lead-in This section discusses legacy data and some considerations for deciding how to access the data " Host-Based Data. .. potential data access issues and choose the appropriate data access method for a given scenario 188 Module8:DesigningDataServices ! Review Slide Objective To explain the purpose of this section and what students have learned Lead-in This section reviews what you have learned and prepares you for the next module " Guidelines " Review Questions " Looking Forward In this section In this section Module 8:. .. need to design your services appropriately, partitioning your services into user, business, and dataservices Plan for legacy data access In many enterprises, a great amount of data is critical for keeping the business running If you develop a new enterprise application, you should consider how fast you can integrate the data, if you can access all the data required, and whether the data needs to reside... complex aspects of stored procedures and result sets 180 Module8:DesigningDataServices DAO DAO provides a framework for using code to create and manipulate both relational and Jet-based databases DAO also provides an interface to the Jet engine to manipulate the structure and data within a Jet database If DAO is used against a non-Jet database, then the Jet engine actually uses ODBC to translate . for Data Requirements Module 8: Designing Data Services Module 9: Data Storage Considerations Designing Data Services and Data Models Overview of Data Services. design data services. 172 Module 8: Designing Data Services ! !! ! Overview of Data Services " Data Services Design " Deploying Data Services