InfoQ Software Architects' Newsletter A monthly overview of things you need to know as an architect or aspiring architect. View an example
ä¸è¨ã®ãããªã·ã¹ãã ã§ããã©ã¼ãã³ã¹ãè¯ãã㪠SQLite ã使ç¨äºå®ã§ããããã£ã¨éããã®ãç¡ãã確èªã®ããä»ã®ãã¼ã¿ãã¼ã¹ã®ããã©ã¼ãã³ã¹ãè¨æ¸¬ãã¦ã¿ã¾ãããSQL å©ç¨åæã§ãããNoSQL ãå§åçãªæ§è½ãåºãå ´åã¯æ¤è¨ããå¿ è¦ãããã®ã§ KVS ã確èªãã¾ããã ãã¼ã¿ä»¶æ°ã¯ 1 å件ç¨åº¦ãJDBC SQL å©ç¨å¯è½ INSERTãUPDATE ã¯ããã SELECT ã¯ä¸»ãã¼ã¢ã¯ã»ã¹æ§è½ãéè¦ å°æ¥ã¹ã±ã¼ã«ã¢ã¦ãã®ããã®åæ£ã¯ããããããã¹ã¿ã³ãã¢ãã³ã§é ãã®ã¯ã ã ãã¼ã¿ãã¼ã¹ã®ããã©ã¼ãã³ã¹æ¯è¼ è¨æ¸¬ãããã¼ã¿ãã¼ã¹ ãã¼ã¿ãã¼ã¹å ã¿ã¤ã å½¢æ è©å¤ è¨æ¸¬ã«ã¤ãã¦ã®åè SQLite RDB çµã¿è¾¼ã¿ â»2 ããã¡ããAndroidæ¨æº JDBCæä½ â»1 H2 RDB çµã¿è¾¼ã¿ â»2 çµã¿è¾¼ã¿æé JDBCæä½ â»1 Derby RDB çµã¿è¾¼ã¿ â»2 Javaæ¨æºã§
ãã³ã¬ãªã¼ã®ä¼æ¥ã§CTOãåããKristof Kovacsæ°ã«ããè¨äºã§ããå主è¦NoSQLãããã¯ãã«ã¤ãã¦æ©è½æ¯è¼ãå©ç¨ã±ã¼ã¹ãªã©ãã¾ã¨ãã¦ãã¾ãããã®è¨äºã§ã¯CassandraãRedisãªã©6ã¤ã®ãããã¯ããæãã¦ãã¾ãï¼è¡¨1â ï¼â ã CouchDBã¯ä½¿ãåæã«åªãã¦ãããåæ¹åã¬ããªã±ã¼ã·ã§ã³ããªã¢ã«ã¿ã¤ã æ´æ°ããµãã¼ããã¦ãã¾ããRedisã¯é常ã«é«éãªãã¨ã売ãã§ããã©ã³ã¶ã¯ã·ã§ã³ãå¤æ´ç£è¦ã®æ©è½ãåãã£ã¦ãã¾ããCassandraã¯æ¸ãè¾¼ã¿ãèªã¿è¾¼ã¿ãããéããã¨ããéè¡ãéèãªã©ã®ãªã¢ã«ã¿ã¤ã ãªãã¼ã¿è§£æãå¿ è¦ã«ãªãåéã§å®åãçºæ®ããCassandraã¨åããJavaã§ä½ããã¦ããHBaseã¯ååä½ã®è¡ã¨æ°ç¾ä¸ã®ã«ã©ã ã¨ããBig Dataãæ±ããæã«1,000åãè¶ ããã¡ãã»ã¼ã¸ãå¦çããFacebookã®ããã¯ã¨ã³ãã«æ¡ç¨ããã¦ãã¾ãã 次ã ã«ãããã¯ããçã¾ãã
æ¸ç±ç´¹ä» æ¬é£è¼ã¯ä¸è¨æ¸ç±ãã第5ç« ãåºã«ãï¼ ITåãã«åæ§æãã¦æ²è¼ãã¦ãã¾ãã ç®æ¬¡ åº ç« ããã°ãã¼ã¿ã®æ代 第1ç« NOSQLã¨ã¯ä½ã? 第2ç« NOSQLã®ãã¼ã¿ã¢ã㫠第3ç« ã¢ã¼ããã¯ãã£ã®åºæ¬æ¦å¿µã¨æè¡ ç¬¬4ç« Hadoopã¯NOSQL? 第5ç« ä¸»ãªNOSQLãã¼ã¿ãã¼ã¹è£½å 第6ç« NOSQLãã¼ã¿ãã¼ã¹ã®é¸æåºæº 第7ç« NOSQLã使ããã¸ãã¹ æ¬é£è¼ã¯æ¸ç±ãNOSQLã®åºç¤ç¥èãï¼ãªãã¯ãã¬ã³ã åãISBNï¼978-4897978871ï¼ã§è§£èª¬ããã¦ããå 容ããä¸é¨ãæç²ããæ¬é£è¼åãã«ä¸é¨åç·¨éãã¦æ²è¼ãããã®ã§ãã æ¸ç±ã§ã¯ãä¸è¬ã«NoSQLã¨å¼ã°ãã¦ããå種ãã¼ã¿ãã¼ã¹æè¡ã«ã¤ãã¦ãåºæ¬æ¦å¿µãã主è¦ãªãããã¯ãã®ç¹æ§ããã³ããã¼ã¯çµæã¾ã§ãç´¹ä»ãã¦ãã¾ãããã¼ã¿ã¢ãã«ãã¢ã¼ããã¯ãã£ã®éãã¨ãã£ãåºæ¬æ¦å¿µãããåãããã¯ãã®ç¹å¾´ãç解ã§ããå 容ã«ãªã£ã¦ãã¾
NoSQLãã¼ã¿ã¢ããªã³ã°ææ³.markdown #NoSQLãã¼ã¿ã¢ããªã³ã°ææ³ åæï¼NoSQL Data Modeling Techniques « Highly Scalable Blog I translated this article for study. contact matope[dot]ono[gmail] if any problem. NoSQLãã¼ã¿ãã¼ã¹ã¯ã¹ã±ã¼ã©ããªãã£ãããã©ã¼ãã³ã¹ãä¸è²«æ§ã¨ãã£ãæ§ã ãªéæ©è½è¦ä»¶ããæ¯è¼ããããNoSQLã®ãã®å´é¢ã¯å®è·µã¨çè«ã®ä¸¡é¢ããããç 究ããã¦ããããã種ã®éæ©è½ç¹æ§ã¯NoSQLãå©ç¨ãã主ãªåæ©ã§ãããNoSQLã·ã¹ãã ã«ããé©ç¨ãããCAPå®çãããã§ããããã«åæ£ã·ã¹ãã ã®åºæ¬çååã ããã ãä¸æ¹ã§ãNoSQLãã¼ã¿ã¢ããªã³ã°ã¯ãã¾ãç 究ããã¦ãããããªã¬ã¼ã·ã§ãã«ãã¼ã¿ãã¼ã¹ã«è¦ããããããªã·ã¹ãããã£ãã¯
ããã«ã¡ã¯ï¼hiroshiã§ãï¼ ä»åã¯ãæè¿DECOLOGçéã§å¤§ãã¼ã ã®redisã«ã¤ãã¦ããã®å©ç¨ç¨éãå°å ¥æ¹æ³ã«ã¤ãã¦ã話ããããã¨æãã¾ãã ä»åã®ã話ã¨é¢é£ããéå»ã¨ã³ããªã«ä»¥ä¸ãããã¾ãã®ã§ããã¡ãã«ç®ãéãã¦ããã ããä¸ã§æ¬ã¨ã³ããªãèªãã§ããã ãã¨åãããããã¨æãã¾ãã NoSQL redisã¨MySQLã®ãã³ããã¼ã¯æ¯è¼ redisã®ãµã¼ãã¹ã¸ã®æå ¥ rediså°å ¥å¾ã«ãã©ãã«çºçããã®ã¬ãã¼ã DECOLOGã§ã®MySQL Archiveã¨ã³ã¸ã³ã®ä½¿ãæ¹ â¦ã¨ãããã¾ã§ã®ã¨ã³ããªããã¯å®éç¨ã§ãã¦ãã®ãã©ããå¾®å¦ãªã¿ããã«ãªã£ã¦ããããããã¾ããããçµè«ããããã¨å®éç¨ã§ãã¦ã¾ãï¼ ãrediså°å ¥å¾ã«ãã©ãã«çºçããã®ã¬ãã¼ããã§ã¯TTLãè¨å®ããå ´åã«ãã¾ããããªãã±ã¼ã¹ããã£ãã®ã§ãããTTLãªãã®ãã¼ã¿ã§ã¯ç¹ã«åé¡ãªãéç¨ã§ãã¾ããã ç¾å¨ã®redisã®å©ç¨
ãã®è¡¨ã§ã¯è¨åãã¦ãã¾ããããConsistent Hashingãshardingã«ãã£ã¦åæ£ãããããã¨ããã®ã¯ãã¹ã¦ã®NoSQLãã¼ã¿ãã¼ã¹ãåãã¦ããç¹å¾´ã§ãããã æ¤è¨¼ç¨ãµã¼ãã®æºå ã§ã¯å®éã®ããã©ã¼ãã³ã¹ãæ¯è¼ãã¦ã¿ã¾ããããæ¯è¼ã®ããã10,000件ã®ãã¼ã¿ã®æ¸è¾¼ã¿/èªè¾¼ã¿ãè¡ãã¾ããå®è¡ã«ãããå種ãµã¼ããèµ·åãã¾ãã ãªã¹ã1ãæ¤è¨¼ç¨ãµã¼ãã®èµ·åã³ãã³ã # memcached memcached -u nobody -d # TokyoTyrant sudo ttserver -pid /var/ttserver/pid -dmn /var/ttserver/bench.tch # MongoDB mongod --dbpath ~/tmp/mongodb & # HBase sudo /etc/init.d/hadoop-0.20-namenode start su
Webãµã¼ãã¹ã§ã¯ãä¸çä¸ããã®ãã©ãã£ãã¯ãæãå¿ è¦ããããããããããã¥ã¼ãã³ã°ãããã¨ãä¸å°ã®RDBMSã§ã¯æããããã¨ãåºæ¥ãªãã®ã常ã ãMySQLã¯æåãããã¹ã¿ã¼ã»ã¹ã¬ã¼ãåã®ã¬ããªã±ã¼ã·ã§ã³æ©è½ãæè¼ããã¦ãããã¹ã¬ã¼ããããããã¶ãä¸ãããã¨ã«ãã£ã¦åç §ã®è² è·ãã¹ã¬ã¼ãã«å²ãæ¯ãã¨ããã¹ã±ã¼ã«ã¢ã¦ãã«ãã£ã¦ãã®åé¡ã«å¯¾å¦ãã¦ãããã¹ã¬ã¼ãã«ããã¹ã±ã¼ã«ã¢ã¦ãã¯ãåç §ï¼ï¼PVï¼ãå¤ãWebãµã¤ãã¨é常ã«ç¸æ§ãè¯ããå¹¾å¤ã®Webãµã¤ãã«ããã¦å®ç¸¾ãä½ã£ã¦ãã¦ããããã¾ã ã¾ã å©ç¨ããã¦ããã ããããªããããµã¤ãã®ãã©ãã£ãã¯ãåçã«å¢å ãã¦ããããã«ãªãã¨ãã¬ããªã±ã¼ã·ã§ã³ã«ããè² è·åæ£ã§ã¯è¿½ãã¤ããªããªã£ã¦ãããããã§äººã ãã¨ã£ãé¸æè¢ã¯ãmemcachedãå©ç¨ãããã¨ã§ãããmemcachedã¯ã¤ã³ã¡ã¢ãªåã®é«éãªKVSã§ãããåç §ã»æ´æ°æ§è½ã¯MySQLããæ ¼æ®µã«é«ããM
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}