æè¡çãªè©±ãããŸãããã
äœå¹Žãåãç§ã¯ã³ã©ãã¬ãŒã·ã§ã³æ©èœãçµã¿èŸŒãŸããã¢ããªã±ãŒã·ã§ã³ãéçºããŠããŸãããããã¯ãåæã®ReactãšCouchDBã®å¯èœæ§ãæ倧éã«æŽ»çšãã䟿å©ãªå®éšã¹ã¿ãã¯ã§ãããJSONOTãä»ããŠãªã¢ã«ã¿ã€ã ã§ããŒã¿ãåæããŸããã瀟å ã§äœ¿çšãããŠããŸããããä»ã®åéã§ã®å¹ åºãé©çšæ§ãšå¯èœæ§ã¯æããã§ããã
ãã®ãã¯ãããžãŒãæœåšçãªé¡§å®¢ã«è²©å£²ããããšãããšãã«ãäºæããªãé害ã«ééããŸããããã¢ãããªã§ã¯ãç§ãã¡ã®ãã¯ãããžãŒã¯èŠãç®ãæ©èœãåé¡ãããŸããã§ããããããªã¯ãããã©ã®ããã«æ©èœããããæ£ç¢ºã«ç€ºããŠãããäœãæš¡å£ãããŠããŸããã§ãããããã°ã©ã ã䜿çšããããã®çŸå®çãªã·ããªãªãèãåºããã³ãŒãã£ã³ã°ããŸããã
å®éããããåé¡ã«ãªããŸãããç§ãã¡ã®ãã¢ã¯ãä»ã®ãã¹ãŠã®äººãã¢ããªã±ãŒã·ã§ã³ã®äœæ¥ãã·ãã¥ã¬ãŒãããã®ãšãŸã£ããåãããã«æ©èœããŸãããå ·äœçã«ã¯ã倧ããªã¡ãã£ã¢ãã¡ã€ã«ã§ãã£ãŠããæ å ±ã¯AããBã«å³åº§ã«è»¢éãããŸããããã°ã€ã³åŸãåãŠãŒã¶ãŒã¯æ°ãããšã³ããªãèŠãŸããããã®ã¢ããªã±ãŒã·ã§ã³ã䜿çšãããšãæã®ã©ããã§ã€ã³ã¿ãŒãããæ¥ç¶ãäžæãããå Žåã§ããç°ãªããŠãŒã¶ãŒããŸã£ããåããããžã§ã¯ãã§å ±åäœæ¥ãè¡ãããšãã§ããŸããããã¯ãAfterEffectsã®ã«ãã補åãããªã«æé»çã«å«ãŸããŠããŸãã
[æŽæ°]ãã¿ã³ã®ç®çã¯èª°ããç¥ã£ãŠããŸããããäœæãäŸé ŒããWebã¢ããªã±ãŒã·ã§ã³ã«ã¯éåžžãç¬èªã®å¶éãããããšã誰ãç解ããŠããŸããã§ããããããŠãããããäžèŠã«ãªã£ãå ŽåããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã¯å®å šã«ç°ãªããŸããåºæ¬çã«ã圌ãã¯ããªãã察話è ã«ã¡ã¢ãæ®ãããšã«ãã£ãŠããã£ãããã§ããããšã«æ°ã¥ããã®ã§ã圌ãã¯ãããäŸãã°ã¹ã©ãã¯ãšã©ãéãã®ãçåã«æããŸãããUf-f-fïŒ
æ¥åžžã®åæèšèš
ãã§ã«ãœãããŠã§ã¢éçºã®çµéšãããå Žåã¯ãã»ãšãã©ã®äººãã€ã³ã¿ãŒãã§ã€ã¹ã®åçãèŠãŠããããæäœãããšãã«äœãè¡ãããããç解ããããšã¯ã§ããªãããšãèŠããŠããå¿ èŠããããŸããããã°ã©ã èªäœã®å éšã§äœãèµ·ãã£ãŠãããã¯èšããŸã§ããããŸãããäœãèµ·ããåŸãããç¥ãããšã¯ãäž»ã«äœãèµ·ããåŸããäœãèµ·ãããªãããç¥ãããšã®çµæã§ããããã«ã¯ããœãããŠã§ã¢ã®æ©èœã ãã§ãªããåã ã®ããŒããã©ã®ããã«èª¿æŽãããçžäºã«éä¿¡ãããã«ã€ããŠã®ã¡ã³ã¿ã«ã¢ãã«ãå¿ èŠã§ãã
ãã®å žåçãªäŸã¯ãspinner.gifã20åéèŠãŠãããŠãŒã¶ãŒã§ããä»äºãæçµçã«ãã€çµããã®ãçåã«æããŸããéçºè ã¯ãããã»ã¹ãããããããªãŒãºããgifãç»é¢ããæ¶ããããšã¯æ±ºããŠãªãããšãç解ããã§ãããããã®ã¢ãã¡ãŒã·ã§ã³ã¯äœæ¥ã®å®è¡ãã·ãã¥ã¬ãŒãããŸããããã®ç¶æ ã«ã¯é¢é£ä»ããããŠããŸããããã®ãããªå Žåãäžéšã®æè¡è ã¯ããŠãŒã¶ãŒã®æ··ä¹±ã®çšåºŠã«é©ããŠç®ã転ããã®ã奜ãã§ãããããããããã®ã©ããå転æèšãæããŠããŠãå®éã«ã¯éæ¢ããŠãããšèšã£ãŠãããã«æ³šæããŠãã ããã
ããããªã¢ã«ã¿ã€ã ã®äŸ¡å€ã®æ¬è³ªã§ãããªã¢ã«ã¿ã€ã ããŒã¿ããŒã¹ã¯ãæè¿ã§ãã»ãšãã©äœ¿çšãããŠããããå€ãã®äººãããããçã£ãŠããŸãããããã®ããŒã¿ããŒã¹ã®ã»ãšãã©ã¯ãç©æ¥µçã«NoSQLã¹ã¿ã€ã«ã«åŸããŠããŸãããã®ãããéåžžãããåªããMongoããŒã¹ã®ãœãªã¥ãŒã·ã§ã³ã䜿çšããŠããŸããããããç§ã«ãšã£ãŠã¯ãCouchDBã§ã®äœæ¥ã®å¿«é©ããããã³äžéšã®å®åã ãã§ãªãããŒã¿ã§åããããšãã§ããæ§é ã®èšèšã®ç 究ãæå³ããŸããç§ã¯èªåã®æéãããããéãããŠãããšæããŸãã
ãããããã®æçš¿ã®æ¬åœã®ãããã¯ã¯ãç§ãä»æ¥äœ¿çšããŠãããã®ã§ããéžæã«ããã®ã§ã¯ãªããç¡é¢å¿ãã€ç²ç®çã«é©çšãããäŒæ¥ããªã·ãŒã®ããã§ãããããã£ãŠãå¯æ¥ã«é¢é£ãã2ã€ã®Googleãªã¢ã«ã¿ã€ã ããŒã¿ããŒã¹è£œåã®å®å šã«æ£çŽã§åãã®ãªãæ¯èŒã瀺ããŸãã
ã©ã¡ããååã«Fireãšããåèªãå«ãŸããŠããŸããç§ãææ ã蟌ããŠèŠããŠããããšã®1ã€ãç§ã«ãšã£ãŠã®2çªç®ã¯å¥ã®çš®é¡ã®ç«ã§ããååãèšãã®ã¯æ¥ãã§ããŸããããããããšããã«ãæåã®å€§ããªåé¡ã§ããååã«çŽé¢ããããã§ãã
1ã€ç®ã¯FirebaseReal -Time DatabaseãšåŒã°ãã2ã€ç®ã¯Firebase CloudFirestoreã§ããã©ã¡ããGoogleã®Firebaseã¹ã€ãŒãã®è£œåã§ãããããã®APIã«ã¯ããããããã
firebase.database(âŠ)
ããã³ãšããååãä»ããããŠããŸãfirebase.firestore(âŠ)
ã
ããã¯ããªã¢ã«ã¿ã€ã ããŒã¿ããŒã¹ã2014幎ã«Googleãè³Œå ¥ããåã®å ã®Firebaseã«ãããªãããã§ãããã®åŸãGoogleã¯ã®ã³ããŒãäœæããããšã«ããŸããå瀟ã®ããã°ããŒã¿ã«åºã¥ãFirebaseã¯ãã¯ã©ãŠããåããFirestoreãšåŒã°ããŠããŸãããŸã æ··ä¹±ããŠããªãããšãé¡ã£ãŠããŸããæ··ä¹±ããŠãå¿é ããªãã§ãã ãããç§èªèº«ãèšäºã®ãã®éšåã10åæžãçŽããŸãããFirebaseã¯Firebaseã®è³ªåã§åŒçš
ããå¿ èŠããããFirestoreã¯Firebaseã®è³ªåã§åŒçšããå¿ èŠããããããå°ãªããšãæ°å¹Žåã®StackOverflowã§ç解ããå¿ èŠããããŸãã
ãœãããŠã§ã¢è£œåã®ææªã®åœåã«å¯ŸããŠè³ããã£ãå Žåããã®ã±ãŒã¹ã¯ééããªãåè£ã®1ã€ã«ãªããŸãããããã®ååã®éã®ããã³ã°è·é¢ã¯éåžžã«å°ãããããé ãå¥ã®ååãèããŠããã«ãããããããæã1ã€ã®ååãå ¥åããŠããçµéšè±å¯ãªãšã³ãžãã¢ã§ããæ··ä¹±ããŸãããããã¯æšãã«å€±æããèšç»ã§ãããæåã®æå³ãæã£ãŠçºæãããŸããã圌ãã¯ãããŒã¿ããŒã¹ãçãããšããäºèšãæãããŸããããããŠãç§ã¯åè«ã§ã¯ãããŸããããã®åœåã¹ããŒã ãæãã€ããç·ã¯ãè¡ãæ±ãæ¶ãåŒãèµ·ãããŸããã
幜éã®åå©
Firestoreã¯ã次äžä»£ã®åå«ã§ããFirebaseã®ä»£ããã«ãªããšæããããããããŸããããããã¯èª€è§£ã§ããFirestoreã¯Firebaseã®ä»£ããã«ã¯ãªããªãããšãä¿èšŒãããŠããŸãã誰ããããããé¢çœããã®ããã¹ãŠåãåã£ãŠãæ®ãã®ã»ãšãã©ãããŸããŸãªæ¹æ³ã§æ··ä¹±ãããããã§ãã
ãã ãã2ã€ã®è£œåããã£ãšèŠãŠã¿ããšãæ··ä¹±ããå¯èœæ§ããããŸããã»ãšãã©åãAPIãä»ããŠãåãããŒã¿ããŒã¹ã»ãã·ã§ã³ã§ããåãããšãããŠããããã«èŠããŸããéãã¯åŸ®åŠã§ãããåºç¯ãªããã¥ã¡ã³ãã泚ææ·±ãæ¯èŒããŠåããŠæããã«ãªããŸãããŸãã¯ãFirestoreãšå®å šã«é£æºããã³ãŒããFirebaseã«ç§»æ€ããŠFirestoreãšé£æºãããããšããå Žåãããã§ãããªã¢ã«ã¿ã€ã ã®ãã©ãã°ã¢ã³ããããããå®è¡ããããšãããšããã«ããŒã¿ããŒã¹ã€ã³ã¿ãŒãã§ã€ã¹ãç¹ç¯ããããšãããããŸããç¹°ãè¿ããŸãããç§ã¯åè«ã§ã¯ãããŸããã
Firebaseã¯ã©ã€ã¢ã³ãã¯ãå€æŽããããã¡ãªã³ã°ããæŽæ°ãèªåçã«åè©Šè¡ããŠãæåŸã®æžã蟌ã¿ãåªå ãããšããæå³ã§äžå¯§ã§ãããã ããFirestoreã«ã¯ãããã¥ã¡ã³ãããšããŠãŒã¶ãŒããšã1ç§ããã1åã®æžã蟌ã¿æäœã®å¶éãããããã®å¶éã¯ãµãŒããŒã«ãã£ãŠèª²ãããŸããããã䜿çšãããšãã¯ãã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããšããŠããå Žåã§ãããããåé¿ããŠãªãã¬ãã·ã¥ã¬ãŒããªããã¿ãŒãå®è£ ããæ¹æ³ãèªåã§èŠã€ããå¿ èŠããããŸããã€ãŸããFirestoreã¯ãAPIã䜿çšããŠåœè£ ãããªã¢ã«ã¿ã€ã ã¯ã©ã€ã¢ã³ãã®ãªããªã¢ã«ã¿ã€ã ããŒã¿ããŒã¹ã§ãã
ããã«ãããFirestoreã®ååšã®æå³ã®æåã®å åãèŠãå§ããŸããç§ã¯ééã£ãŠãããããããŸããããã°ãŒã°ã«ã®ãªãŒããŒã·ããã®äžäœã«ãã誰ããFirebaseã§è³Œå ¥ããåŸãããããããããããããã¯åãå ¥ãããããç§ã®ãªãŒããŒã·ããã®äžã ãã§ã¯ãããŸãããã
圌ã¯èªåã®éšå±ããåºãŠããŠã
ã1ã€ã®å€§ããªJSONããã¥ã¡ã³ãïŒçªå·ãããŒã¿ãåå¥ã®ããã¥ã¡ã³ãã«åå²ããŸããåããã¥ã¡ã³ãã®ãµã€ãºã¯1ã¡ã¬ãã€ã以äžã«ãªããŸããã
ãã®ãããªå¶éã¯ãåççã«åæ©ä»ãããããŠãŒã¶ãŒããŒã¹ãšã®æåã®åºäŒããä¹ãåãããšã¯ã§ããªãããã§ããããªãã¯ãããããã§ããããšãç¥ã£ãŠããŸããããšãã°ãè·å Žã§ã¯1,500ãè¶ ãããã¬ãŒã³ããŒã·ã§ã³ããããŸãããããã¯å®å šã«æ£åžžã§ãã
ãã®å¶éã«ãããããŒã¿ããŒã¹å ã®1ã€ã®ãããã¥ã¡ã³ããã¯ããŠãŒã¶ãŒãããã¥ã¡ã³ããšåŒã¶ãªããžã§ã¯ãã®ããã«ã¯ãªããªããšããäºå®ã«åæããå¿ èŠããããŸãã
ãä»ã®èŠçŽ ãååž°çã«å«ãããšãã§ããé åã®é åïŒçªå·ãé åã«ã¯ãäž»ãæå³ããåºå®é·ã®ãªããžã§ã¯ããŸãã¯æ°å€ã®ã¿ãå«ãŸããŸããã
ãããã£ãŠãGeoJSONãFirestoreã«é 眮ããããšãæãã§ããå Žåãããã¯äžå¯èœã§ããããšãããããŸããäžåäžãªãã®ã¯èš±å¯ãããŸããã JSONå ã®Base64ããã³/ãŸãã¯JSONãæ°ã«å ¥ã£ãŠããã ããã°å¹žãã§ãã
ãJSONã¯HTTPãã³ãã³ãã©ã€ã³ããŒã«ããŸãã¯ç®¡çããã«ãä»ããŠã€ã³ããŒãããã³ãšã¯ã¹ããŒãããŸããïŒçªå·ã Google CloudStorageã«ã®ã¿ããŒã¿ããšã¯ã¹ããŒãããã³ã€ã³ããŒãã§ããŸããã ããä»åŒã°ããŠããããã§ãããããŠãç§ããããªãããšèšããšããç§ã¯ãããžã§ã¯ããªãŒããŒã®åãæã£ãŠãã人ã ããæããŸããä»ã®èª°ããè¡ã£ãŠãã±ãããäœæã§ããŸããã
ã芧ã®ãšãããFireBaseããŒã¿ã¢ãã«ã¯ç°¡åã«èª¬æã§ããŸããããã«ã¯ãJSONããŒãURLãã¹ã«ãªã³ã¯ãã1ã€ã®å·šå€§ãªJSONããã¥ã¡ã³ããå«ãŸããŠããŸããFireBaseã§æ¬¡ã®ãã
HTTP PUT
ã«/
èšè¿°ããå ŽåïŒ
{
"hello": "world"
}
ããã¯
GET /hello
æ»ããŸã"world"
ãåºæ¬çã«ã¯ãæåŸ
ã©ããã«æ©èœããŸãã FireBaseãªããžã§ã¯ãã®ã³ã¬ã¯ã·ã§ã³ã¯ãã«ãŒã/my-collection/:id
ã«ããJSONèŸæžã«çžåœã{"my-collection": {...}}
ããã®å
容ã¯æ¬¡ã®å Žæã«ãããŸã/my-collection
ã
{
"id1": {...object},
"id2": {...object},
"id3": {...object},
// ...
}
ããã¯ãåã€ã³ãµãŒãã«éè¡çªIDãããå Žåã«æ£åžžã«æ©èœããŸããããã¯ãã·ã¹ãã ã§ã®ããã«å¯Ÿããæšæºçãªãœãªã¥ãŒã·ã§ã³ã§ãã
èšãæãããšãããŒã¿ããŒã¹ã¯100ïŒ JSONïŒ*ïŒã«æºæ ããŠãããCouchDBã®ãããªHTTPã§ããŸãæ©èœããŸãããã ããã»ãšãã©ã®å ŽåãWebãœã±ãããèªèšŒãããã³ãµãã¹ã¯ãªãã·ã§ã³ãæœè±¡åãããªã¢ã«ã¿ã€ã APIãä»ããŠäœ¿çšããŸãã管çããã«ã«ã¯äž¡æ¹ã®æ©èœãããããªã¢ã«ã¿ã€ã ç·šéãšJSONã€ã³ããŒã/ãšã¯ã¹ããŒãã®äž¡æ¹ãå¯èœã§ããã³ãŒãå ã§åãã³ãŒãã䜿çšããŠããå Žåãããããšå·®åJSONãã«ãŒãã³ã®æ°žç¶ç¶æ ã¿ã¹ã¯ã®90ïŒ ã解決ããããšã«æ°ä»ããšãã«ã¹ã¿ã ã³ãŒããã©ãã ãç¡é§ã«ãªã£ãŠããã®ãã«é©ãããããšã§ãããã
FirestoreããŒã¿ã¢ãã«ã¯JSONã«äŒŒãŠããŸãããããã€ãã®éèŠãªç¹ã§ç°ãªããŸããã¢ã¬ã€å ã«ã¢ã¬ã€ããªãããšã«ã€ããŠã¯ãã§ã«èª¬æããŸããããµãã³ã¬ã¯ã·ã§ã³ã¢ãã«ã¯ãå«ãŸããŠããJSONããã¥ã¡ã³ããšã¯å¥ã®ãã¡ãŒã¹ãã¯ã©ã¹ã®æŠå¿µã«ãªããŸããããã«ã¯ããã«äœ¿çšã§ããã·ãªã¢ã«åããªããããããŒã¿ã®ååŸãšæžã蟌ã¿ã«ã¯å°çšã®ã³ãŒããã¹ãå¿ èŠã§ããç¬èªã®ã³ã¬ã¯ã·ã§ã³ãåŠçããã«ã¯ãã¹ã¯ãªãããšããŒã«ãäœæããå¿ èŠããããŸãã管çããã«ã§ã¯ãäžåºŠã«1ã€ã®ãã£ãŒã«ãã«ã®ã¿å°ããªå€æŽãå ããããšãã§ããã€ã³ããŒã/ãšã¯ã¹ããŒãæ©èœã¯ãããŸããã
圌ãã¯ãªã¢ã«ã¿ã€ã ã®NoSQLããŒã¿ããŒã¹ãååŸãããããèªåçµåãšåå¥ã®éJSONåãåããäœéã®éSQLã«å€æããŸãããGraftQLã®ç²Ÿç¥ã«åºã¥ãäœãã
ããããžã£ã
Firestoreã®ä¿¡é Œæ§ãšæ¡åŒµæ§ãåäžããå Žåãç®èãªããšã«ãå¹³åçãªéçºè ã¯ãFireBaseããã®ãŸãŸéžæãããããä¿¡é Œæ§ã®äœããœãªã¥ãŒã·ã§ã³ãå ¥æã§ããŸããæ°é£ããããŒã¿ããŒã¹ç®¡çè ãå¿ èŠãšãããœãããŠã§ã¢ã¯ããã®ãããªã¬ãã«ã®åªåãšå°é家ã®èœåãå¿ èŠãšããããã補åãåªããŠãããšæããããããã«ãšã£ãŠã¯éçŸå®çã§ããããã¯ãéçºããŒã«ãšãã¬ãŒã€ãŒããªãå ŽåãHTML5CanvasãFlashã®ä»£ããã«ãªããªãæ¹æ³ãšäŒŒãŠããŸããããã«ãFirestoreã¯ãããŒã¿ã®ã¯ãªãŒã³æ§ãšç¡èæ€èšŒã®è¿œæ±ã«è¡ãè©°ãŸã£ãŠããŸããããã¯ãå¹³åçãªããžãã¹ãŠãŒã¶ãŒã奜ãäœæ¥æ¹æ³ãšã¯ãŸã£ããäžèŽããŠããŸããã圌ã«ãšã£ãŠããã¹ãŠãæåŸãŸã§ãã©ããã§ããããããã¹ãŠããªãã·ã§ã³ã§ãã
FireBaseã®äž»ãªæ¬ ç¹ã¯ãã»ãšãã©ã®Webéçºè ãäžå€æ§ã«ã€ããŠç¥ãåã§ãããã¯ã©ã€ã¢ã³ããæ°å¹Žåã«äœæãããããšã§ãããã®ãããFireBaseã¯ãããŒã¿ãå€æŽããããšãæ³å®ããŠããããããŠãŒã¶ãŒãæäŸããäžå€æ§ãå©çšããŸãããããã«ããŠãŒã¶ãŒã«éä¿¡ãããã¹ãããã·ã§ããã®ããŒã¿ãåå©çšããªããããdiffãã¯ããã«å°é£ã«ãªããŸãã倧ããªããã¥ã¡ã³ãã®å Žåããã®å¯å€ã®diffããŒã¹ã®ãã©ã³ã¶ã¯ã·ã§ã³ã¡ã«ããºã ã¯åã«äžååã§ããçãããç§ãã¡ã¯ãã§ã«
WeakMap
JavaScriptãæã£ãŠããŸããå¿«é©ã§ãã
å¿ èŠã«å¿ããŠããŒã¿ãæŽåœ¢ããããªãŒã倧ããããããªãããã«ããããšã§ããã®åé¡ãåé¿ã§ããŸããããããéçºè ãäžå€æ§ãšããŒã¿ããŒã¹èšèšã«é¢ãã確ãã§å®çšçãªã¢ããã€ã¹ãçµã¿åãããéåžžã«åªããã¯ã©ã€ã¢ã³ãAPIãçºè¡šããå ŽåãFireBaseãã¯ããã«èå³æ·±ããã®ã«ãªããã©ããèå³ããããŸãã代ããã«ã圌ãã¯å£ããŠããªããã®ãä¿®æ£ããããšããããã§ãããããã¯ãããæªåãããŸããã
Firestoreã®äœæã®èåŸã«ãããã¹ãŠã®ããžãã¯ãç¥ããŸããããã©ãã¯ããã¯ã¹å ã§çºçããåæ©ã«ã€ããŠã®æšè«ã楜ãã¿ã®äžéšã§ãã 2ã€ã®éåžžã«é¡äŒŒããŠããããæ¯èŒã§ããªãããŒã¿ããŒã¹ã®ãã®äžŠçœ®ã¯éåžžã«ãŸãã§ãã誰ããèããŠãããã®ããã«ããFirebaseã¯GoogleCloudã§ãšãã¥ã¬ãŒãã§ããæ©èœã«ãããŸããããããããå®éã®èŠä»¶ãå®çŸ©ãããããããã®èŠä»¶ããã¹ãŠæºããæçšãªãœãªã¥ãŒã·ã§ã³ãäœæããããããšããæŠå¿µã¯ãŸã çºèŠãããŠããŸããããéçºè ã«ããã«ã€ããŠèããããŠãã ããã UIããããã«ããã ãã§ã...ãã£ãšç«ãè¿œå ã§ããŸããïŒã
ããŒã¿æ§é ã«ã€ããŠããã€ãç解ããŠããŸãã ã1ã€ã®å€§ããªJSONããªãŒã®ãã¹ãŠãã®æŠå¿µã¯ãããŒã¿ããŒã¹ãã倧èŠæš¡ãªæ§é ã®æèŠãæœè±¡åããè©Šã¿ã§ããããšãã¯ã£ãããšããããŸãããœãããŠã§ã¢ãçãããããŒã¿æ§é ãåçŽã«åŠçããããšãæåŸ ããã®ã¯ããããã§ããç§ã¯ãã¹ãŠãã©ãã»ã©æªããæ³åããå¿ èŠãããããŸãããç§ã¯å³å¯ãªã³ãŒãç£æ»ãè¡ããããªãã®äººã ã倢ã«ãæããªãã£ãäœããèŠãŸãããããããç§ã¯ãŸããè¯ãæ§é ãã©ã®ããã«èŠããããããããã©ã®ããã«äœ¿çšãããããããŠãªãããããªãããã¹ããªã®ãã Firestoreãè«ççã«èŠããFirestoreãäœæãã人ã ãèªåãã¡ãè¯ãä»äºããããšæã£ãäžçãæ³åããããšãã§ããŸããããããç§ãã¡ã¯ãã®äžçã«äœãã§ããŸããã
FireBaseã§ã¯ãšãªãäœæããããã®ãµããŒãã¯ãã©ã®æšæºã§ãäžååã§ãããå®éã«ã¯ååšããŸãããããã¯ééããªãæ¹åãŸãã¯å°ãªããšãä¿®æ£ãå¿ èŠã§ãããã ããFirestoreã¯ããã¬ãŒã³SQLã«ããã®ãšåã1次å ã€ã³ããã¯ã¹ã«å¶éãããŠãããããããã»ã©åªããŠããŸãããæ··æ²ãšããããŒã¿ã䜿çšããŠãŠãŒã¶ãŒãå®è¡ããã¯ãšãªãå¿ èŠãªå Žåã¯ãå šææ€çŽ¢ãè€æ°ã®ç¯å²ã§ã®ãã£ã«ã¿ãŒãããã³ä»»æã®ãŠãŒã¶ãŒå®çŸ©ã®é åºãå¿ èŠã§ãããã調ã¹ãŠã¿ããšããã¬ãŒã³SQLã®æ©èœã¯ããèªäœã§ã¯å¶éãããããŠããŸãããŸãã人éãæ¬çªç°å¢ã§å®è¡ã§ããSQLã¯ãšãªã¯é«éã¯ãšãªã ãã§ããé«åºŠãªããŒã¿æ§é ãåããç¹æ®ãªã€ã³ããã¯ã¹äœæãœãªã¥ãŒã·ã§ã³ãå¿ èŠã«ãªããŸããä»ã®ãã¹ãŠã«ã€ããŠã¯ãå°ãªããšãã€ã³ã¯ãªã¡ã³ã¿ã«map-reduceãŸãã¯åæ§ã®ãã®ãå¿ èŠã§ãã
ããã«é¢ããæ å ±ã«ã€ããŠGoogleã®ããã¥ã¡ã³ããèŠããšãBigTableãBigQueryã®ãããªæ¹åã«åããããŠããããšãæåŸ ãããŸãããã ãããããã®æ±ºå®ã«ã¯ãã¹ãŠã倧éã®äŒæ¥åã販売ã®å°éçšèªã䌎ããããããã«æ»ã£ãŠå¥ã®äœããæ¢ãå§ããããšã«ãªããŸãã
ãªã¢ã«ã¿ã€ã ããŒã¿ããŒã¹ã®å Žåã«æåŸã«å¿ èŠãªã®ã¯ã人éãäœæãããã®ã§ããããªãŒããŒã·ããã®ããã«çµŠäžã¹ã±ãŒã«ã§äœæ¥ããŠãã人ã ã®ããã®ãã®ã§ãã
ïŒ*ïŒããã¯åè«ã§ãã100ïŒ ã®JSONäºææ§ãªã©ã¯ãããŸããã
åºå
ãããžã§ã¯ãããããã°ãã ããã®VDSãéçºãšå±éã®ããã®ãµãŒããŒããæ¢ãã§ããïŒããªãã¯ééããªãç§ãã¡ã®ã¯ã©ã€ã¢ã³ãã§ã:)ããŸããŸãªæ§æã®ãµãŒããŒã®æ¯æ¥ã®è«æ±ãã¢ã³ãDDoSããã³Windowsã©ã€ã»ã³ã¹ã¯ãã§ã«æéã«å«ãŸããŠããŸãã