VIEW UPDDELINS SCALING dbms fusion wash
DownloadTélécharger
Actions
Vote :
ScreenshotAperçu
Informations
Catégorie :Category: nCreator TI-Nspire
Auteur Author: SPITZER2001
Type : Classeur 3.0.1
Page(s) : 1
Taille Size: 3.46 Ko KB
Mis en ligne Uploaded: 20/11/2024 - 12:18:49
Uploadeur Uploader: SPITZER2001 (Profil)
Téléchargements Downloads: 2
Visibilité Visibility: Archive publique
Shortlink : http://ti-pla.net/a4328878
Type : Classeur 3.0.1
Page(s) : 1
Taille Size: 3.46 Ko KB
Mis en ligne Uploaded: 20/11/2024 - 12:18:49
Uploadeur Uploader: SPITZER2001 (Profil)
Téléchargements Downloads: 2
Visibilité Visibility: Archive publique
Shortlink : http://ti-pla.net/a4328878
Description
Fichier Nspire généré sur TI-Planet.org.
Compatible OS 3.0 et ultérieurs.
<<
Discuss two scenarios where a view can be helpful in a database management system. Answer (Discuss two benefits of views): Solution: A view is a relation defined by a query and there are many benefits to views: " Views help provide logical data independence. That is, if applications execute queries against views, we can change the conceptual schema of the database without changing the applications. We only need to update the view definitions. " Views can help increase physical data independence: We can split base tables into smaller tables horizontally or vertically and hide this data organization behind a view. " Views can help secure the data by limiting access to that data: We can create views that only reveal the information users are allowed to see. We can then grant users access to the views instead of the base tables. " Views can help encapsulate complex queries. " Views can speed-up computations if we materialize the content of a view instead of re-computing it whenever the view is used. Explain why it is not always possible to perform SQL UPDATE/DELETE/INSERT statements on top of a view. Answer (Explain why updating through a view is not always possible): Solution: Updates on views must be translated into one or more updates on base relations. For some views, the translation can be done in an unambiguous way. In that case, updates are allowed. For example, if a view selects tuples from a relation that satisfy a simple condition, then updates on the view can be translated into updates on the base table in a straightforward fashion. In other cases, however, there may not be one unambiguous translation. For example, if a view joins two tables together and a user wants to delete a tuple from the view, that delete operation can be translated into deleting one or more tuples from one or both of the underlying tables. Depending on how we would implement the delete operation, additional tuples might also disappear from the view, which would be an undesirable side-effect. For such a view, the only reasonable solution is thus to disallow updates. When it is possible to perform updates on a view, the view is called updatable. Answer (Discuss the challenge of scaling a relational DBMS): Solution: In a relational DBMS, the most difficult feature to scale are transactions. If a database grows such that it no longer fits on one server but must instead be spread across multiple servers, then a single transaction may update data on multiple machines. In order to provide ACID properties, the transaction must be committed using an expensive two-phase commit protocol that requires multiple rounds of communication between the machines involved. If a database fits on one machine but must support a high transaction rate, scalability is also a challenge. One solution is to replicate the database such that the requests can be spread across the replicas. For queries that only read data, this approach works very well. In the case of updates, however, the challenge is in keeping the replicas up-to-date. If we need to propagate each update synchronously to all replicas, updates will be slow. If we return to the user without propagating the update to all replicas, some operations can end-up reading stale values and we also risk losing recent updates in case of failures. Finally, parallel queries that read and process a lot of data nicely scale but they also use a lot of resources. Company A recently bought company B. The two companies want to integrate their databases. Indicate three challenges that the integration will face. For each challenge give a concrete example. Answer (Indicate three challenges of data integration with concrete examples:) Solution: Multiple solutions were possible including: " DBMS heterogeneity: e.g., one company stores its data in a relational system while the other one uses a semi-structured system. " Schema heterogeneity: e.g., in one database the employee information can be stored in one table, while it can be spread across multiple tables in the other database. " Data type heterogeneity: e.g., unique employee identifiers can be strings in one database and integers in the other. " Value heterogeneity: e.g., the cashier position in one database could be called associate in the other database. " Semantic heterogeneity: e.g., the salary for an employee can be recorded as an hourly before tax value in one database and as a weekly, after-tax value with lunch allowance in the other database Made with nCreator - tiplanet.org
>>
Compatible OS 3.0 et ultérieurs.
<<
Discuss two scenarios where a view can be helpful in a database management system. Answer (Discuss two benefits of views): Solution: A view is a relation defined by a query and there are many benefits to views: " Views help provide logical data independence. That is, if applications execute queries against views, we can change the conceptual schema of the database without changing the applications. We only need to update the view definitions. " Views can help increase physical data independence: We can split base tables into smaller tables horizontally or vertically and hide this data organization behind a view. " Views can help secure the data by limiting access to that data: We can create views that only reveal the information users are allowed to see. We can then grant users access to the views instead of the base tables. " Views can help encapsulate complex queries. " Views can speed-up computations if we materialize the content of a view instead of re-computing it whenever the view is used. Explain why it is not always possible to perform SQL UPDATE/DELETE/INSERT statements on top of a view. Answer (Explain why updating through a view is not always possible): Solution: Updates on views must be translated into one or more updates on base relations. For some views, the translation can be done in an unambiguous way. In that case, updates are allowed. For example, if a view selects tuples from a relation that satisfy a simple condition, then updates on the view can be translated into updates on the base table in a straightforward fashion. In other cases, however, there may not be one unambiguous translation. For example, if a view joins two tables together and a user wants to delete a tuple from the view, that delete operation can be translated into deleting one or more tuples from one or both of the underlying tables. Depending on how we would implement the delete operation, additional tuples might also disappear from the view, which would be an undesirable side-effect. For such a view, the only reasonable solution is thus to disallow updates. When it is possible to perform updates on a view, the view is called updatable. Answer (Discuss the challenge of scaling a relational DBMS): Solution: In a relational DBMS, the most difficult feature to scale are transactions. If a database grows such that it no longer fits on one server but must instead be spread across multiple servers, then a single transaction may update data on multiple machines. In order to provide ACID properties, the transaction must be committed using an expensive two-phase commit protocol that requires multiple rounds of communication between the machines involved. If a database fits on one machine but must support a high transaction rate, scalability is also a challenge. One solution is to replicate the database such that the requests can be spread across the replicas. For queries that only read data, this approach works very well. In the case of updates, however, the challenge is in keeping the replicas up-to-date. If we need to propagate each update synchronously to all replicas, updates will be slow. If we return to the user without propagating the update to all replicas, some operations can end-up reading stale values and we also risk losing recent updates in case of failures. Finally, parallel queries that read and process a lot of data nicely scale but they also use a lot of resources. Company A recently bought company B. The two companies want to integrate their databases. Indicate three challenges that the integration will face. For each challenge give a concrete example. Answer (Indicate three challenges of data integration with concrete examples:) Solution: Multiple solutions were possible including: " DBMS heterogeneity: e.g., one company stores its data in a relational system while the other one uses a semi-structured system. " Schema heterogeneity: e.g., in one database the employee information can be stored in one table, while it can be spread across multiple tables in the other database. " Data type heterogeneity: e.g., unique employee identifiers can be strings in one database and integers in the other. " Value heterogeneity: e.g., the cashier position in one database could be called associate in the other database. " Semantic heterogeneity: e.g., the salary for an employee can be recorded as an hourly before tax value in one database and as a weekly, after-tax value with lunch allowance in the other database Made with nCreator - tiplanet.org
>>