Friday, June 25, 2010

ட்விட்டருக்கு ஆபத்து?


உலக கோப்பை கால்பந்தாட்ட ஜூரத்தின் வேகம் நாளுக்குநாள் அதிகரித்து வருவதால், அதன் ரசிகர்கள் எழுதும் ட்வீட்ஸ் (Tweets)-களின் எண்ணிக்கையை தாக்குப் பிடிக்க முடியாமல் ட்விட்டர் நிலைகுலையக் கூடும் என்று சில மென்பொருள் நிபுணர்கள் கருத்து தெரிவித்திருக்கிறார்கள்.

இதைப் படிக்கையில் எனக்கு சிரிப்புதான் வந்தது. ஏனென்றால், "எத்தனை கோடி டேட்டா (data) தந்தாய் உலகே" என்று ஜாலியாகப் பாடிக் கொண்டிருக்கும் ட்விட்டர், இன்னும் எத்தனை கோடி டேட்டா தந்தாலும், இது எனக்கு கவுரவப் பிரசாதம் என்று ஸ்வாஹா செய்து விடும். காரணம் அது ட்வீட்ஸ்களை சேமிக்கும் டேட்டாபேஸ் (Database)-ஐ கட்டிக் காப்பது சர்வ வல்லமை பொருந்திய இளவரசி காசண்ட்ரா (Cassandra).

பண்டைய துருக்கி நாட்டின் புகழ்பெற்ற ட்ராய் (Troy) நகரின் இளவரசி காசண்ட்ராவிற்கும் ட்விட்டருக்கும் என்ன சம்பந்தம்? இதன் நதிமூலம் கூகுள். அங்கிருந்தே விளக்குகிறேன்.

இன்று இன்டர்நெட்டின் மொத்த ட்ராஃபிக்-இல் 45 சதவீதம் கூகுளை நோக்கியே. கூகுள் எப்படி இதைத் தாக்கு பிடிக்கிறது? அது எப்படி அதன் டேட்டாவை சேமித்து வைக்கிறது? எதைக் கேட்டாலும் எப்படி அதனால் உடனே தர முடிகிறது என்றெல்லாம் யோசித்ததுண்டா?

ஒன்று வாங்கினால் இன்னொன்று ஃப்ரீ, மாடு வாங்கினால் ஆடு ஃப்ரீ, ஆடு வாங்கினால் வாத்து ஃப்ரீ என்ற ரீதியில் மற்ற நிறுவனங்களெல்லாம் செயல்பட, நீ எதுவுமே வாங்க வேண்டாம் ராசா, உனக்கு எல்லாமே ஃப்ரீ என்று எப்படி கூகுளால் தர முடிகிறது என்றாவது யோசித்ததுண்டா?

பொதுவாக பெருமளவு டேட்டாவை சேமிக்க பெரிய பெரிய ஹார்ட்வேர் (hardware), டேட்டாபேஸ் சர்வர்கள் (database servers), சூப்பர் கம்ப்யூட்டர்கள் ஆகியவற்றில் மில்லியன் கணக்கில் முதலீடு செய்ய வேண்டும். ஆனால் கூகுள் தனக்கு விளம்பரங்கள் மூலம் கிடைக்கும் வருவாயை இதற்கு வீணடிக்காமல் மாத்தியோசித்தது.

டேட்டா தின்று கொட்டை போட்ட Oracle, SQL Server ஆகியவற்றை ஒதுக்கித்தள்ளி பிக் டேபிள் (Big Table) என்ற புதிய டேட்டாபேஸ்-ஐ உருவாக்கிக் களமிறக்கியது. இது மின்னல் வேகத்தில் செயல்படக் கூடியது. ஆனால் இதனை சாதாரண கம்ப்யூட்டரில் கூட நிறுவ முடியும். மலிவான சிறிய சிறிய கம்ப்யூட்டர்களை பிக் டேபிளுடன் உலகெங்கும் நிறுவி அவற்றை மேகம் போன்ற ஒரு நெட்வொர்க்-கில் இணைத்தது.  இதற்கு க்ளவுட் கம்யூட்டிங் (Cloud Computing) என்று பெயர்.

