<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2enclosuresfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:media="http://search.yahoo.com/mrss/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-2000738058837645358</atom:id><lastBuildDate>Thu, 07 Jul 2011 20:54:18 +0000</lastBuildDate><category>Philosophy</category><category>Microprocessor</category><category>Storage</category><category>crazy-thoughts</category><category>clusters</category><category>Architecture</category><category>dedup</category><category>File Systems</category><title>Me, myself and everything else</title><description /><link>http://anandvids.blogspot.com/</link><managingEditor>noreply@blogger.com (Anand)</managingEditor><generator>Blogger</generator><openSearch:totalResults>18</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/blogspot/anandvids" /><feedburner:info uri="blogspot/anandvids" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><itunes:owner><itunes:email>noreply@blogger.com</itunes:email></itunes:owner><itunes:explicit>no</itunes:explicit><itunes:subtitle></itunes:subtitle><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-4228468155458459988</guid><pubDate>Thu, 26 May 2011 10:58:00 +0000</pubDate><atom:updated>2011-05-26T16:45:25.312+05:30</atom:updated><title>New car</title><description>From last few days, I have been thinking about a designing a car. I know, it sounds unreal but I like to imagine :) If I were to design a car, here is my wish list.&lt;div&gt;- It should be a hybrid (diesel + electric motor). I prefer diesels :)&lt;/div&gt;&lt;div&gt;- It should be fun to drive (good handling)&lt;/div&gt;&lt;div&gt;- It should be economic enough to drive. (better value for money)&lt;/div&gt;&lt;div&gt;- Wherever possible, it should try to generate energy. e.g. the brakes, the suspension, the chassis, the transmission, the tyres (?) should be regenerative.&lt;/div&gt;&lt;div&gt;- It should have automatic switch to run on electric motor under certain circumstances.&lt;/div&gt;&lt;div&gt;- It should maximize the fuel efficiency than any other car out there.&lt;/div&gt;&lt;div&gt;- It should have a better footwell with well organized peddles. I prefer long peddles where you can rest your whole foot. &lt;/div&gt;&lt;div&gt;- It should be spacious.&lt;/div&gt;&lt;div&gt;- The seats should be comforting. &lt;/div&gt;&lt;div&gt;- The suspension should have multiple modes like - comfort (soft suspension), sports(rigid suspension) and BoBW(Best of both worlds)&lt;/div&gt;&lt;div&gt;- All necessary gadgets.&lt;/div&gt;&lt;div&gt;- Being a diesel, it should a good turbo to boost the power.&lt;/div&gt;&lt;div&gt;- The torque curve should be linear or flat.&lt;/div&gt;&lt;div&gt;- Minimal or no turbo lag.&lt;/div&gt;&lt;div&gt;- Good AC with minimum load on engine.&lt;/div&gt;&lt;div&gt;- A good linear, progressive clutch (this is very necessary and is neglected by almost every manufacturer)&lt;/div&gt;&lt;div&gt;- I would like to keep about 10 - 12  %  of power as reserve to use as needed. I would like to have a boost while overtaking :). About this, I was thinking about keeping a spare cylinder (a small one) and while the car is running on engine power, it should not use power output of this spare cylinder but it should be available on demand. (this is just a requirement and not the design :). The design might be much more difficult)&lt;/div&gt;&lt;div&gt;- Instead of having one turbo, I would like to have 2 turbos - a small one and other big one. They will work in mutually exclusive fashion. The small turbo should start spooling early in the rev range (will have advantage of being small) while the big one will take over after a threshold. &lt;/div&gt;&lt;div&gt;- About the hybrid nature, the diesel engine when running should charge the battery and all regenerative energy should be used to charge batteries.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thats it for now. Will add more as I remember more :)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-4228468155458459988?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/r3eD_pSXmec" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/r3eD_pSXmec/new-car.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2011/05/new-car.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-2464825873727367726</guid><pubDate>Tue, 08 Jun 2010 07:11:00 +0000</pubDate><atom:updated>2010-06-08T13:29:00.248+05:30</atom:updated><title>Is there any software to automate the software development process?</title><description>I ran through this thought few days back. In most of the software development scenario, the processes to be followed, the compliance to be adhered is either absent or left to individual imagination. Such cases lead to inconsistent rather faulty development process. &lt;div&gt;The solution is simple - develop a process and ask everyone to follow it. Now the later part is the difficult one. While I am writing this, I admit that I have also made mistakes in my past software development experience. When I look back to those mistakes, I realize these things went wrong due to lack of supporting processes and the clarity to follow it.&lt;/div&gt;&lt;div&gt;Since putting processes in place is easy but following them is difficult, why cant we develop software to do that? Meaning??&lt;/div&gt;&lt;div&gt;Meaning - develop a software which would act as your development environment and will basically take care of all intermediate subtasks like - &lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;requirement gathering&lt;/li&gt;&lt;li&gt;mutual consents&lt;/li&gt;&lt;li&gt;producing documentation, seeking feedback, incorporating comments&lt;/li&gt;&lt;li&gt;designing project plans, identifying resources, identifying tasks&lt;/li&gt;&lt;li&gt;Implementation&lt;/li&gt;&lt;li&gt;Quality Assurance and bug fixing cycles&lt;/li&gt;&lt;li&gt;Code reviews&lt;/li&gt;&lt;li&gt;Issue tracking systems&lt;/li&gt;&lt;li&gt;Source Code Repositories&lt;/li&gt;&lt;li&gt;Rolling out releases&lt;/li&gt;&lt;li&gt;Customer Interaction&lt;/li&gt;&lt;li&gt;Product Road map&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;This software is not intelligent enough to write the design doc but it will definitely help to speed up writing the doc. When development teams are geographically distributed, it gets difficult to grab the next person's views/thoughts. This software can help you to identify the right person and seek a proper sign off so that there are no surprises in the requirements. &lt;/div&gt;&lt;/div&gt;&lt;div&gt;This software will help streamline the process so that there is no way one can violate the process. The process could be decided by the authority and can be put in to the software. &lt;/div&gt;&lt;div&gt;Right now, I am trying to find out such products and a proper name for products that fit into such categories.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Update: I found one. &lt;b&gt;FogBugz&lt;/b&gt; from FogCreek Software seems to be built on the same lines but I dont think it is the complete solution I am thinking of. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-2464825873727367726?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/r-YajrOliR0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/r-YajrOliR0/is-there-any-software-to-automate.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2010/06/is-there-any-software-to-automate.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-1051403178334950941</guid><pubDate>Wed, 02 Jun 2010 10:03:00 +0000</pubDate><atom:updated>2010-06-07T14:11:42.089+05:30</atom:updated><title>Traffic Jams in Pune</title><description>Yesterday, there was a heavy rainfall and it poured like anything for an hour and half. As an obvious result, power lines were busted, trees fell in many places. And ultimately, all the arterial roads were jammed.&lt;div&gt;My daily commute from Office to my home usually takes 15 minutes. And yesterday, I spent close to an hour on the road. The rains had stopped but the traffic was moving with baby steps - few meters every 5 minutes. While on the road, I was thinking about why such situation occurred in first place. A plain Jane answers was fallen trees and the out of order traffic signals. Given more thought, I found out the exact reason why the roads get jammed whenever there is a moderate to heavy rainfall. &lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;b&gt;The reason was - the traffic signals do not work in sync with each other&lt;/b&gt;&lt;/i&gt;. Take a simple example. Suppose there are 2 cross roads in close succession. There is a traffic signal at each crossroad. Distance between these 2 crossroads is lets say 2 km. Now as soon as rain starts pouring down, due to open nature of power transmission, there are probably short circuits in the power system and lots of areas suffer from power loss. As a result, traffic signals stop working. In addition, due to fallen trees, there are more stumbling blocks for the moving traffic. Now during peak hours, the arterial roads are clogged due to heavy inbound/outbound traffic. And since traffic signals are not in sync with each other or with the nearest ones, lets says, I get a green signal at the first crossroad. Now I am moving to the next crossroad which is 2km away. Now here, due to power loss, the signal at second crossroad had stopped working. As a result of this situation, while one gets a free route at first crossroad, he/she gets stuck at the second crossroad. And this whole mess ultimately leads to chaos on the road.&lt;/div&gt;&lt;div&gt;Key points to be noted...&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Adjacent traffic signals do not work in co operation. &lt;/li&gt;&lt;li&gt;Fallen trees create new choking points.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Let us keep apart the fallen trees aside for a while. A simple solution would be to make adjacent traffic signals co operate with each other. If the adjacent signal is not working, the next signals should know about this situation and they can take corrective measures. The next signals can stop working after knowing that earlier signal is not working.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;Well, we need a multi pronged approach to remedy this problem. Roads bearing most of the traffic can be identified. All roads leading to / forking from these roads should be identified and all signals on these roads can be made to work in close co operation with each other. &lt;/div&gt;&lt;div&gt;Such a system will greatly reduce the burden of traffic management from traffic police and it will help to neutralize the surge in incoming/outgoing traffic. This system can be further evolved by mapping all the roads in the city and formulating proper procedures for them in case of disaster. &lt;/div&gt;&lt;div&gt;Few things that puzzle me like - traffic signals are one of the most important things that run on state provided power supply system. Further traffic signals are tuned to work at second level granularity. Manual intervention by traffic police can not be a substitute for automated traffic signals. In my opinion, the first thing to do - is to give a backup power line to all traffic signals and try not to cut power to this backup line. &lt;/div&gt;&lt;div&gt;I am still thinking about this problem. May be, I will come up with a more sophisticated version of my solution in near future.&lt;/div&gt;&lt;div&gt;Update: Got to know about a traffic regulation system by BMW and Audi. But these solutions aer way to sophisticated and need dedicated hardware to contact the traffic signals nearby. Check out this link - &lt;a href="http://www.thecarconnection.com/marty-blog/1045774_bmw-and-audi-congestion-strategies-look-to-smart-signals"&gt;http://www.thecarconnection.com/marty-blog/1045774_bmw-and-audi-congestion-strategies-look-to-smart-signals&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-1051403178334950941?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/oh0q33qUgjM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/oh0q33qUgjM/traffic-jams-in-pune.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2010/06/traffic-jams-in-pune.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-8040117921434457141</guid><pubDate>Tue, 11 Aug 2009 08:33:00 +0000</pubDate><atom:updated>2009-09-23T12:17:20.333+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">crazy-thoughts</category><title>New business plan???</title><description>Spoiler Alert: Crazy thought&lt;br /&gt;Few days back, I had a weird thought about a business idea. We all Indians know that corruption is wide spread in India and it is often cumbersome to deal with authorities and government officials.&lt;br /&gt;How would it if we have a company which would do the job of interacting with authorities for you? I know, I know, this is not a new thing.&lt;br /&gt;So the differentiating factor is - this company would guarantee a transparent business with no corruption whatever. This company would act as an interface between the consumer (big organizations, NGOs) and the authorities.&lt;br /&gt;New regulations like RTI (Right To Information) could be helpful here. But running such a company would be a real pain which is why it would need a substantial change in though process and business logic.&lt;br /&gt;This company would need hard bound approaches in order to deal with govt authorities which need to be fool proof and be completely transparent.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-8040117921434457141?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/LhbJBWD2sQ4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/LhbJBWD2sQ4/new-business-plan.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2009/08/new-business-plan.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-633532343782219952</guid><pubDate>Tue, 04 Aug 2009 11:38:00 +0000</pubDate><atom:updated>2009-09-23T12:12:06.960+05:30</atom:updated><title>Think different!!</title><description>I often think you need to think on different lines to come up with something innovative, something useful. I am not  inventing a new thing. And I don't know the definition of Innovation. But this is how I usually define innovation - find out something that is based on some underlying invention (fact). So your innovative idea could be an old thing &lt;span style="font-weight: bold;"&gt;but the way you do it&lt;/span&gt; is important.&lt;br /&gt;I like to think on different lines. Basically the problem with our approach is there is very little room to think on your own or most of the people go with the flow rather than thinking it through.&lt;br /&gt;So now onwards, I will post all the crazy ideas that strike me. It doesn't matter (at least to me :P ) if  they are useful or total crap. I firmly believe this is the way your though process evolves.&lt;br /&gt;And through small things, you can create a big picture.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-633532343782219952?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/oBUCb3npyHI" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/oBUCb3npyHI/think-different.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2009/08/think-different.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-4419844333056121622</guid><pubDate>Sun, 03 Aug 2008 09:09:00 +0000</pubDate><atom:updated>2009-09-23T12:01:41.281+05:30</atom:updated><title>Scalable directories</title><description>While working on my current project, I felt the need of having big, scalable directories. The problem with directories in a traditional system is that they are not really scalable. The directory search is linear and it incurs a heavy penalty when the directory is big. There's gotta be some way to reach to the needed directory entry given a name. The traditional UNIX convention of directory being a regular file is just not good enough. Well, directory being a file, eases a few things for sure but it does not help in itself being the directory. We will brief few short comings of traditional directories.&lt;br /&gt;1. Directory is a regular file.&lt;br /&gt;2. Directory does not scale well.&lt;br /&gt;3. Directory search is linear. Bigger the directory, bigger the performance hit.&lt;br /&gt;&lt;br /&gt;This problem gets worse for distributed file systems. If number of clients are writing to the same directory, there would be a lot of IOs until the cache is warm. Of course, the size of cache does matter while dealing with large number of clients. So what we need is -&lt;br /&gt;1. Do something extra for the directory.&lt;br /&gt;2. Make the directory search efficient.&lt;br /&gt;3. If the underlying file system is a distributed file system with large number of clients writing to the same directory, use range locking so as to have fine grained locking primitives to parallelize the directory access.&lt;br /&gt;Few projects show indeed such initiatives are underway like this - &lt;a href="http://www.youtube.com/watch?v=2N36SE2T48Q&amp;amp;e"&gt;http://www.youtube.com/watch?v=2N36SE2T48Q&amp;amp;e&lt;/a&gt;&lt;br /&gt;These things make sure that we are on the right track to scale directories.&lt;br /&gt;A directory should have some kind of indexing which helps to locate the required data set in constant time. Insertion and deletion should be fast enough to accommodate multiple clients simultaneously. Directory deletion which includes deletion of all its contents should be faster.&lt;br /&gt;Going further ahead, this topic leads to the relation between a file system and a database. Are they similar? Are they different?&lt;br /&gt;IMHO, file system and databases are totally different. File system is more of a father figure for a database or for any application for that matter. A  file system does much more than storing and retrieving data as compared to a database. Both of them try to efficiently store and retrieve data, both of them flaunt transaction logging mechanism and both of them try to be consistent all the time.&lt;br /&gt;The solution could be to blend the best of both. And I would prefer blending database techniques in a file system. So a file system can gain from blending a relational database schemas with it. A simple example of this could be tagging. A file system can sport tags that are equivalent to a directory with respect to grouping things together. A file system can have database like transaction semantics (all or nothing) while doing updates. Essentially all of this would help to make the file system scalable as well.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-4419844333056121622?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/G7OFtofbbcU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/G7OFtofbbcU/scalable-directories.html</link><author>noreply@blogger.com (Anand)</author><thr:total>2</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2008/08/scalable-directories.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-7620416288870750190</guid><pubDate>Thu, 17 Jul 2008 05:48:00 +0000</pubDate><atom:updated>2008-07-17T12:27:54.837+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">File Systems</category><title>UNIX privilege protection</title><description>Recently I am developing a feature where I need to protect a file from all users including the root. Most of the kernels do this by restricting the permissions stuff and/or attaching some special flags with the files notifying that this file should not be touched. While shaving this morning, I had a weird idea.&lt;br /&gt;I want to protect a file, so restricting the permissions to root is an obvious thing to do here. But still root can modify this file. If I want to block root user as well, what if I had an another internal root like user? This would also be a root user, say a root cousin which is invisible to outside world. So in this case, root can read the file but can not modify it. I know this breaks the standard UNIX legacy we have that &lt;span style="font-weight: bold;"&gt;there is only one powerful god and that is root. What if we shatter this?&lt;/span&gt; There would be more than one god, so would there be a clash of titans? &lt;span style="font-weight: bold;"&gt;No, the rule is one god does not interfere with other god&lt;/span&gt;. &lt;span style="font-weight: bold;"&gt;The gods are read-only while interfering with another god.&lt;/span&gt; In this case, it gives an impression that root user is not able to modify certain file. Since internally this file is owned by root cousin, root is not able to change/modify it. So the change of behavior is quite noticeable. I don't know if this would be acceptable.&lt;br /&gt;Since this root cousin is invisible to end user, he/she can not inherit root cousin privileges. And a root user can not change/modify the files that need to be protected.&lt;br /&gt;This is a very simple idea and might have occurred to a lot of people.  The moment I  struck it, I felt like noting it down somewhere and thats why I am posting it here. I still need to figure out how to implement this. Will update about it soon.&lt;br /&gt;Few basics on how to implement this. This root cousin needs a dedicated uid and gid at least for UNIX. This uid and gid can not be used by end user. Kernel uses this identifiers for its own protection. So there is no way an end user can make a file owned by root cousin. Only the kernel is able to use these dedicated uid and gid in order to protect some files even from root. So it is quite obvious that we should not use these root cousin privileges everywhere. Rather, its use should be kept to minimal. For files, we don't want even root to change/modify, we should make them own by root cousin. While displaying the file properties (ls command), should we display the dedicated uid and gid for root cousin or should we show root uid and gid instead? If we show root uid and gid, the end user will still have the illusion that these files are owned by root but they can not be changed/modified. Great!! This goes well with the UNIX methodology. Lots of questions are popping in my head. Will update again as I have more answers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-7620416288870750190?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/4Bl37Ukqf2o" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/4Bl37Ukqf2o/unix-privilege-protection.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2008/07/unix-privilege-protection.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-6240913422982262353</guid><pubDate>Thu, 10 Jul 2008 07:10:00 +0000</pubDate><atom:updated>2008-07-10T14:00:35.999+05:30</atom:updated><title>This is not easy</title><description>&lt;span style="font-size:100%;"&gt;&lt;br /&gt;Today we had the pleasure to listen to a talk from a reputed personality &lt;span style="font-weight: bold;"&gt;Dr Deepak Phatak&lt;/span&gt; from IIT-Bombay at our company. For those who don't know, &lt;span style="font-weight: bold;"&gt;Dr Phatak is an honorable name in Computer Science in India and abroad.&lt;/span&gt; He is known for his contribution to Databases, Information Systems and Software Engineering. Today's topic was &lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;Innovation. In precise words, Dr Phatak told the basics of living life. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;Few key things of his talk are summarized here. The things mentioned below are as per my perspective. If I have misinterpreted Dr Phatak somehow, that is totally a fault of mine. Please step up to correct things if so.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;1. Always keep learning : &lt;/span&gt;&lt;span style="font-size:100%;"&gt;Since early schooling, the students are groomed to mug up the study materials and throw it up in the exams. In this way, we kill the creativity in ourselves. Another important point he raised is to &lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;ask questions. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;Even I have observed that most of us are scared to ask a question in public or more over scare to question something that is going on for ages. Dr Phatak strongly recommended &lt;span style="font-weight: bold;"&gt;to question the orthodox, conventional methods.&lt;/span&gt; Even if it is right, that will satisfy your conscious. Statistics does not always interpret a person completely. Each person is unique in its own way. What matters is his/her thinking line and not his statistics. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;2. Don't kill the child (curiosity)  in you : &lt;/span&gt;&lt;span style="font-size:100%;"&gt;As a child is always curious about everything, he is eager to know why certain things are the way they are. Dr Phatak suggested that we should keep alive the curiosity in ourselves. &lt;span style="font-weight: bold;"&gt;This curiosity will help us find answers&lt;/span&gt; to questions that we face. And &lt;span style="font-weight: bold;"&gt;sometimes, it helps us find better answers that can be categorized as Innovation.&lt;/span&gt; So we need to make a habit of being curious so that at least we can answer our own questions. in my opinion, every person has a fear of unknown and this curiosity will definitely help in overcoming this fear. Another point Dr Phatak raised is not to compartmentalize knowledge. Most of us, even I do the same, we try to categorize problems as per their domains like automobiles belong to mechanical engineering, operating systems belong to computer science and so forth. This would have a negative impact on our learning approach. Dr Phatak encouraged to treat every thing as same and not categorize them as per their domains. This will help us to learn about everything around us and not only our domains. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;3. Think different :  &lt;/span&gt;According to Dr Phatak, most of the individuals tend to behave like ox-cart bullocks in a sense that they only know to walk a known path. They do not dare to venture on an unknown path. Came a certain problem, this is the way to solve it, this is their approach. Dr Phatak strongly encouraged to align your thinking patterns on different lines. Conventional wisdom is not always right or rather appropriate to solve certain problems. People who go out of the way, those who think different can make things happen. This does not apply only to Computer Science but to each and every field. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;4. Passion for work : &lt;/span&gt;&lt;span style="font-size:100%;"&gt;In order to innovate, one must have passion that is the driving factor for your thing to work. Without passion, there would be no energy, no enthusiasm in your venture. Only passion can keep alive your venture in rough times. In short, without passion, your venture will be like a body with no soul.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;5. Persistence and commit&lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;ment : &lt;/span&gt;&lt;span style="font-size:100%;"&gt;Started a venture, persistence and commitment are another properties that can lead it to completion. Like they say, starting a venture is very easy but grooming it, maintaining it is very difficult. Hardwork is definitely a part of life but it is only with persistence and commitment, it can survive your venture. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;After listening to Dr Phatak's speech, I realized that he has pointed the very basic things that we have conveniently forgotten. As for myself, by this time, I know what my flaws, my weak points  are (not all of them) and I am trying to over come them. But it has been very difficult so far. With the points Dr Phatak mentioned, I think I need to go back to basics. If you build a strong foundation, the structure will thrive.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-6240913422982262353?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/B4YVbYzlJio" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/B4YVbYzlJio/this-is-not-easy.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2008/07/this-is-not-easy.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-6827895534840463512</guid><pubDate>Sat, 31 May 2008 10:51:00 +0000</pubDate><atom:updated>2008-08-10T12:23:06.600+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">dedup</category><category domain="http://www.blogger.com/atom/ns#">Storage</category><title>Deduplication anyone?</title><description>De duplication is one of the hot topics in storage world. With tons of vendors offering de dup products and biggies like Netapp offering integrated de dup solutions with their NAS products, the competition is fierce. How does du duplication help when actually the consumer is trying to keep redundant data in order to facilitate disaster recovery?&lt;br /&gt;Effectively de dup is doing opposite of what RAID, replication, snap shots do. This is  not exactly how it sounds. The de dup essentially tries to take a whole different approach in order to save disk space on a file system. The &lt;span style="font-weight: bold;"&gt;granularity of de dup&lt;/span&gt; could be a &lt;span style="font-weight: bold;"&gt;file or a file system block&lt;/span&gt;. If done at file level, it would de dup less data since very few times are two files are entirely identical. But blocks could be identical very often and it would definitely save more space. We would discuss block based de dup here.&lt;br /&gt;- De dup calculates a kind of &lt;span style="font-weight: bold;"&gt;identity signature for each block&lt;/span&gt; on the file system and stores it with a data base. Now the blocks containing the same data will generate same  signature and can be detected to be a duplicate of an existing block. A cryptographic hash algorithm like MD5 or SHA1 can be used to generate this signature.&lt;br /&gt;- How to store these signatures, that is the layout of &lt;span style="font-weight: bold;"&gt;database storing these signatures is highly platform dependent&lt;/span&gt;.  The main requirement from this database is to give a list of blocks generating same signature (having same data), something like a hash bucket storing all elements generating same hash value.&lt;br /&gt;- Another important requirement is that &lt;span style="font-weight: bold;"&gt;de dup should work while the file system is online&lt;/span&gt;. Putting the file system off line is not an option. Hence if write comes on a block for which signature has been stored with the data base needs to regenerate the signature in order to keep up with the latest data. This definitely &lt;span style="font-weight: bold;"&gt;needs a trap in the IO path&lt;/span&gt; but it should be such that it should have a minimal impact on the IO performance.&lt;br /&gt;- Please keep in mind that &lt;span style="font-weight: bold;"&gt;de dup will only de dup the data blocks and not the meta data&lt;/span&gt;. Meta data is duplicated on purpose and should not be touched.&lt;br /&gt;- So for the very first time de dup is started, it will generate signatures for all the data blocks in the file system. Once this pass is finished, we have all the information in the data base. Traversing this data base will give us a list of blocks bearing same data.&lt;br /&gt;- For these blocks, only one copy can be kept while other blocks will be freed and the meta data of freed blocks will point to the one copy.&lt;br /&gt;- One side effect of de duplication is that the next time a write comes on some block, we need to know if this block is sharing data with some other data. If it is, &lt;span style="font-weight: bold;"&gt;we need to do a copy-on-write here&lt;/span&gt;. Basically we allocate new  block, write data on the new block and update meta data of the block. This way, the writes might have to bear a read penalty.&lt;br /&gt;- For file systems which have copy-on-write in IO path like WAFL and ZFS, this would be not a problem. Other file systems would have to bear this penalty.&lt;br /&gt;- Getting the data base in core is another problem. Either it needs to be implemented as cache otherwise it will occupy a lot of space. This would be very implementation specific.&lt;br /&gt;Any more thoughts?&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Update :&lt;/span&gt; Curtis Preston explains this in a very simple manner. Have a look at this - &lt;a href="http://www.backupcentral.com/content/view/175/47/"&gt;http://www.backupcentral.com/content/view/175/47/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-6827895534840463512?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/kzOGf0BMeR4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/kzOGf0BMeR4/deduplication-anyone.html</link><author>noreply@blogger.com (Anand)</author><thr:total>4</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2008/05/deduplication-anyone.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-3036966209862160863</guid><pubDate>Mon, 25 Feb 2008 16:41:00 +0000</pubDate><atom:updated>2008-04-27T12:45:44.667+05:30</atom:updated><title>What would you prefer?</title><description>Was just thinking about what a person would chose in case he/she wants to chose  certain thing? The choices are&lt;br /&gt;- a clean design, sturdy, effective system but with limited functionality,&lt;br /&gt;- a system clogged with features but not that effective (sewn bits n pieces together)&lt;br /&gt;Lets call the first system system1 and next one system2.&lt;br /&gt;The answer clearly depends on a number of factors. The need of consumers is the driving factor. Thus even if most of us would favor the clean design system, in practical life, the system2 might be useful/effective. I would favor the clean design system as well. The ideology is to build a good foundation and use the outputs of this foundation to develop new things. The same way a building is constructed or code is (should be) written. Because such systems are easier to maintain, easy to reuse and sturdy. On the other hand, the system2 is usually not good as a standalone system, neither can it scale very well. It can lead to unused code/resources and clog up your workspace. It can make your system heavy, verbose and might lose the very cause of its own existence.&lt;br /&gt;Even after starting with a clean design, keeping it clean is the toughest job. A focused team of engineers can do the job better than a thousand people be it software or any other field for that matter. In short, keeping integrity of the project while dealing large number of people really becomes hard. It takes hard work, enthusiasm and innovative mind to keep up the integrity of the project. Thats why startups succeed and are able to do things that might take big corporations a lot of time and a lot of money.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-3036966209862160863?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/uJqNKjcOegk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/uJqNKjcOegk/what-would-you-prefer.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2008/02/what-would-you-prefer.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-6400311808009575127</guid><pubDate>Sat, 22 Dec 2007 10:00:00 +0000</pubDate><atom:updated>2008-02-25T22:08:55.637+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">File Systems</category><category domain="http://www.blogger.com/atom/ns#">clusters</category><title>How about a cluster File System???</title><description>Was just speculating about what exactly would I need, if i have to write a cluster file system? First, let us throw some light on the requirements. The file system needs  to provide reliable storage, should support multiple read writes simultaneously, good performance and one of the most important fault tolerant.&lt;br /&gt;A cluster friendly file system basically needs a fine grained and efficient &lt;span style="font-weight: bold;"&gt;Distributed Lock Manager&lt;/span&gt;, transport level protocols that support range locking, namely NFSv4 and CIFS and moreover it needs a &lt;span style="font-weight: bold;"&gt;cluster protocol to manage operations across nodes. &lt;/span&gt;Usually this cluster protocol runs over high speed networks like Infiniband, Gigabit ethernet (still slower), fiber channel so as to enhance the throughput.&lt;br /&gt;A cluster is built for the purpose of high performance computing. So if the IO throughput is not good, it serves no purpose to build a cluster. How I see a cluster is a collection of bunch of machines working together under certain code to gain higher throughputs and thus reflecting one entity as a whole. So this would fit perfectly to a collection of commodity computers. I am not talking about custom build rack mounted clusters.&lt;br /&gt;Basically IO throughput is enhanced using striping the data across all nodes in the cluster. This way we can do a parallel read/writes and read aheads. Even if this increases the amount of meta data that needs to be maintained for a file, it increases the throughput on a larger scale. Most of the existing clusters including the google file system, luster implement same techniques.&lt;br /&gt;A good light weight Distributed Lock Manager would help in minimizing the locking periods across files. Major files operations lock the parent directory. So fine grained locking would help to keep contention at the lowest possible level.&lt;br /&gt;But making the cluster fault tolerant is one heck of a task. Say, while watching a movie over the cluster, if the next frame is unavailable, the movie player will halt waiting for the frame. The catch is to get the data within limits of application time out. If the backend is built with RAID, the application has to wait until RAID rebuild is complete. And this time is too big and the application will time out for sure. So how to solve this problem? There is no definite answer here. Only thing we can possibly do is to take a top down approach and build a framework to support data losses. These strategies include RAID (for data regeneration in case of losses), CRCs to detect corruptions etc. Still not fool proof :(&lt;br /&gt;Managing data losses/outages is a tricky question and not completely answered. If the cluster is serving a data intensive application with utter need of uptime, probably keeping a copy of  data would serve the purpose. This is a hell lot space inefficient but would save you time for sure. The other option is going the RAID way. RAID is built to be space efficient but the RAID rebuilds are really inefficient in practical life.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-6400311808009575127?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/Rh1AGQlB148" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/Rh1AGQlB148/how-about-cluster-file-system.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2007/12/how-about-cluster-file-system.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-2484290463591972515</guid><pubDate>Mon, 29 Oct 2007 13:15:00 +0000</pubDate><atom:updated>2007-11-15T10:36:36.127+05:30</atom:updated><title>Virtualization wave???</title><description>Server virtualization is on the rise. Virtual Machines (VM) does hold their ground when compared to high performing hardware. Just add some more main memory and some disk space to your existing machine and you are able to run a new instance of another operating system. How about running vmware on a big massive hardware like Sun Niagara T2 or a rack of Intel Quad-core CPUs?&lt;br /&gt;How about an organization that wants to scale up the operations and needs bigger hardware to support it? It would definitely go for a combination of both, buying fewer racks of hardware than needed and may be running VMs on it. Suppose it buys few big big n-core CPUs with support for virtualization. Still fulfilling all your needs from one physical machine gives rise to single point of failure. May be spreading your VMs logically over a farm of servers would help. It eliminates single point of failure, still availing all benefits of a VM. The biggest benefits I see are power savings, back up, security and seamless upgrades. VM running from one machine would not consume power beyond a limit. The host images could be backed up regularly. By nature, VMs are secure and would not spread the defect to the host if contaminated by worms/virus. And the most important of it, &lt;span style="font-weight: bold;"&gt;upgrades&lt;/span&gt;!!!!!&lt;br /&gt;Upgrades seem to be essential part of IT operations of an organization. To keep up with the pace of ongoing progress of hardware, an organization would buy new hardware every few years. For hardware whose support has been discontinued, it is really hard to find a replacement. And data needs to be migrated manually which is a cumbersome process. Here a VM wins hands on with a hardware machine. Moreover, I think if multiple VMs are running same image of operating system, it is quite possible to share disk space from a nas exported file system. Essentially, force all VMs running the same operating system to mount a nas exported file system and share the same image with all other VMs. I suppose, a file system with a good distributed lock manager and support for snapshots would be able to support such circumstances. Just imagine how much space we would be saving!! Moreover, this is somewhat like deduplication (in essence, not by implementation), where the common data is shared while individual changed data is there and kept track with the help of file system snapshoting mechanism. What we have here is essentially a lethal combination!!! :)&lt;br /&gt;There is in-built NFS support from vmware but I don't know what other features do they provide along with. I guess, both Vmware and Xen supports most of these facilities. Vmware owned by EMC recently released 10% of its shares and it almost doubled within few hours. Xen was also acquired by Citrix. I am wondering about the upcoming trends in virtualization!!!&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Update :&lt;/span&gt; Intel recently announced their own virtualization initiative based on Xen. And Vmware stock dropped on the news while Oracle's rose!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-2484290463591972515?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/yQ7P0dLuBX8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/yQ7P0dLuBX8/virtualization-wave.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2007/10/virtualization-wave.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-3126897858941153392</guid><pubDate>Thu, 16 Aug 2007 07:14:00 +0000</pubDate><atom:updated>2007-09-04T20:54:02.566+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Microprocessor</category><category domain="http://www.blogger.com/atom/ns#">Architecture</category><title>Sun Niagara T2</title><description>&lt;span style="font-family:verdana;"&gt;Sun recently launched a new chip, named Niagara UltraSparc T2. T2 posses tremendous processing power packed in. It has 8 cores on die, each capable of holding 8 threads at a time. There is a dedicated FPU per core. Some features worth mentioning are - bigger L2 cache, on die 10Gbps NIC, virtualization support, on die PCI Express lanes, a crypto unit per core and 4 memory controllers. Since each core can hold 8 threads simultaneously,  where other CPUs would make a context switch, T2 would save time. Those features make T2 a pretty obvious target for computing power hungry applications.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Sun has been pushing this chip to market as a commodity so that it can be used for general purposes like  - big data centers, financial services (will benefit from the on-die crypto unit), web services, big telcos and proprietary solutions. It is quite evident that Sun MicroElecronics division has traded higher CPU cycles for low power consumption. T2 runs on a rather low CPU frequency of 1.4 GHz where the competition is running processors worth 3-4GHz fast. Clearly, Sun has pushing parallel computing as much as possible since this approach consumes low power by having a low frequency CPU while using all possible benefits of parallel computing.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;As of now, this approach seems to be a winner. T2 is safely ahead of competition in terms of throughput, power consumption and efficiency. And it is currently leading the SPEC benchmarks. &lt;/span&gt;&lt;span style="font-style: italic; font-weight: bold;font-family:verdana;" &gt;Interesting thing is to see if Sun can keep this lead&lt;/span&gt;&lt;span style="font-family:verdana;"&gt;. Intel n AMD are in the process of rolling out their quad-core CPUs to market shortly. &lt;/span&gt;&lt;span style="font-style: italic; font-weight: bold;font-family:verdana;" &gt;Also running a low frequency CPU, it would be interesting to see single thread performance on T2&lt;/span&gt;&lt;span style="font-weight: bold;font-family:verdana;" &gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Sun has to really push this chip so as to pursue customers to adopt this Sparc chip instead of their usual x86 setups.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Sun is planning to introduce the next processor named Rock in next year. It would be an excitement to see what improvements does Sun bring into the new processor over T2. Sun also claims Solaris has been successfully run on T2. Using Solaris along with ZFS on T2 would be a killer combination as of now. Eagerly waiting for the first official Sun launch of a storage box based on T2.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;P.S&lt;/span&gt;. A new MIT startup has announced its new chip Tilera, a 64 core processor with features same as US T2, likewise, on chip DIMM, gbps NICs, PCIe lanes etc. It provides a mesh of cores, which serves as an alternative for high speed bus interconnect. The clock cycles are within the range 600MHz - 900MHz. It usually takes one cycle to move data from one core to another. Would be nice to see a comparision benchmark of Tilera against US T2.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-3126897858941153392?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/HhZHzbB5g_s" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/HhZHzbB5g_s/sun-niagara-t2.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2007/08/sun-niagara-t2.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-8730865142275621048</guid><pubDate>Sat, 26 May 2007 13:23:00 +0000</pubDate><atom:updated>2007-08-17T12:10:55.762+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">File Systems</category><title>Storage Upcoming!!!</title><description>&lt;span style="font-family:verdana;"&gt;With ideas like &lt;a href="http://www.byteandswitch.com/document.asp?doc_id=124328"&gt;thin provisioning&lt;/a&gt; taking shape, storage market is bumping with new ideas. And now comes pNFS - parallel NFS which enables multiple NFS servers to contribute to become a single server and share a clustered file system.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Network-attached_storage"&gt;NAS &lt;/a&gt;though cheap has a fundamental limit in scaling and performance.  Here the pNFS chips in. It can reuse your commodity servers to form a cluster out of them and can really scale linearly. It almost works like a multi path file system where a regular NFS server is replaced by a NFS4.1 Meta Data server(MDS). The MDS is moved out of band and now clients can directly talk to the array behind. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;The best part is - this effort has been standardized through IETF and on its way to become a part of NFS4.1 draft. So storage vendors know which direction to drive their efforts to. As of now only &lt;a href="http://www.panasas.com/"&gt;Panasas &lt;/a&gt;provides a pNFS solution and chances are others will follow. It would be really interesting to see next few months on the market :)&lt;br /&gt;Sun is likely to come up with the next implementation. For some good tutorials about pNFS, watch this space  .... &lt;a href="http://opensolaris.org/os/project/nfsv41/pnfsdemos/basics/"&gt;http://opensolaris.org/os/project/nfsv41/pnfsdemos/basics&lt;/a&gt;&lt;br /&gt;An html version of the NFS 4.1 draft is available here&lt;br /&gt;&lt;a href="http://www.nfsv4-editor.org/draft-10/draft-ietf-nfsv4-minorversion1-10.html"&gt;http://www.nfsv4-editor.org/draft-10/draft-ietf-nfsv4-minorversion1-10.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-8730865142275621048?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/phcD-pWDvAM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/phcD-pWDvAM/storage-upcoming.html</link><author>noreply@blogger.com (Anand)</author><thr:total>2</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2007/05/storage-upcoming.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-8296448534169489231</guid><pubDate>Tue, 08 May 2007 11:48:00 +0000</pubDate><atom:updated>2007-08-17T12:14:20.565+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Philosophy</category><title>You conscious?</title><description>&lt;span style=";font-family:verdana;font-size:100%;"  &gt;I strictly believe, one should not mix emotions with his/her profession. At least a developer should not. One should be only professional about his/her work and not sentimental. Then only you can enjoy perks of both.&lt;br /&gt;But there is this certain sense of selfness which often stumbles upon while working, can be called as your conscious. When you are working with an upset mind, you are very much aware of the fact that it is you who is working on something which makes you nervous and you are not able to give out your best. You may take hours to complete things that would have been done in minutes otherwise. Basically you mess up anything you do.&lt;br /&gt;Its quite obvious to be nervous if your boss yells at you or passes signals that he/she is not happy with you. It will definitely affect your work.&lt;br /&gt;In my case, if I am upset, i take a break and have food :). Just spend few minutes not thinking about the thing just happened and get back to work.&lt;br /&gt;I think only experience can fix those things. If you are getting conscious, work more often, you will lose it eventually.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-8296448534169489231?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/VM7UbvmN27k" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/VM7UbvmN27k/you-conscious.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2007/05/you-conscious.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-3607904479367932415</guid><pubDate>Tue, 08 May 2007 08:56:00 +0000</pubDate><atom:updated>2007-08-17T12:15:46.535+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Philosophy</category><title>Bored???</title><description>&lt;span style="font-family:verdana;"&gt;Another software guy got bored of his job? Doesn't know how to spend time? Or the worst part, are you on bench? Don't worry, we have got a good news for you folks:). A recent Slashdot post tells about ideas that were born of the spare time. Web 2.0, Ajax, Linux kernel development to mention a few.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Check this out - &lt;/span&gt;&lt;a style="font-family: verdana;" href="http://www.longtail.com/the_long_tail/2007/05/the_awesome_pow.html"&gt;http://www.longtail.com/the_long_tail/2007/05/the_awesome_pow.html&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;So if you are suffering from the same problems, cheer up and try to work on a spare-time project. Chances are you would be able to do better whatever you do, software:)  No harm. Plus you can gain a little recognition in the web world.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Believe me, I am trying to work on a spare time project myself. Its hard for sure :). But I won't quit. Let me know if you complete yours :)&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-3607904479367932415?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/TFLQWItziDA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/TFLQWItziDA/bored.html</link><author>noreply@blogger.com (Anand)</author><thr:total>1</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2007/05/bored.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-3215454236939710620</guid><pubDate>Tue, 08 May 2007 08:27:00 +0000</pubDate><atom:updated>2007-08-17T12:16:21.400+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">File Systems</category><title>System layering</title><description>&lt;span style=";font-family:verdana;font-size:100%;"  &gt;Recently Andrew Morton, a lead Linux kernel developer called ZFS as layering violation. And you can see a fantastic reply from Jeff Bonwick, the lead of ZFS project here - &lt;/span&gt;&lt;span style="text-decoration: underline;font-family:verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;a href="http://blogs.sun.com/bonwick/entry/rampant_layering_violation"&gt;http://blogs.sun.com/bonwick/entry/rampant_layering_violation&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:verdana;font-size:100%;"  &gt;IMHO, even if ZFS violates the conventional layering stack, it will thrive as long as it is performing better than other file systems. ZFS is the future of file systems and has introduced many path breaking features which no other file systems can claim as of now. Few mentions would be detecting silent data corruption, numerous snapshots, scalable infrastructure, in short end to end data integrity which is what matters at the end of the day.&lt;br /&gt;I might sound like anoother ZFS fan but the truth is out there. ext2/ext3 apart from doing what they are supposed to do are prone to silent corruptions and are doing basically what FFS was doing few years ago. Since ZFS guys were brave enough to throw away years old conventions, they have been able to aggregate the control to only one entity, the file system which can manage from raid groups to backup to clones.&lt;br /&gt;I personally believe Linux is the best thing happened with the computers in last few years. But ZFS took over almost everyone in File Systems development.  I think both OpenSolaris and Linux would thrive and Linux might adapt the new features offered by ZFS.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-3215454236939710620?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/nrM6WaVc-3Y" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/nrM6WaVc-3Y/system-layering.html</link><author>noreply@blogger.com (Anand)</author><thr:total>1</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2007/05/system-layering.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2000738058837645358.post-1431164989802795516</guid><pubDate>Thu, 03 May 2007 06:47:00 +0000</pubDate><atom:updated>2007-05-04T11:44:39.765+05:30</atom:updated><title>Hello world...</title><description>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:verdana;"&gt;Hi!!! My name is Anand Vidwansa. This is my first post for the world. A typical beginning would be to tell about myself, my hobbies, etc etc. And I am not gonna be a path breaker here :)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;I am just one of the software guys you find in bulk these days. My interests vary from Music, bikes, hanging out and finally to the damn computers. I am no different than any other software guy out there. Still I want to tell you about myself. After all, I am a human being, looking out for people with similar interests and I guess computers would be the most common one.&lt;br /&gt;So you would be seeing a lot of crap here about Music, philosophy, computers blah blah blah :)&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:verdana;font-size:100%;"  &gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;span style=";font-family:verdana;font-size:100%;"  &gt;My computer intestest typically fall within Storage, Systems, *nix kernels. I have been working in the industry for past 2 and half years. I have primarily worked with File Systems, VFS, physical file system, Quotas, Archiving, NFS, CIFS and LVM.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2000738058837645358-1431164989802795516?l=anandvids.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/anandvids/~4/gNDjgHTiQz8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/anandvids/~3/gNDjgHTiQz8/hello-world.html</link><author>noreply@blogger.com (Anand)</author><thr:total>0</thr:total><feedburner:origLink>http://anandvids.blogspot.com/2007/05/hello-world.html</feedburner:origLink></item><language>en-us</language><media:rating>nonadult</media:rating></channel></rss>

