��K�͕��U�����t���[�����[�N�̐v�A�������i�s��
�y�V��MapReduce�EHadoop��Ruby�����p
2008/12/01
�@�y�V��11��29���A�����E�i��̖{�ЂŊJ�Â����Z�p�n�C�x���g�u�y�V�e�N�m���W�[�J���t�@�����X2008�v�ɂ����āA�߂������ɓ��Ђ�E�R�}�[�X�T�[�r�X�u�y�V�s��v���x����v�悪����Ruby�x�[�X�̑�K�͕��U�����Z�p�uROMA�v�i���[�}�j�Ɓufairy�v�i�t�F�A���[�j�ɂ��āA���̊T�v�𖾂炩�ɂ����B
���R�����f�[�V�����̏������̂̓V���v��
�@�y�V�s��ł͌��݁A2600���_�̏��i����舵���A4200���l�̉���ɑ��ăT�[�r�X����Ă���B���̋K�͂̉�����E���i�_���Ń��R�����f�[�V�����i���i�̐��E�j���s���̂͗e�Ղł͂Ȃ��B
���L�����o���Ɋy�V�s��̉������4800���l�Ƃ��Ă���܂������A����͊y�V�O���[�v�̃T�[�r�X���p�ґS�̂̐����ł����B�y�V�s��̉�����͐�������4200���l�Ƃ̂��Ƃł��B���l�т��Ē����������܂��B
�@���R�����f�[�V�����̎d�g�݂Ƃ��ē��Ђ́A��ʓI�ŃV���v���ȃA�v���[�`���g���Ă���Ƃ����B1�́g�����t�B���^�����O�h�ƌĂ����̂ŁA�w�������⏤�i�A�C�e���̕]�����������[�U�[��T�������A���w���̏��i�����߂�Ƃ������̂��B���̕��@�ł͎����ƚn�D�i�������j�������l�����������̂����E�����̂ŃW�������ɊW�Ȃ��A�ӊO���̂��鏤�i�����E�ł���B����1�̕��@�́A���i���⏤�i�������ގ����Ă�����́A����������Γ��W�������̂��̂𐄑E������@���B
�@�y�V�ł͂����̕��@�ɉ����āA�ɏ����Ɖ�čɂ̑������̂𐄑E����i�ɂ��Ȃ����̂͐��E���Ȃ��j�ȂǓƎ��̏����������Ă���Ƃ������A��{�I�ȃA�v���[�`�̓V���v�����Ƃ����B
�y�V��������Ă��܂�
�@�v�Z���f�����V���v���ł��K�͂�����ɂȂ�Ƃ܂������ʂ̖�肪���܂�Ă���B�������ׂ����ʂ������I�ɑ������Ă��邩�炾�B
�@�Ⴆ�����t�B���^�����O�ł̓��[�U�[���c���ɁA���i�A�C�e���������ɂ����w�������}�g���b�N�X�ɂ��Čv�Z�������s���K�v�����邪�A���܂�ɗʂ������A�f���Ɏ�������Ɓu2���҂��Ă��v�Z���I���Ȃ��Ƃ������ƂɂȂ�v�i���Ёj�B���Ђł͉ߋ�1�N�����ł��A�������ׂ��f�[�^�ʂ�3.7�{�ɖc��Ƃ����B
�@���̂��ߓ��Ђł̓A���S���Y���̍H�v�Ƒ�K�͕��U�����Ƃ���2�̖ʂŎ��g��ł���Ƃ����B
�@�A���S���Y���ʂł́A�Ⴆ�Κn�D�̎������[�U�[���ǂ����肷��̂ɁA�u���[�J���e�B�E�Z���V�e�B�u�E�n�b�V���O�v�iLSH:Locality Sensitive Hashing�j�Ƃ����e�N�j�b�N���g���Ă���Ƃ����BLSH���g���ƁA���[�U�[�̍w����]���̗��������ʃx�N�g���̋������������ꍇ�A�����m���Ńn�b�V���l����v���邽�߁A�x�N�g���Ԃ̋��������ׂČv�Z�����ɍςނƂ����B�܂��A���i��玫���ƃ}�b�`���錾�t�𒊏o����ۂɂ͌����֘A�Œm��ꂽ�Z�p�u�_�u���E�A���C�E�c���[�v�iDouble Array Trie�j���g�����Ƃō��������Ă���Ƃ����B
�@���������A���S���Y���̍H�v�ɉ����Ď��g��ł���̂���K�͕��U�������B���݂̓I�[�v���\�[�X��Java�������U�����t���[�����[�N�uHadoop�v���g���Ă��邪�A���Ђ͍���ARuby�x�[�X�ŊJ�����́uROMA�v��ufairy�v�ɑ�ւ��Ă����v��Ƃ����B
MapReduce�AHadoop�̊y�V�Łufairy�v
�@�d�����Ӗ�����ufairy�v��Ruby�Ŏ���������K�͕��U�����t���[�����[�N���B�uFramework Ambient Integration On Ruby�v�̗��̂Ƃ������ƂɂȂ��Ă��邪�u���������������ŁA���ɈӖ��͂Ȃ��v�i�y�V�Z�p������ �V�j�A�e�N�m���W�X�g ���c�n���j�Ƃ����B��������Z�p�̓O�[�O����GFS/MapReduce��A���t�[�����S�ƂȂ��ĊJ����i�߂�I�[�v���\�[�X��Hadoop���B
�@fairy�̊J����S������y�V�Z�p������ �q���������̒����������́u�����̂��߂�MapReduce�̂悤�Ȃ��̂ƌ������A���ۂɂ͏������f�����قȂ�v�Ɛ�������BMapReduce�͏����Ώۂ������ȒP�ʂɕ����ĕ��U�������A������W�čŏI���ʂ�Ƃ����傫��2�̏�������Ȃ邪�Afairy�ł͔C�ӂ̐��̃t�B���^��K�p�ł���Ƃ����Ⴂ������B���o�͂��X�g���[���ň����A���̃X�g���[���Ɋe�t�B���^�������K�p���Ă������Ƃŏ������s���B
�@fariry�̃t���[�����[�N�ł͏������˗�����g�N���C�A���g�h�A��������g�}�X�^�[�h�A�}�X�^�[����א�̃f�[�^�Ə����˗������g�m�[�h�h��3�v�f����Ȃ�B�e�m�[�h��ł́A���������T�[�o�����O�ɋN�����Ă����B��낤�Ǝv����1���3�������Ȃ��邪�Afairly�͑�K�͂ŃX�P�[���u���ȃV�X�e����z�肵�Ă���Ƃ����B
�@���̓f�[�^�Ƃ��ăI�[�v�������t�@�C���͕��U�m�[�h��Œf�Љ����邪�A���z���U�t�@�C���iVFile�j�Ƃ��Ĉ����邽�߁A�v���O���}�͂�����ӎ�����K�v���Ȃ��B�܂��A���̓f�[�^�͌��݂̂Ƃ���e�L�X�g�f�[�^�݂̂̑Ή������A����̓o�C�i������������Ƃ����B
�@��\�I�ȃt�B���^�Ƃ��āA���̓f�[�^��v�f�Ƃ��Ĉ����A���̃t�B���^�ɏo�͂���umap�v�n�̂��̂�A���̓f�[�^���O���[�s���O���Č��̃t�B���^�ɏo�͂���ugroup_by�v���g����Ƃ����BMapReduce��Hadoop�́gHello World�h�ɑ������郏�[�h�E�J�E���g�i�P�ꂲ�Ƃ̏o���𐔂���j�̏����ł́u�P��ɕ����v�ismap�j�A�u�P�ꂲ�ƂɃO���[�s���O�v�igroup_by�j�A�u�O���[�s���O���ꂽ�P�ꐔ�𐔂���v�ismap�j�Ƃ���3�i�K�Ŏ����ł���B�y�V�ł͉��疜���ɂ��Ȃ郆�[�U�[���Ƃ̍w����������A���i�A�C�e�����ƂɃO���[�s���O���ꂽ�������W�v�ɂ܂Ƃ߂�悤�ȏ�����fairy���g���v��Ƃ����B
�@�����̃t�B���^�����́ARuby�v���O���}�ɂ͂Ȃ��݂̐[�����@/�����\���ł���R�[�h�u���b�N���g���Ē�`�ł���B�uRuby�̐��Y���̍����Ȃ�Ȃ��ŁA���R�ŊȌ��ɕ��U�����ł���悤�ɐv�����v�i���c���j�Ƃ����BROMA/fairy�̐v�E�J���ɂ������Ă�Ruby�v�҂̂܂��Ƃ䂫�Ђ뎁�̃A�h�o�C�X���Ă���A�u���Ƀm�[�e�[�V�����i�L�@�j�ɂ��Ă͂܂��Ǝ��̋���������肪���f����Ă���v�i�����j�Ƃ����B
�@�\���ȃp�t�H�[�}���X���o�����Ƃ�fairy�̑傫�Ȑv�ڕW�Ƃ����B�uRuby�͂��Ƃ��Ƒ����ƌ����Ă��Ȃ����A�Ȃ�ׂ��f�[�^����������ɒu���Ƃ��A�l�b�g���[�N�z���̓]����}����Ȃǂ��Ď��p�ɑς���p�t�H�[�}���X��ڎw���Ă���v�i�����j�B�܂������Java VM��œ���Ruby�����n��JRuby�ւ̑Ή�����������BC�ŏ����ꂽ�I���W�i����Ruby�ł͈ڐA�����d���������߃X���b�h�����̓l�C�e�B�u�X���b�h�ɑΉ����Ȃ��B���̂��߃}���`�R�A�̉��b���Â炢�BJRuby�ł���Ώ����̕����e�Ղł͂Ȃ����Ƃ����B
�@����fairy�͊�{�I�ȃt�B���^�����͎����ς݂œ��삵�Ă��邪�A�p�t�H�[�}���X�ɂ��Ă͖��m�����B���c���́u����͎��ۂ̉ۑ�œK�p�\���������Ă������A�x���Ďg���Ȃ���Ƃ����b�ɂȂ�Ǝv���̂ŁA�ǂ�ǂ�`���[�j���O���Ă��������v�Ƙb���B�u���낢��ۑ�͂���Ǝv�����A�gYes, we can�h�Ƃ������_�ł���Ă����v�i�����j�ƈӋC���݂����B
memcached�ACoherence�ADynamo�ɑ�������uROMA�v
�@�y�V�̑�K�͕��U�����t���[�����[�N�̂���1�̃v���W�F�N�g�́uROMA�v�iRakuten On-Memory Architecture�j�Ɩ��t����ꂽ���U�I���������X�g���[�W���B�C�ӂ̑䐔�̃T�[�o�ɓ��ڂ��ꂽ�����������z�I��1�ɂ܂Ƃ߁A1�̑傫�ȃn�b�V���e�[�u���̃X�g���[�W�Ƃ��Ĉ������Ƃ��ł���Ƃ����B�u�L�[�E�l�v�ikey-value�j�Ƃ����I�u�W�F�N�g�f�[�^��ۑ�������iPUT�j�A�ǂݏo������iGET�j�ł���BROMA�̃N���C�A���g�ɂ�Ruby��Java���g����B
�@ROMA�́A�A�}�]�����uDynamo�v�Ɩ��t�����V�X�e���Ŏ��g�ޕ��U�n�b�V���e�[�u���̎�����A�I���N�����f�[�^�x�[�X��I/O�{�g���l�b�N����������ړI�Œ��镪�U�^�C���������E�f�[�^�O���b�h�uOracle Coherence�v�ɑ�������d�g�݂��Ƃ����B���W���̊ɘa��f�B�X�NI/O�̃{�g���l�b�N������ړI�Ƃ��Ă���_�ł́A���U�������I�u�W�F�N�g�L���b�V���V�X�e���́umemcached�v�Ƃ��d�Ȃ�B
�@Dynamo�ACoherence�AROMA�Amemcached�͋Z�p�I�Ɏ��Ă��邪�A�y�V�Z�p�������̐��V���䎁�ɂ��A�����ɂ̓f�[�^�̈�ѐ��ɑ���l�����̈Ⴂ������Ƃ����B�u�p�t�H�[�}���X�ƃf�[�^�̈�ѐ��̓g���[�h�I�t�v�i���V���j�ŁA�Ⴆ��memcached�̓p�t�H�[�}���X�͍������A�f�[�^�̈�ѐ��̕ۏ̓N���C�A���g���s���K�v������B�t��ROMA�̓f�[�^�̈�ѐ����d�����Ă���A���[�U�[�i�J���ҁj�͎��ۂ̃f�[�^���ǂ̃m�[�h�ɂ��邩�A���̃f�[�^���L���Ȃ��̂��ǂ����Ȃǂ��C�ɂ���K�v���Ȃ��BDynamo�ł̓f�[�^�̈�ѐ���������x�]���ɂ��邱�ƂŃp�t�H�[�}���X���҂��ł���ƌ����Ă���B
���P2P�\���őϏ�Q��������
�@ROMA�̐v�ڕW��1�́A�����ׂȏ����Q���ɂ����퓮�삵������A�Ƃ������̂��B�Ϗ�Q���Ƃ����_�ł̓f�[�^�x�[�X��HA�\���ł��ǂ����A�f�B�X�NI/O�̃{�g���l�b�N���c��B�܂��P���Ƀ�������Ƀf�[�^��u���ƁA�R�X�g�������ޏ�ɏ�Q���Ƀf�[�^�r�����N����Ƃ�����肪����B
�@���̂��߁AROMA�ł�P2P�̊f�����̗p���Ă���A����m�[�h���ێ�����f�[�^�͗אڂ���2�̃m�[�h�ɂ��R�s�[����Ƃ���3�d�̏璷�x�����v�ɂȂ��Ă���Ƃ����B�������A����f�[�^��3���ɂ��邪�APUT/GET�͕K���v���C�}���m�[�h���S������B�p�t�H�[�}���X���グ�邽�߂ɂ́A�אڂ���Z�J���_���m�[�h�ɑ���PUT/GET������@�����邪�A�f�[�^�̈�ѐ���ۂ��₷�����Ƃ�A���݂͂܂����f���̌��ؒi�K�ł��邱�ƂȂǂ���AROMA�ł͂��������v�ɂȂ��Ă���Ƃ����B�v���C�}���m�[�h�������ׂɂȂ�{�g���l�b�N�ƂȂ�ꍇ�ɂ́A���̕t�߂ɐV�K�m�[�h��lj����邱�ƂőΏ��ł���̂ł͂Ȃ����Ƃ����BROMA�ł͊�ɕ��m�[�h�̔C�ӂ̏ꏊ�ɓ��I�Ƀm�[�h��lj��ł��邽�߁A���X�ƃT�[�o�i�������j��lj����Ă������ƂŃX�P�[���A�E�g�ł���B
�@�p�t�H�[�}���X����̂��߁AROMA�ł̓f�[�^�̒T���̓N���C�A���g���s���B�N���C�A���g�́AROMA�ɏ��߂ăA�N�Z�X�����Ƃ��Ɋe�m�[�h��ID�A�|�[�g�ԍ��A�n�b�V���l�Ȃǂ��擾����B�e�m�[�h�͔�є�т̃n�b�V���l�������ɗאڂ��ĕ���ł���A����L�[�̃n�b�V���l�����߂�ΒS���m�[�h��������B�������邱�ƂŃf�[�^�T���̂��߂̃m�[�h�ԃz�b�v��s�v�Ƃ��A�������X�|���X���x����������Ƃ����B�u�����������S��A�����Ă�1000����x������ƍl���Ă���̂ŁA���������������ł���v�i���V���j�B
�Ǝ��̃I�u�W�F�N�g�n���h�����O�ő��x����
�@�g���������h�Ƃ������t���g���Ă͂��邪�A�y�V��ROMA�̗��p�őz�肵�Ă���K�͂͑傫���B�u�����͐��S���I�u�W�F�N�g��ROMA�ɍڂ�����肾�v�i�������j�B�Ⴆ��5��̃m�[�h�ō\�������ꍇ�A100���I�u�W�F�N�g�ł��e�m�[�h���ێ�����I�u�W�F�N�g����60���i100���^5��~�璷�x3�j�ɂ��Ȃ�B�����Ȃ��Ă���ƁARuby�����n�̃K�[�x�[�W�R���N�^�̃I�[�o�[�w�b�h���傫���Ȃ�A���X�|���X�������Ȃ�B���܂背�X�|���X���x���Ȃ�ƁA���̃m�[�h��s�����Ɣ��肵���ʃm�[�h��őϏ�Q�p�̃��\�b�h������o���ȂǕʂ̖����o�Ă���Ƃ����B���̂��߁A�Ǝ��Ɏ��������g�����C�u�������g����Ruby�����n������q�[�v�̈�Ƃ͕ʂɃI�u�W�F�N�g��ۑ����A�����I�Ƀ��������J������Ƃ����`���[�j���O���s���Ă���Ƃ����B�����⏈�����f���͕��G�ɂȂ邪�ARuby�����n�Ɠ��l�Ƀ��[�U�[�i�J���ҁj�ɂƂ��ăV���v���Ɍ����邱�Ƃ��d�����Ă���Ƃ����B
�@���݁AROMA��5��\����GET�������s����1�b�Ԃ�8000�N�G�����x�̏����\�͂��o�Ă���Ƃ����B����͓��l�̍\����1�`2���N�G���^�b���������o��memcached�ɂ͋y�Ȃ����A�\���ɑ����B�܂����V���́A�u�A�v���P�[�V�����ɂ���Ắi��ѐ��𑽏��]���ɂ��Ă��j���x���ق������Ƃ�����̂ŁA�����������f���ɓK�������̂����Ă��������v�Ƙb���B
�@����ROMA�ł́A�A������3�m�[�h�������Ɏ���ꂽ�ꍇ�ł��f�B�X�N����f�[�^���ł���i�����@�\�̎������v�悵�Ă���B�܂��AROMA�Afairy�Ƃ�2009�N�ɂ̓I�[�v���\�[�X��������ɓ���Ă���A�y�V�ł́u��K�͏����⍂�����̒m����Ruby�R�~���j�e�B�ɊҌ����Ă��������v�i���V���j�Ƃ��Ă���B
�@�y�V��ROMA�Afairy�Ɏ��g�ރv���W�F�N�g�����o�͎Г��O���܂߂�5�l�BRuby�̊J���Œm����܂��Ǝ���Βˌ\�����A����E���U�v���O���~���O�Œm����y�V�Z�p�ږ�œ���y�����̑����p�F���Ȃǁu���ȃ����o�[�ł���Ă���v�i���c���j�Ƃ����B
�֘A�����N
�֘A�L��
- �܂��Ƃ䂫�Ђ뎁���y�V�Z�p�������t�F���[�ɁA�J�������� �i��ITNews�j
- ��K�͕��U���������̍��Y�g�E�F�uOS�h��Ruby�ŊJ���� �i��ITNews�j
- Ruby��������ۑ�ANaCl�̑O�c�����u�� �i��ITNews�j
- �I���c�������͂��܂��A�y�V���V�T�[�r�X�u�����y�v �i��ITNews�j
- Ruby on Rails�̃X�P�[���r���e�B�������i�A���X �i��ITNews�j
- Ruby��10�N�O��Java �i��ITNews�j
- �y�V���uRuby on Rails�̗��p���J�n���܂��v �i��ITNews�j
- �܂��Ɓ~���c�ARuby 1.9����� �i��ITNews�j
���������������F
- �v���O�����̎��s�͂ǂ̂悤�ɂ��čs����̂��ALinux�J�[�l���̃R�[�h����T�� �i2017/7/20�j
�@C����́uHello World�I�v�v���O�����Ŏg����A�uprintf()�v�umain()�v���̒��g���A�f�o�b�K�ɂ���͂Ƌt�A�Z���u���A�\�[�X�R�[�h�lj��Ȃǂ̂��܂��܂ȑ��ʂ���T��A�ځB�ŏI��́ALinux�J�[�l���̒��ł́A�v���O�����̋N�����ɂ͂ǂ̂悤�ȏ������s���Ă���̂���T�� - �G���W�j�A�Ȃ�C����v���O�����̏I���ɌĂяo�����exit()�̒��g�������Ă܂���ˁH �i2017/7/13�j
�@C����́uHello World�I�v�v���O�����Ŏg����A�uprintf()�v�umain()�v���̒��g���A�f�o�b�K�ɂ���͂Ƌt�A�Z���u���A�\�[�X�R�[�h�lj��Ȃǂ̂��܂��܂ȑ��ʂ���T��A�ځB����́A�v���O�����̏I���ɌĂяo�����exit()�̒��g��T�� - VBA�ɂ�����FileDialog����̊�{���h���C�u�̋e�ʁA�t�@�C���̃T�C�Y��^�C���X�^���v�̎擾���@ �i2017/7/10�j
�@�w�肵���h���C�u�̋e�ʁA�t�@�C���̃^�C���X�^���v�⑮�����擾������@�AFileDialog�^�G�N�X�v���[���[����̊�{���Љ�܂� - ����Ύc�ƁI�@�ʓ|�������G�N�Z���Ɩ����y�ɂ���uExcel VBA�v�Ƃ� �i2017/7/6�j
�@������������g�ʓ|�������Ɩ��h�B�ȒP�ȃv���O���~���O�Ō������ł���\��������B�{�e�ł́A�Ɩ��Ŏg�����Ƃ������uMicrosoft Excel�v�Ŏg����VBA���Љ��B���V���[�g�J�b�g�L�[�A�A�N�Z�X�L�[�̉������
|
|
�L�����A�A�b�v
- - PR -
�uITmedia �}�[�P�e�B���O�v�V���L��
Meta�ɒׂ���Ȃ����߂Ɏc���ꂽ�����c��̓��́H�\�\2025�N��SNS��\���iSnapchat�ҁj
��N�w�ɐl�C��Snapchat�����A��l�ɂ͂��܂�Z�����Ă��Ȃ��B����ŁAAR�i�g�������j�J...
�u�ҏ��v�u�đ����v�u�C���o�E���h�v�̉e���́H�@2024�N�ɍł�����グ���L�т����̃����L���O
�����X�̐���̔����z�̐L�т���A���p������̒��ʼn������ꂽ�̂���U��Ԃ郉���L���O...
Netflix�R���{���~�܂�Ȃ��@�u�C�J�Q�[���v�V�[�Y��2���J�Ől�C���オ��K���̃A�v���Ƃ́H
Duolingo�͌���w�K�A�v����Netflix�̑�l�C�h���}�����ѕt�����L�����y�[����W�J�B���O...