இந்தக் க்ளவுடில் இருக்கும் கம்ப்யூட்டர்கள், "என்கிட்ட இது இருக்கு, உன்கிட்ட என்ன இருக்கு, நீ இத வச்சுக்கோ, நான் இத வச்சுக்கிறேன்" என்றெல்லாம் வளவள லொடலொட எனப் பேசி டேட்டாவை பண்டமாற்றிக் கொள்ளும். இதற்கு காஸிப் ப்ரோட்டோகால் (Gossip Protocol) என்று பெயர். இதன் மூலம் இந்த நெட்வொர்க்கில் ஒரு கோடியில் நுழையும் டேட்டாவானது சில நிமிடங்களிலேயே மேகமாக ஆனால் சற்று வேகமாக நகர்ந்து, வழியெங்கும் பிரதி (copy) எடுத்தபடியே, மறு கோடிக்குச் சென்று விடும். இதனால், உலகின் எந்த மூலையிலிருந்து கேட்டாலும், உங்களுக்கு அருகிலுள்ள கூகுளின் கம்யூட்டர் "இதானே கேட்டீங்க, இந்தாங்க வெச்சுக்கோங்க" என உடனே கொடுத்துவிடும். இதுவே கூகுள் வெற்றியின் ரகசியம்.

கூகுள் தன் பிக் டேபிளின் சூட்சுமங்களை வெளி உலகிற்குக் கோடிட்டுக்காட்ட, அதை வைத்து ஃபேஸ்புக் (Facebook), கணினிச் செம்மொழியான ஜாவாவைப் (Java) பயன்படுத்தி, பிக் டேபிள் என்ற சக்ரவர்த்திக்கு மகளாக ஒரு புதிய டேட்டாபேஸ்-ஐ உருவாக்கியது. அதற்கு காசண்ட்ரா என்ற நாமகரணமும் சூட்டியது. ஆக துருக்கி தேச இளவரசி, இப்பிறவியில் டேட்டாபேஸ்-ஆக அவதரித்து விட்டாள். ஆனால் ஃபேஸ்புக்கில் அவள் வளர போதுமான வசதிகளில்லை.  Apache.org என்ற ஓபன் ஸோர்ஸ் (Open Source) அரண்மனைக்கு அவள் அனுப்பப்பட்டாள். அங்கே அவள் சகல வித்தைகளையும் கற்று, யௌவனங்கள் நிறைந்த அரசிளங்குமரியாய்த் திரும்பி ஃபேஸ்புக்கில் அரியணை ஏறினாள்.  அன்று முதல் ஃபேஸ்புக்கின் முகம் மேலும் பிரகாசிக்கத் தொடங்கியது.

காசண்ட்ராவின் கொடியிடை அழகிலும் (Smallest Database), ஆட்சித் திறத்திலும் (Replicating the database), மாட்சித் திறத்திலும் (Maintaining the database) மயங்கிய ட்விட்டர் அவள் தலைமையை ஏற்றது (அப்பாடா!! கூகுளில் தொடங்கி ஃபேஸ்புக் வழியாக ட்விட்டரில் முடித்து விட்டேன்!). Digg.com, Outbrain.com போன்ற ஜாம்பவான்களும் தங்களை காசண்ட்ராவுடன் இணைத்துக் கொண்டன.

காசண்ட்ராவின் ஆட்சி விரியத் தொடங்கியது. அவள் சாம்ராஜ்யத்தில் கால்பந்தாட்ட மைதானங்களெல்லாம் கால் தூசிற்குச் சமம். இப்போது நான் சிரித்ததன் அர்த்தம் புரிகிறதா?!!

பெரும் ராஜ்ஜியங்களைப் பிடித்தபின், குழந்தையிடம் விளையாட வருவது போல் காசண்ட்ரா இப்போது என்னிடம் வந்துள்ளாள். டெரா பைட்ஸ் (Tera Bytes) கணக்கில் டெட்டா புரளும் என் ப்ராஜெக்ட்-ன் அடுத்த கட்ட நடவடிக்கையாக நான் பணிபுரியும் கம்பெனியில் இளவரசியை களமிறக்கிக் கொண்டிருக்கிறேன்.

