COMP2211 Networks and Systems 2022Python

Java Python COMP2211-WE01

Networks and Systems

2022

Section A Databases

Question 1

(a)  Consider the XML document below.

<?XML VERSION = "1.0" STANDALONE = "yes"?> <Collection> <MusicCD price = "22" SongsNumber = "14" category = "Rock"> <title> Silver Stone </title> <artist> Anton Vardis </artist> <artist> John Dalaras </artist> <year> 2012 </year> <type> live </type> </MusicCD> <MusicCD price = "35" SongsNumber = "8" category = "Classic"> <title> Spring Rose </title> <artist> Maria Callas </artist> <year> 2005 </year> <type> concert </type> </MusicCD> <MusicCD price = "28" SongsNumber = "10" category = "Jazz"> <title> Flying Tiger </title> <artist> John Dalaras </artist> <artist> Nicky Leandros </artist> <year> 2015 </year> <type> studio recorded </type> </MusicCD> </Collection>

In what follows,  assume that the  above XML  code  is  stored  in  the file ”music.xml” .

i. Write an XPath query for the following:

“Select the  prices of the  Music  CDs which  either  have  at  least  12 songs or are published after 2010 (or both)” .

Provide also the output of your query. [4  Marks]

ii.  Write a query in XQuery for the following:

“Find the title nodes, the names of the first artists and the prices of the Music CDs which have price at least 19 and John Dalaras as one of the artists” .

Provide also the output of your query. [5  Marks]

iii.  Write a query in XQuery for the following:

“Find the titles of all Music CDs whose price is larger than the average price of the Music CDs of John Dalaras” .

Provide also the output of your query. [6  Marks]

(b)  In  the  following schedule, we follow this  notation:  stk   means  “transac- tion Tk  starts”; rk  (X) means “transaction Tk  reads data item X”; wk  (X) means “transaction Tk  writes data item X”; comk   means “transaction Tk commits” .

st1 , st2 , st3 , st4 , w1 (A), com1 , w4 (A), com4 , r3 (A), com3 , w2 (A), com2

Describe and explain what happens at every step of each of the following variations of the timestamp protocol for the above schedule:

i. Multi-version timestamp pro COMP2211 Networks and Systems 2022Python tocol. [6 Marks]

ii. Classical timestamp protocol, without Thomas’ rule. [4 Marks]

iii. Classical timestamp protocol, with Thomas’ rule. [4 Marks]

(c)  Consider the following transaction schedules at sites  S1 , S2 , S3 .  Describe how the distributed deadlock detection method works, starting at site S1 . For the transaction schedule given, is there a distributed deadlock?  Jus- tify your answer and show all your work in detail, including any required diagrams.

[21 Marks]

Section B Distributed Systems

Question 2

Boris plans to offer a video-on-demand (VoD) system (like Netflix) to all Level 2 Durham CS students.  He has 3 powerful computers and would like to use them to implement a suitable distributed system supporting a robust and efficient VoD service. Suppose 30% of videos are far more popular than the rest.

(a)  Analyse the suitability of applying active and passive replication methods to implement the required system.  Based on your analysis, help Boris decide which replication method should be used for implementation. [13 Marks]

(b)  With respect to your choice in (a), describe how to utilise the 3 computers for constructing the required distributed system.  Draw a block diagram to depict the corresponding system architecture. [16  Marks]

(c)  Suggest  a  suitable  middleware  technology which  can  enhance the video delivery performance of the VoD system.  Justify your answer. [7 Marks]

(d)  Due  to an  increase  in users,  many students experience connection drop- off while receiving video streams.  Analyse whether forward or backward recovery  should  be  applied  to  address  the  problem.    Describe  how the chosen recovery operation can  be implemented and how user experience will be affected. [6 Marks]

(e)  Suppose Boris has upgraded the system to comprise 30 computers aiming to serve significantly more users.  Based on your chosen replication method in  (a),  describe  how  you  can  incorporate  a  load  balancing  algorithm  to help the upgraded system tackle heterogeneous system workload.  In your solution,  discuss  how  you  allocate  responsibilities  to  the  30  computers         

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值