Master’s thesis in Information- and Communication Technology

Candidates:

Arild Finne Erik Trædal

Title:

Data Management and Concurrency Control in Broadcast based Asymmetric Environments Introduction Tens of millions of users have personal handheld devices with several built-in network interfaces, and the numbers are only increasing. This enables many new environments where many users want to access the same data set. Especially in high density areas, the number of users can be so high that the traditional pullbased method (request and get a response) is not usable. The server would be swamped with requests, and the bandwidth in wireless environments is not big enough. The solution is to continuously broadcast the data set in cycles, such that the clients can read from the air. This way the server do not get any read requests and the bandwidth is saved. The upload bandwidth is also saved. The environment can be simplified to transactions committed on a database. Each transaction consists of one or more operations, and each either reads or writes one database item. The handheld devices are battery powered and have limited processing power. Using the network interface is very power consuming, so the usage should be kept to a minimum.

Data Management The standard approach for data broadcast is to use a flat pattern that is broadcasted in cycles. Given the data a, b, c, d, e it will be broadcasted like this: “a b c d e a b c d e a...”. A client can then tune in a read the data it needs. The transaction time is the time it takes to complete a transaction from beginning to end. If first operation is to read b and next is to read a, it takes almost a whole cycle to wait for a to be broadcasted again.

Techniques such as caching and prefetching aims at reducing this overhead. But not all client devices are capable of these techniques because of limited processor, memory and battery power. Also, the techniques are not efficient on all application types.

Concurrency Control The concurrency control maintains the consistency of the data, and makes sure the clients read consistent data. Illustration 1 shows an example with transaction T1 and T2 where T1 reads a, then T2 commits write to a and b. Finally T1 reads b, which is inconsistent with the value T1 read of a. The task of concurrency control is to avoid such inconsistency.

Supervisors:

Guohui Li, HUST Ole Christoffer Granmo, AUC

Partial Restart Instead of restarting the whole transaction, we suggest to only restart a part of the transaction. Because the operations in a transaction is decided out from the value of the preceding operations, it is not enough to restart only the conflicting operation. The value of the conflicting operation has changed, so the following operations are probably no longer executed on the correct data items. But the operations before the conflicting transaction are still the same, and as long as they are valid it is not necessary to read them again.

T2 commit write(a) and write(b) T1 read(a)

T1 read(b) time

We define partial restart as the following approach: Instead of restarting the whole transaction when a conflict is discovered, it is only necessary to restart from the operation that caused the conflict. If several conflicts arise, the transaction should restart from the oldest operation (earliest in the transaction order) that causes a conflict. The challenge of assuring the correctness to the non-restarted operations is dependent of the protocol the approach is implemented in. None of the reviewed protocols use partial restart, but several of them can implement it fairly easy. We have implemented partial restart in FBOCC, and the simulations results are promising. Illustration 2 shows the average transaction time for FBOCC with and without partial restart. For 6 operations per transaction (transaction length = 6) the transaction time is 30% shorter with partial restart. (The test ran with demanding environment settings).

Illustration 1: Reading inconsistent data

Conclusion

Normal approach is to use lock-based protocols. They lock each item they use, so no other process can update this item. So in Illustration 1 T1 would lock a when it was read. Then T2 would not be allowed to commit its write operations, and T1 could read a consistent value of b.

Data management and concurrency control consists of a lot more then what presented here. In our report we have surveyed the whole topic as well as presented a characterization framework. We have also made a simulation platform in CSIM, implemented several state-ofthe-art protocols including our contribution partial restart.

Optimistic concurrency control (OCC) is another concurrency control approach more adapted to the broadcast environments. It allows all operations until the time of validation. The validation can be done several times, but at a minimum it must be done before the transaction is accepted. In Illustration 1, T1 would be validated at the end and found inconsistent, and be rejected. Then T1 would either abort or restart.

Illustration 2: Transaction time of FBOCC with Partial Restarts compared to normal FBOCC

