2017/05/26ã®DBæ¯è¼ã»ããã¼ã§ä½¿ç¨ããè³æã§ãã NoSQLã§ããRedisã«ã¤ãã¦èª¬æãã¦ãã¾ããRead less
URLã¨ã³ã³ã¼ã/ãã³ã¼ããè¡ãã¾ãããã®ãã¼ã¸ã¯UTF-8ãã¼ã¸ã§ã³ã§ããEUC-JPãShift_JSãUnicodeãJISã®ãã¼ã¸ã§ã³ãç¨æãã¾ããããã¿ããªã®ç¥è ã¡ãã£ã¨ä¾¿å©å¸³ãã®ä¸é¨ã§ãã
ãã®è¨äºã«ã¤ã㦠ãã®è¨äºã¯Daniel van Flymenããã®Learn Blockchains by Building Oneã- The fastest way to learn how Blockchains work is to build oneãæ¬äººã®è¨±å¯ãå¾ã¦ç¿»è¨³ãããã®ã§ãã ãã®ãããã¯ãã§ã¼ã³ã®ãªãã¸ããªã§ã¯Python以å¤ã§ã®è¨èªã®å®è£ è ã®åéãè¡ããã¦ããã®ã§ãèå³ãããæ¹ã¯æ¯éã©ããï¼ ã¾ãããã®ç¿»è¨³ã§åºã¦ããæ¥æ¬èªçã®ãªãã¸ããªã¯ãã¡ãã«ããã®ã§æ¯éåèã«ãã¦ã¿ã¦ãã ããã ã¯ããã« ããªããããã«ããã®ã¯ãç§ã¨åãããã«ãæå·é貨ã®çãä¸ããã«å¯¾ãã¦å¿æ§ããåºæ¥ã¦ããããã ãããã¦ããªãã¯ãããã¯ãã§ã¼ã³ãã©ã®ããã«åãã¦ããã®ãã-ãã®è£ã«ããåºæ¬çãªãã¯ããã¸ã¼- ãç解ãããã¨æã£ã¦ããã ããããããã¯ãã§ã¼ã³ãç解ããã®ã¯ç°¡åã§ã¯ãªããå°ãªãã¨
ScalaTestã§Mockitoã使ãããã®ãåå¼·ãã¼ã Setup build.sbt ã«è¿½å ã libraryDependencies ++= Seq( "org.scalatest" %% "scalatest" % "1.9.1" % "test", "org.mockito" % "mockito-core" % "1.9.5" % "test" ) ãã¹ã㧠MockitoSugar ã mixin ãã以ä¸ã® import è¡ã追å ã import org.mockito.Matchers._ import org.mockito.Mockito._ Mockä½æ // ClassToMock ã®ã¢ãã¯ãä½æ val m = mock[ClassToMock] ä½ã£ãã¢ãã¯ã¯ããã©ã«ãã§å ¨ã¡ã½ããã³ã¼ã«ã«å¯¾ã㦠null ãè¿ãã ã¡ã½ããã®æ»ãå¤ã¨ãã¦nullã§ã¯ãªãã¢ã
ãã¸ã¿ã« ãã©ã³ã¹ãã©ã¼ã¡ã¼ã·ã§ã³ãå é ã客æ§ããã¸ã¿ã« ãã©ã³ã¹ãã©ã¼ã¡ã¼ã·ã§ã³ã«ä¹ãåºããã°ããã§ãããããã¯ãã§ã«é²ãã¦ããå ´åã§ããGoogle Cloud ã¯å°é£ãªèª²é¡ã®è§£æ±ºãæ¯æ´ãã¾ãã
BigQuery ããCloud Storageã¸ã¨ã¯ã¹ãã¼ãããã BigQueryããã¯ç´æ¥ãã¦ã³ãã¼ãã§ããªãï¼ãã«ããï¼ ããã£ãã®ã§ã¡ã¢ #å²ãå½ã¦ã®ããªã·ã¼ BigQuery ããã®ãã¼ã¿ã®ã¨ã¯ã¹ãã¼ãã«ã¯ã次ã®å¶éãé©ç¨ããã¾ãã 1 æ¥ãããã®å¶é: 1 æ¥ããã 1,000 åã®ã¨ã¯ã¹ãã¼ããæ大 10 TB è¤æ°ã¯ã¤ã«ãã«ã¼ã URI ã®å¶é: 1 åã®ã¨ã¯ã¹ãã¼ã㧠500 URI #ã¨ã¯ã¹ãã¼ãURI URL ##jsonã¯ãã¡ã¤ã«å®¹éã大ããã®ã§gzããããã -åä¸ã® URI åä¸ã®ãã¡ã¤ã«ã«ãã¼ã¿ãã¨ã¯ã¹ãã¼ãããå ´åã¯ãåä¸ã® URI ã使ç¨ãã¾ããã»ã¨ãã©ã®å ´åãã¨ã¯ã¹ãã¼ãããããã¼ã¿ã¯ BigQuery ã§å¶éããã¦ãã 1 GB ã¨ãããã¡ã¤ã«ãããã®æ大å¤ãããå°ããããããã®ãªãã·ã§ã³ã¯æãä¸è¬çãªã¦ã¼ã¹ã±ã¼ã¹ã§ãã ããããã£ã®å®ç¾©: ['gs
æä¾ç¤¾ã®é½åã«ãããåé¤ããã¾ããã é¢é£ãã¥ã¼ã¹ ã©ã³ãã³ã° ç·å å½å æ¿æ²» æµ·å¤ çµæ¸ IT ã¹ãã¼ã è¸è½ 女å
ã転売ãµã¤ã"ãã±ãã£ã³"çµäºã¸ãã¨ãããã¥ã¼ã¹ãããã¾ããããéå¶ä¼ç¤¾ããåæ¨æ³éåã¨ä¸æ£ç«¶äºé²æ¢æ³éåã®çãã§ãè¦å¯ã®ææ»ãåãã12æ7æ¥ã«ãµã¼ãã¹ã®ä¸é¨ãåæ¢ãã¦ããããä»åã2018å¹´5ææ«ã§ãµã¼ãã¹ãçµäºãããã¨ã決ããããã¨ãããã¨ã§ããããã«ã¤ãã¦ã¯ãæ¢ã«æ¸ãã¦ãã¾ããã¸ã£ãã¼ãºã®ç»é²åæ¨ãç¡æã§ä½¿ã£ã¦ãã±ãã販売æ¥åãè¡ãªã£ããã¨ãåæ¨æ³éåã«åããããã®ã¨æããã¾ãã ããããåæ¨æ³éåã ããåé¡ãªã®ã§ããã°ãã¸ã£ãã¼ãºåæ¨ã®ä½¿ç¨ããããã°æ¸ã話ã§ãï¼ãã±ããã®è»¢å£²è¡çºèªä½ãåé¡ã¨ãããããã§ã¯ãªãããã§ãï¼ããµã¼ãã¹çµäºããã¾ã§ã®ãã¨ãã¨æã£ã¦ããã¨ããã±ãã£ã³ãææ°æã¼ãã§è»¢å£²æ¥è åªéãèªãè¦ç´éåããã¨ããæ°ããªå ±éãããã¾ãããã大å£ã®è»¢å£²æ¥è ã®åºåææ°æãã¼ãã«ãã¦ãããã¨ãææ»é¢ä¿è ã¸ã®åæã§ããã£ããã¨ãããã¨ã ããã§ãã ããã¯åæ¨æ¨©ã¨ã¯é¢ä¿ãªã話ãªã®ã§
ã¯ãªã¹ãã¹ã©ã¤ããå¹´æ«ã©ã¤ããç®åã«æ§ãã12æ7æ¥ããã±ãã転売ãµã¤ãæ大æãããã±ãããã£ã³ãããçªå¦ãµã¼ãã¹ã®åæ¢ãçºè¡¨ããããããã20æ¥ãçµéãã12æ27æ¥ãä»åº¦ã¯2018å¹´5ææ«ã«ãµã¼ãã¹ãå®å ¨çµäºãããã¨ãæããã«ãããã çºç«¯ã¨ãªã£ãã®ã¯ããã±ãããã£ã³ããéå¶ãããã³ã¶ã12æ4æ¥ãã7æ¥ã¾ã§å µåº«çè¦ããåããå¼·å¶èª¿æ»ã ãããã«é¢ãã¦ããã³ã¶ã®è¦ªä¼ç¤¾ã§ãããã¯ã·ã£ã¯å¤é¨ã®å¼è·å£«ã交ãã調æ»å§å¡ä¼ãè¨ç½®ã27æ¥ã«ãã®å ±åæ¸ãå ¬è¡¨ããã ãã£ããã¯åæ¨æ¨©ã®ä¾µå®³ã ã£ã ä»åãå¼·å¶èª¿æ»ã®ä¸»ãªå¯¾è±¡ã¨ãªã£ãã®ã¯åæ¨æ¨©ã®ä¾µå®³ã ããã³ã¶ã¯ãã±ãããã£ã³ãã§ãã¸ã£ãã¼ãºå¿æ´ãã£ã³ãã¼ã³ããªã©ã¨éæã£ãæ½çãè¡ãããJ ã¸ã£ãã¼ãºéä¿¡ Johnnyâs News Serviceãããå®å¡æåå¶æ¥½é¨ Takarazuka Revue Clubãã¨ãã£ãã¡ãã£ã¢ãµã¤ããå±éãã¦ããããã§ã«åæ¨
ä¹æ¨åã¢ãã¤ã«ã«ã¤ãã¦è³ªåã§ãã ä»åº¦ãæ ¼å®ã¹ããã«ãããã¨æãã¾ãã ããããä¼å¡ç»é²ããããã«ã¯ä¸å¤§ãã£ãªã¢ã¨ã®å¥ç´ãå¿ è¦ã¨ãããã¨ããããã¾ããã ãã㧠ä¹æ¨åã¢ãã¤ã«ã®å¯¾å¿æ©ç¨®ã«ã¯ iPhoneï¼androidï¼ã¬ã©ã ã¨ãªã£ã¦ããã®ã§æ ¼å®ã¹ããã¨ã¬ã©ãã®äºå°æã¡ã«ãããã¨æãã¾ããã ããã§è³ªåã§ãã 1.ä¹æ¨åã¢ãã¤ã«ã¯ã¬ã©ã±ã¼ã§ä¼å¡ç»é²ã§ãã¾ããï¼ 2.ã¬ã©ãã§ä¼å¡ç»é²ã¯ã§ãã¾ããï¼ 2.ããã§ããã¨ãããã¬ã©ãã§ä¼å¡ç»é²ããããã®æå®ã®ãã©ã³ãæãã¦ãã ããã
MySQL ã UTF-8 ã§ä½¿ããã¨æã£ã¦ããããã¡ãªã®ã¯ charset utf8 ãæå®ãã¦ãã¾ããã¨ã§ãã MySQL ã® UTF-8 ã«ã¯æ´å²çäºæ ã«ãã utf8 㨠utf8mb4 ã®äºã¤ããã¾ãã UTF-8 ã¯1ãã¤ãã4ãã¤ãã§1æåãæ§æãããæåã³ã¼ãã§ãããMySQL ã® utf8 ã¯4ãã¤ãæåãæ±ããã¨ãã§ãã¾ãããããããããªããã° utf8mb4 ã使ãã¾ãããã utf8 ã使ã£ã¦ãã¾ã£ãå ´åã«4ãã¤ãæåãã©ã®ããã«æ±ãããããèªåã§ãããè¦ãã ã£ãã®ã§ã¡ã¢ãã¦ããã¾ãã ç»é² æ¥ç¶ã utf8mb4 ã§ã«ã©ã ã utf8mb4 ãããã¾ãã§ããããã®ã¾ã¾ç»é²ããã¾ãã mysql> insert into utf8mb4 (c) values ('ç¾å³ããð£ã¨ðº'); mysql> select * from utf8mb4; +--------
失å¹ããææå² å²å¼é¡ 22,800å(ç¨è¾¼) MNP転åºææ°æ 3,000å(ç¨æ) ä¸è¨ãè²»ç¨çã®è©³ç´° ææå²æ®åæ°/æ®éé¡ ææå²å²å¼æ®éé¡ï¼ 22,800åï¼ç¨è¾¼ï¼ ææå²é¡ï¼ä¸éï¼ï¼ 1,900åï¼ å¤±å¹ããææå² å²å¼é¡ 22,800å(ç¨è¾¼) MNP転åºææ°æ 3,000å(ç¨æ) ä¸è¨ãè²»ç¨çã®è©³ç´° ææå²æ®åæ°/æ®éé¡ ææå²å²å¼æ®éé¡ï¼ 22,800åï¼ç¨è¾¼ï¼ ææå²é¡ï¼ä¸éï¼ï¼ 1,900åï¼ ç¨è¾¼ï¼ ææå²å²å¼åæ°ï¼ 24å ææå²æ®åæ°ï¼ 12ã¶æ ã½ãããã³ã¯ã®ã¹ãããä¸æ¬è³¼å ¥ãä¸å¹´ãã£ã¦ãã¦ä»ä»ã®ä¼ç¤¾ã«å¤ããå ´åéç´éãããããããã調ã¹ããä¸è¨ã®ããã«æ¸ãã¦ãã®ã§ãããã®å ´åãããè²»ç¨ã¯éç´éã®9500ã¨3000åã®mnpææ°æã§ãã£ã¦ãã¾ããï¼
1. ä¾å¤è¨è¨ ã«ããã大罪 åç° å人 (a.k.a id:t-wada or @t_wada) Jun 27, 2012 @ java-ja 12å¹´6æ28æ¥æ¨ææ¥ 2. èªå·±ç´¹ä» åå: åç° å人 (ãã ããã¨) ããã°: http://d.hatena.ne.jp/t-wada ã¡ã¼ã«: takuto.wada@gmail.com Twitter: http://twitter.com/t_wada ã¿ã¯ã¼ãºï½¥ã¯ã¨ã¹ãæ ªå¼ä¼ç¤¾ åç· å½¹ç¤¾é· 12å¹´6æ28æ¥æ¨ææ¥
ã³ããããã¾ã¨ãã ã³ããããã¾ã¨ããã«ã¯Gitã®rebaseã使ç¨ããã (ã»ãã«ãæ¹æ³ããããå²æ) ã¾ãä¸è¨ã®ã³ãã³ãã§ãã°ã表示ã git log --oneline ä¾ã¨ãã¦ãã®ãããªãã°ã表示ãããã¨ããã C:\test>git log --oneline 6b78b9d last commit d12871a test3 db92104 test2 e4ae077 test1 fe87ecf first commit ä»åã¯test1, test2, test3ã®ã³ããããã¾ã¨ãã¦test allã«ããã ã¾ã以ä¸ã®ã³ãã³ããå ¥åã git rebase -i fe87ecf ããã¨ããã¹ãã¨ãã£ã¿ãèµ·åãã¦ãã®ãããªå 容ã表示ãããã pick ï½ã®ä¸ã«fe87ecf first commitãå«ã¾ãã¦ããªãã®ã¯git rebase -i fe87ecfã¯fe87ecfã
æè¿embulk-input-gcsãembulk-output-bigqueryã¨ããEmbulkã®ãã©ã°ã¤ã³ãä½ã£ããã§ãããEmbulkæ¬ä½ã®ã³ã¼ãããGoogleã®API/Google APIs Client Library for Javaã®å©ç¨ã§ãããã¾ããã AWSã®ããã«SDKè½ã¨ãã¦ããã°ãµã¯ãã¨éçºã§ããã¨æã£ã¦ããã§ãããããªã«çããªãã£ããã GCP(Google Cloud Platform)çéã¯èªè¨¼æ¹æ³ãã©ã¤ãã©ãªãå¤æ°ããå²ã«ãã©ãã使ãã°ãããã¨ãããããªindexãå ¬å¼æ å ±å«ããã¾ããããä¸ã«ãã¾ããªãã®ã§ã©ã¤ãã©ãªã®é¸æã§ãããããããã¾ãã æªã ã«å ¨å®¹ãææ¡ã§ãã¦ããªããã§ãããèªåç¨ã¡ã¢å ¼embulk-output-bigqueryã¸ã®ãã«ãªã¯ã¨ã¹ãé ããã¨ãæå¾ ãã¦ã¾ã¨ãã¦ããã¾ãã ãªãJava以å¤ã®è¨èªåãã©ã¤ãã©ãªã®ç¶æ³ã¯åããã¾ããã ã
ãããã人ã¯ããã¨ãã¨å¦çãè©°ã¾ã£ããç解ã§ããªãæåãèµ·ããããã¦å°ãã®ã§æ³¨æã ããããããªããã©ã³ã³ãã¤ã«æã«æãããã®ã§ import scala.concurrent.ExecutionContext.Implicits.global ãæ¸ãã¦ãã Future.apply 㯠ãã¹ã¬ãããç«ã¡ä¸ãã¦éåæã«å®è¡ãããã¨ç解ãã¦ãã ç¹ã«ä½ãèãã Future å 㧠Thread.sleep ããã¦ãã ExecutionContextã¨ã¯ Future#mapãFuture.applyã«implicitãã©ã¡ã¼ã¿ã¨ãã¦è¦æ±ããã*1ExecutionContextã£ã¦ä½ãªã®ãï¼ ä½ã渡ããªãã¨ãããªãããã¨ãããã import scala.concurrent.ExecutionContext.Implicits.global ã¨æ¸ãã¦ãã人ãããããããªãã ãããã Ex
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}