最近、地図周辺のWeb技術を調べているのだが数年前とは大分状況が違うようだ。
クライアントサイドでは、 OpenLayersに代わり、 Leafletという軽量フレームワークに 移行する傾向にあるようだ。OpenLayersは確かに重たくて死にそうだった。
サーバサイドでは、待望のルート検索APIが各所から出ているようだ。 MapQuestと OSRMなど。 試しにOSRMに36.397079,139.672835 - 36.085843,139.639876のルートをひかせてみた....
うーん日本の高速道路はちゃんと認識していないようだ。 OpenStreetMapのデータには道路種別は含まれているのだが。
もう少し探してみよう。
久々に超初歩的なミスをやってしまいました....
ドキュメント指向データベースのMongoDBはJSON(BJSON)のドキュメントをそのまま格納できます。
> db.col.save({ _id:123, text:'hoge', lat:35, lon:139 }); > db.col.save({ _id:456, text:'piyo', lat:36, lon:141 });
こんな感じでそのまま入っている。
> db.col.find(); { "_id" : 123, "text" : "hoge", "lat" : 35, "lon" : 139 } { "_id" : 456, "text" : "piyo", "lat" : 36, "lon" : 141 }
ここで特定のカラムのみを書き換えたい場合はupdateコマンドと$setオペレータを使います。
> db.col.update({_id:456}, {$set:{text:'aho'}}, { multi: false, upsert: false });
こうすればちゃんと変更される。
> db.col.find(); { "_id" : 123, "text" : "hoge", "lat" : 35, "lon" : 139 } { "_id" : 456, "text" : "aho", "lat" : 36, "lon" : 141 }
しかし!この$setを省略してしまうと....
> db.col.update({_id:456}, {text:'aho'}, { multi: false, upsert: false }); > db.col.find(); { "_id" : 123, "text" : "hoge", "lat" : 35, "lon" : 139 } { "_id" : 456, "text" : "aho" }
これは結果的に _id:456の指し示すドキュメントをtext:'aho'に置き換えた ということ。 だからデータが消える...この操作を580万件中7万件に適用して、データを欠けさせたのが、私です(死)。
嫁情報により、立川IKEAのそばの株式会社立飛リアルエステートで、戦後発の飛行機の復元が公開されるというので、付いていきました。
正直言って飛行機はよくわからないんで、適当なこと書くかもしれないのでマニアは読まないでね。
この会社の前身は戦前の立川飛行機株式会社で、戦後はGHQから一切の飛行機製造を禁止されたけど、昭和27年にサンフランシスコ講話条約で緩和されてすぐに(すぐに...?)R-52型軽飛行機という国産1号機が開発された。
今回展示してあるのは、その改良型のR-53。当然ボロッボロだったので、今の会社の有志の手で復元されたものだそうです。
翼は羽布(帆布のように固くなくて麻のような素材)にドゥープという特殊な樹脂をしみ込ませたもの。現在では、貼り方や塗り方を含む製法が失われているので、復元会で実物を見本にしながら、当時の製法を再現したそうな。
胴体も布で造られているから、現在の金属製ボディーでは考えられない工夫もしてある。なんと本体にチャックついてんのよ!
説明員の話では、設計図に書いてあるメンテナンス性を向上させるための正式な仕組みなのだそうだ。今の飛行機のようにフライバイワイヤ(電子制御)では当然なく、自己診断機能などあるはずもなく、方向舵などは全て「ワイヤをひっぱって」物理的に行っていた。だからワイヤをチェックできるかどうかは生死に直結したのでしょう。
他にも色々感心したことが沢山あったのだが、俺はイライラしていた。 戦後とはいえ、歴史的に価値のあるものなんだと思うのだが..... ガキがペタペタ触りまくる っていたので大丈夫かと心配になった。プロペラを遊具のごとくがっちゃがちゃ回し、あげくに扉の金具を壊したのだが、最近の親は悪びれもせず、注意もしねーのな.....
もう一つ。こんなに優れた技術を持っていた会社でも 今は製造業から足を洗っている という事実........メーカーとして連綿と受け継ぐべき技術継承は既に途絶え、不動産管理会社となり、この広大な敷地は佐川?か何かの運送業者に貸しているようだ。斜陽の電機メーカー勤めとしては、身につまされるものがあった。
俺も悩んでいないでとっとと技術もって飛び出ていくべきなのかもしれないな。
とりあえず5cに替えて1ヶ月たったけど、旧機種のiPhone4Sをどうするかずっと考えていた。たぶん売るのが最も賢いのだが、ホームボタンは怪しいし、電池も50%からいきなり落ちる挙動不審なので、自分で使うことにした。
少しだけ調べたらau版でも問題なくFOMAバンドを掴むようなので、 対応ゲタをアマゾンで発注しました。
パチモンが多過ぎるので注意です。 アマゾンの場合、良レビューにマーケットプレイスの詐欺業者がぶら下がるので、一種の賭けですが。どうしても心配なら 小龍茶館から公式を辿ってください。
最近の下駄はかなり良くできていて、 予めキャリアの設定が書き込まれており、 不意にアクティベーションさえ要求されなければ、 本当にauSIMトレイを抜く→ドコモSIMを下駄トレイに載せて差し替える、だけでおわるようです(;´Д`)すげーな....
...........
......
アンテナ立ってるのに通信できない現象、 いわゆるパケ詰まりもほとんどないわ(;´Д`) なんぞこれ。現役復帰しちまうぜ。
_ DigitalOceanの アカウントをとったまま放置していたら 「おまえ貧乏だから仮想マシン起動してないんだろ?俺が$5めぐんでやるよ!ほら! by CEO」 というメール(意訳)が来て勝手に$5追加されてた(^^; ノリがAmazon AWSと比べて軽すぎてワロタ。
とりあえず512MBプランでリージョンはnyc2(ニューヨーク2)で作りました。 DigitalOceanはコントロールパネルがすごく今ドキ風でらくちんでよいですな。
まあ、かけるよね。
# # # # # # # ##### ###### # # #### # # # # ## # # # # # # # ## # # # # # # # # # # # ## ##### ##### # # # # ###### # # # # # # ## # # # # # # # # # # # # ## # # # # # # # ## # # # # #### # # # # # ##### ###### # # #### # # Version 5.1.3 Based on the Byte Magazine Unix Benchmark Multi-CPU version Version 5 revisions by Ian Smith, Sunnyvale, CA, USA January 13, 2011 johantheghost at yahoo period com
いつも通りUnixBenchなどをかけてみました。実行コマンドラインは./Runのみなのでシングルコアの比較になります。
Dhrystone 2 using register variables 9540487.3 lps (10.0 s, 7 samples) Double-Precision Whetstone 1822.5 MWIPS (9.7 s, 7 samples) Execl Throughput 2478.7 lps (30.0 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 437533.5 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 145150.1 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 1088671.4 KBps (30.0 s, 2 samples) Pipe Throughput 925780.3 lps (10.0 s, 7 samples) Pipe-based Context Switching 205282.5 lps (10.0 s, 7 samples) Process Creation 7409.8 lps (30.0 s, 2 samples) Shell Scripts (1 concurrent) 3395.3 lpm (60.0 s, 2 samples) Shell Scripts (8 concurrent) 477.3 lpm (60.1 s, 2 samples) System Call Overhead 2845412.5 lps (10.0 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 9540487.3 817.5 Double-Precision Whetstone 55.0 1822.5 331.4 Execl Throughput 43.0 2478.7 576.4 File Copy 1024 bufsize 2000 maxblocks 3960.0 437533.5 1104.9 File Copy 256 bufsize 500 maxblocks 1655.0 145150.1 877.0 File Copy 4096 bufsize 8000 maxblocks 5800.0 1088671.4 1877.0 Pipe Throughput 12440.0 925780.3 744.2 Pipe-based Context Switching 4000.0 205282.5 513.2 Process Creation 126.0 7409.8 588.1 Shell Scripts (1 concurrent) 42.4 3395.3 800.8 Shell Scripts (8 concurrent) 6.0 477.3 795.5 System Call Overhead 15000.0 2845412.5 1896.9 ======== System Benchmarks Index Score 807.7
さくらのVPSの性能を知っている日本人の我々にはあまり奮わないように見えますが、 $5/月のプランがAmazon EC2 large($172/月)より速い というのはUSではかなり衝撃だったのではないでしょうか。まあ、性能の大半はディスク(SSD)が稼いでいるのですが、CPUもt1.microよりは速いですな。
コンパイルなどで実際に使ってみた感じでも、 さくらのVPS1G(980円/月)よりは遅いけど、 EC2のt1.micro(1400円/月〜)よりは明らかに快適ですよ。
簡単にメリットをまとめておきます。
さくらのVPSはいかんせん機能が足りなすぎるし、Amazon EC2は増築に次ぐ増築で複雑過ぎる。 そんな中でDigitalOceanはクラウド界のGitHubみたいな立ち位置を目指しているのだろうなと思います。 2013年末時点、特に開発用途・実験用途・小規模サイトの場合、さくらのVPSなどを選ぶ必然性はあまりなくなりました。 さくらの利点は日本にあってRTTが速いくらいでしょうか。まあそれが重要なんですがw