The partial restart can optimize any concurrency control protocol which has overview of the conflicting operations. The decreased transaction time can have a major improvement on real-time transaction which have a deadline to meet. And the reduced number of operations will reduce the battery consumption in battery powered devices because of less network usage. Wuhan, China July 2006

Data Management and Concurrency Control in ...

Data Management and Concurrency Control in. Broadcast based ... environments is not big enough. ... The standard approach for data broadcast is to use a flat ...

216KB Sizes 4 Downloads 151 Views

Recommend Documents

Data Management and Concurrency Control in ...
The Intel produced PXA270 processor [16] is a widely used processor in PDAs which ..... Acharya et. al proposes IPP (Interleaved Push Pull) [12] which uses a ...

Data Management and Concurrency Control in ...
As part of the survey, we made a simulation platform and implemented several data management techniques and four concurrency protocols, BCC-TI, FBOCC,.

Data Management and Concurrency Control in ...
In Illustration 1, T1 would be validated at the end and ... the-art protocols including our contribution partial restart. ... Illustration 2: Transaction time of FBOCC with.

9 transaction control and concurrency control.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. 9 transaction ...

Data Interception through Broken Concurrency in ...
definition, a synchronization object requires the concurrent threads or ... access the target resource while it still has the data. ... access data in or through z. 10.

Concurrency and Collinearity
(Iran 1998) Let ABC be a triangle and D be the point on the extension of side BC past. C such that CD = AC. The circumcircle of △ACD intersects the circle with diameter BC again at P. Let BP meet AC at E and CP meet AB at F. Prove that the points D

Concurrency and Collinearity
Let the feet of the perpendiculars from point A to the lines BP and CP be M and N respectively. Prove that the lines ME,. NF, BC are concurrent. 5. Quadrilateral ABCD is circumscribed about a circle. The circle touches the sides AB, BC,. CD, DA at po

Management control and leadership styles in family business (1).pdf ...
There was a problem previewing this document. Retrying... Download ... Management control and leadership styles in family business (1).pdf. Management ...

Concurrency of Mutations, Microsatellites and Predicted Domains in ...
Journal of Proteomics & Bioinformatics - Open Access ... Abstract. Bioinformatics is the field of science in which biology, computer science, and information technology merge to form a single ... fueled a new era in the analysis of biological data.

Data provenance and version control
Met Office Hadley Centre, Exeter, UK. 3. 4. 7th-9th September 2010. 5. 6. White papers background. 7. 8. Each white paper has been prepared in a matter of a few weeks by a small set of experts. 9 who were pre-defined by the International Organising C

Testing and Debugging Concurrency Bugs in Event-Driven Programs
Event Handling: To service each event, an asynchronous callback ..... protect accesses to shared variables using synchronization primitives like locks. However,.

Event-Driven Concurrency in JavaScript - GitHub
24 l. Figure 2.6: Message Passing in Go. When, for example, Turnstile thread sends a value over counter ...... Is JavaScript faster than C? http://onlinevillage.blogspot. ... //people.mozilla.com/~dmandelin/KnowYourEngines_Velocity2011.pdf.

Read PDF Java in Distributed Systems: Concurrency, Distribution and ...
Retrouvez toutes les discoth 232 que Marseille et se retrouver dans les plus grandes soir 233 es en discoth 232 que 224 Marseille. Online PDF Java in ...

quality control, real-time & delayed-mode - Argo Data Management
Jan 3, 2012 - REFERENCE TABLE 2: ARGO QUALITY CONTROL FLAG SCALE. 40. 4.2. .... http://www.ngdc.noaa.gov/mgg/global/global.html. Action: If the ...

Testing and Debugging Concurrency Bugs in Event-Driven Programs
A signal is a message sent by the kernel or another process (using the kill system call) to a process. Often referred to as software interrupts, signals are used as basic inter-process communication mechanisms. In the other hand, interrupts are defin