13 comments:

  1. உங்கள் இளவரசிக்கு இப்பொழுதெல்லாம் அடிக்கடி காய்ச்சல் வந்துவிடுகிறது Twitter-ல்.

    Twitter அடிக்கடி அடிக்கடி 'Twitter is over capacity' என்று அழுதுகொண்டிருக்கிறது.

    http://status.twitter.com/ - ல் check பண்ணுங்க தலைவரே!

    ReplyDelete
  2. அப்பாடா.. அப்போ ட்விட்டருக்கு ஆபத்தில்லைதானே.. தினத்தந்தி தலைப்பைப் பார்த்து பயந்துவிட்டேன்.

    நல்ல டெக்னிக்கல் கட்டுரை.

    ReplyDelete
  3. அழகான விவரணை ... அப்பப்போ இப்படி நவீன தொழில்நுட்பங்களை எங்களுக்குப் புரியறமாதிரி பிரிச்சு மேயுங்க!

    பை தி வே, இந்த காசண்ட்ராவைச் சின்ன ப்ராஜெக்ட்ஸுக்கும் பயன்படுத்தமுடியுமா? அல்லது பெருந்தலைகளுக்குமட்டும்தான் பணிவாளா?

    - என். சொக்கன்,
    பெங்களூரு.

    ReplyDelete
  4. @அழகு நிலவன்: உங்கள் கூற்று உண்மைதான். காசண்ட்ராவின் தலைமையை ஏற்ற ட்விட்டர், இன்னும் தன் அனைத்து பகுதிகளையும் முழுவதுமாக காசண்ட்ராவிடம் சமர்பிக்கவில்லை. அதற்கு இன்னும் சில காலம் பிடிக்கும்.

    @சொக்கன்: இது ஒரு இலகுரக டேட்டாபேஸ். இதன் அளவு 20MB-க்கும் குறைவே. சின்ன ப்ராஜெக்ட்ஸுக்கு தாராளமாகப் பயன்படுத்தலாம். ஆனால் SQL வழி யோசித்துப் பழகிவிட்ட நமக்கு, இந்த NO-SQL டேட்டாபேஸ்-ஐக் கையாள தனி பயிர்ச்சியும் சரியான திட்டமிடலும் தேவை.

    ReplyDelete
  5. நன்றி காஞ்சி ரகுராம் - எங்கே ஆரம்பிக்கலாம்ன்னு கொஞ்சம் லிங்க்ஸ் கொடுங்களேன், இதுபற்றிச் சின்ன R & D செய்ய ஆவல் (கூகுள்ல தேடலாம், ஆனா நீங்க ஏற்கெனவே இதில இறங்கிட்டதால நல்ல உதவி இணைப்புகள் வெச்சிருப்பீங்க-ன்னு ஒரு நம்பிக்கை, Thanks in advance)

    - என். சொக்கன்,
    பெங்களூரு.

    ReplyDelete
  6. காசண்ட்ராவின் வளைத்தளம்: http://cassandra.apache.org/

    தங்கள் முதல் பரிசோதனையைத் துவங்க:
    http://www.sodeso.nl/?p=80

    ஒரு சிறந்த உதாரணம்:
    http://www.rackspacecloud.com/blog/2010/05/12/cassandra-by-example/

    காசண்ட்ராவிற்கு ஒரு API - ஹெக்டர் (Hector). துருக்கி தேசத்தில் இவன் காசண்ட்ராவின் அண்ணன்.
    http://prettyprint.me/2010/02/23/hector-a-java-cassandra-client/

    ReplyDelete
  7. ஆஹா...!
    வாய்ப்பே இல்லாத மிகவும் எளிய விளக்கம். தெளிவு....தெளிவு...
    நன்றி ரகுராம்!

    ReplyDelete
  8. நன்றி காஞ்சி ரகுராம்!

    - என். சொக்கன்,
    பெங்களூரு.

    ReplyDelete
  9. காஞ்சி ரகுராம், சுவாரசியமான பதிவு. நன்றி. இப்படி ஒரு ஆசிரியர் எனக்கு அறிவியலில் கிடைக்கவில்லையே என்று ஏக்கமாக இருக்கிறது :-)
    பெருந்தேவி

    ReplyDelete
  10. நீங்கள் ஏன் தனியாக தமிழில் ஒரு டெக் ப்ளாக் துவங்கக் கூடாது?

    ReplyDelete
  11. மிக்க நன்றி SRK. இன்னும் கொஞ்சம் எழுதிய பிறகு முயற்சி செய்கிறேன்.

    ReplyDelete
  12. அருமையான பதிவு! எளிமையாகப் புரிந்தது! தங்களது சமக்கிருதப் பயன்பாட்டையும் ஆங்கிலப் பயன்பாட்டையும் சற்றே குறைத்துக் கொண்டால் நலம்!

    ReplyDelete

உங்கள் கருத்தை கொஞ்சம் சொல்லுங்களேன்...