Skip to main content

Real Time Vs General Purpose Databases

The queries associated with a Real time databases are associated with a deadline, there may be some response after the queries passed the deadlines.

The data returned in response to a query must have absolute and relative consistency.


 

Absolute Vs Relative Consistency

Absolute consistency is accuracy. The data returned in response to a query must be close to the results expected. If temperature or pressure is interrogated in a chemical vessel, we want the data returned to be close to the current temperature or pressure.


 

Relative consistency means that for multiple data, the data must have been collected reasonably close to one another.


 

Need for Response Time predictability

There are many factors that affect the response time predictability

  • The requirement to meet the ACID properties will entail a overhead.
  • Transactions may be aborted one or more times to avoid deadlock and to maintain serialization consistency. So transaction abortion leads to a delay.
  • Databases are often quite large to fit in the main memory and therefore rely mainly on the disk based systems. Page faults are the problem creators if the requested record is not in the main memory.
  • Transaction access are data dependant. The transaction to deduct an amount from a database which has lower balance is faster whereas the higher balance leads to slowness.
  • Transaction may suffer with a delay in accessing a data which is being locked by some other transactions.


 

Relaxing the ACID Properties

    General purpose databases always obey the ACID properties, but Real Time databases often relaxing the ACID properties or even sometime violates the ACID properties.


 

In Machine tool Control System, the current tool position is not regarded as durable data and is discarded after it become outdated. In such an application, data durability is not worth maintaining if new measurements are frequently collected.


 

Sometimes even serialization consistency is also violated. Maintain serialization consistency leads to avoid concurrent transactions.


 

For example,

A and B are two airports. Users can book the tickets online to travel to the destination. For example,

  • if more than or equal to 100 passengers are allotted in a flight, then there should be 5 flight attendants else only 3 flight attendants
  • if less than 85 passengers (after cancellation) there should be only 3 flight attendants.

In such a case, assume if there is already 99 tickets booked for particular flight, and there will be one reservation and one cancellation

  • If reservation happens first, then 100 tickets sold and 5 flight attendants
  • Then cancellation happens, 99 tickets with the same 5 flight attendants (only if less than 85, flight attendants will be 3)

In second case,

  • If cancellation first, 98 tickets with 3 flight attendants
  • Reservation next, 99 tickets with the same 3 flight attendants

If the above cases, since both the reservation and cancellation happens to be running serially (one after other) to maintain serialization consistency, it may be decided to interleave both the transactions and the second transaction can be aborted to maintain serialization consistency.


 

Comments

Popular posts from this blog

Implementing a new system call in Kernel version 2.6.32

A system call is used by application or user programs to request service from the operating systems. Since the user programs does not have direct access to the kernel whereas the OS has the direct access. OS can access the hardware through system calls only. The following files has to be modified for implementing a system call /usr/src/linux-2.6.32.5/arch/x86/kernel/syscall_table_32.S /usr/src/linux-2.6.32.5/arch/x86/include/asm/unistd_32.h /usr/src/linux-2.6.32.5/include/linux/syscalls.h /usr/src/linux-2.6.32.5/Makefile New set of files to be created Create a new directory newcall/ inside the path “ /usr/src/linux-2.6.32.5/ ” Create new files Makefile, newcall.c and put them in the /usr/src/linux-2.6.32.5/newcall/ folder Create new user files (in any folder of Linux) to test the system call testnewcall.c, testnewcall.h (created in /home/pradeepkumar ) syscall_table_32.S Find the file /usr/src/linux-2.6.32.5/arch/x86/kernel/syscall_tab

How to Access MOODLE in Intranet and Internet

When Moodle is accessed either in Intranet or internet, there will not be any issue. But occasions when the MOODLE Site has to be accessed both in the intranet and in the Internet, here is a simple trick Server Used: IBM Blade Servers Operating system: Windows Server 2008 Moodle Version: 2.4 WAMP Server is used. Number of Users: 3000 (Students) + 200 (Faculty) Open the config.php from ~/moodle/config.php include these lines $CFG->wwwroot = 'http://'.$server_id.'/vitcc'; $CFG->dataroot  = 'C:\\wamp\\moodledata'; before the following line $CFG->directorypermissions = 07xx; Restart the WAMP Server and you can Check MOODLE Site both in Internet and Intranet. The above Image tells the intranet Link and the internet link can be opened outside the campus network

Electrical Machine Design (equations)

Factors DC Machine Transformers Induction Machines Synchronous Machines Output Equation P a =C o D 2 Ln, where Pa=P/h for generators, Pa=P for motors For Single Phase Q=2.22 f B m A i K w A w d 10 -3 For Three Phase Q=3.33 f B m A i K w A w d 10 -3 Q=C o D 2 L n s KVA Input Q= HP * 0.746 / Cos f * h Q=C o D 2 L n s KVA Input Q= HP * 0.746 / Cos f * h For Turbo alternators Q=1.11B av ac K ws V a 2 L 10 -3 /n s Output Coefficient C o =B av ac* 10 -3 where Bav-magnetic loading and ac - electric loading DNA C o =11 K ws B av ac 10 -3 C o =11 K ws B av ac 10 -3 Choice of Magnetic Loading Flux Density in Teeth Frequency of Flux Reversals Size of machine DNA Magnetizing current, Flux Density, Iron loss Iron loss, Stability, Voltage Rating, Parallel Operation, Transient ShortCircuit current