WWY719のブログ

自分の好きなことをお話したいなーと思ってます。

本日の雑談。

こんばんは。

 

今日は、2 度寝、3 度寝して、だらだら過ごしてから、ドライブに行ってきました。

いつものコースより、少しだけ遠回りしたりなんかして。

なんか、先日から昼間はかなり暑いなーなんて思ってたりもしましたが、やっぱり 2 月はちゃんと雪が降ってますね。

山の方に行くと、路面の凍結の危険を感じました。

 

帰りに、買うものもないのにニトリに行ってきました。

ニトリとかの家具屋を回るのって楽しいと思いませんか?

自分の部屋を想像しながら、アレが置けたらとか、あれの色を変えてとか、自分の世界に浸れる時間が凄く贅沢な気がします。

それを実行に移せる人が本当に贅沢な人なんだと思います。

 

自分は、ちょっとしたことを調整することくらいがやっとなので、最近気になっていたテーブルを購入することにしました。

床に座るとちょうどいいくらいの高さの小さなテーブルです。

13.3 インチの Macbook Air を置くと、横にスマホが置けるくらいの幅で、奥行きは 4, 5cm 残るくらいです。

奥側に、タブレットを立てておくための穴があって、まあよく売られているやつですね。

 

最近、デスクトップパソコンを起動するのが億劫で・・・。

ノートパソコン便利だな〜と思ってます。

ただ、机に向かって、ノートパソコンを触ってるのは、ちょっと辛いところがありまして、床に座ってできたらなーと思っていました。

ただ、ちょうど良い台がなかったんですよね。

 

今回買ったのは、もう少し高さが欲しいかなー、なんて思うところもありますが、まあ目的は果たせるので十分でしょう。

完全に自分に合うものを探すなんてやってられません。

 

まあ、このテーブルも、少ししたら、やっぱり寝転がって作業したいとか、考え始めてキリがなくなるんだと思いますが、今のところは満足です。

 

ものを増やすためには、今度は減らさないとダメだなーなんて思ってますが、減らすのは難しいんですよね。

頑張って減らそう。

 

今日もただの日記になりました。

それではまた次回の日記で。

おやすみなさい。

最近 Mac が便利です。

こんばんは。

雑談です。

 

ここ1年くらい、英語で書かれた Web ページを見る機会が非常に多くなりました。

まあ、理由は IT 関係のページを見ることが多くなったからです。

公式リファレンスっていえば、基本的には英語です。

日本語が標準のページなんてほとんどありません。

AWS とか、Microsoft とかのページって、日本語に訳してくれてるところもあるんですけど、最新の機能だったり、あまり使用頻度が高くない機能のページは訳してくれていなかったりします。

訳してくれていても、機械翻訳ってめちゃくちゃで読みづらいんですよね。

 

そこで登場するのが Mac です。

というか、safari です。

 

Google 翻訳は昔から使ってて、自分の中で存在がかなり大きいものだったんですけど、あんまり進化していないように思います。

Chrome とか、Edge とかの機械翻訳って、正直めちゃくちゃ読みづらいし、コードが文中に書かれているような時って、翻訳がおかしくなるんです。

 

ところが、safari の翻訳機能を使うと、そういうところを文中に入れたままで、ちゃんとした訳を返してくれるんですよ。

だから、それに気づいてからは基本的に Mac とか、iPad で英語のページを見るようにしてます。

 

ところが、自分が使っている Macbook Air は、2014 年のモデルなので、最新の OS に更新ができません。

そのせいか、safari の翻訳機能が使えないんですよ。

少し前に購入して、やってしまったなーと、思っていた M1 Mac mini が、今は本当に重宝しているくらいです。

 

ただ、Mac mini は自宅のしかも固定されたデスクでないと使えないので、できれば Macbook が欲しいところ・・・。

そうなると、自分の中にある選択肢は、整備済み品の M1 または M2 の Macbook Air

もしくは、3 月に発表されると噂の M3 Macbook Air か M3 Macbook Pro

前者は、そろそろサポートの期限も気になってくるところがあって、ちょっと悩ましい。

後者は値段が高すぎる。

そう考えると、M2 の Macbook Air が一番妥当なのかなと思えてくる。

3 択で真ん中を選択してしまうのは、営業されると買わされるタイプなのかもしれません。

 

今のところ理性のおかげで踏みとどまっていますが、また仕事が忙しくなったり、精神的に不安定になったらやらかしてしまうかもしれません・・・。

もはや削れるのは食費か・・・。

いやいや、お昼ご飯は食べないと本当に仕事なんてやってられん・・・。

 

雑談のつもりが、1000 文字を超えてしまいましたね。

今日はこの辺で。

おやすみなさい。

みかんにハマってます。

こんばんは。

また少し寒くなりましたね。

本当に寒暖の差が大きくて体調が悪いです。

風邪を引いてるとか病気ではないはずなんですが、日のあるうちにちょっと動いてると、夜は本当に眠い・・・。

それだけ体力を消費しているということなんだと思います。

 

このままだと、本当に風邪を引いてしまいそうなので、気をつけないとな〜と、毎日思いながら過ごしてます。

みなさんもご自愛ください。

 

そんな風邪と戦う今の季節にハマっているのがみかんです。

なんか、ビタミンって過度にとっても意味ないってことはよく聞きますが、ただ美味しいのでハマってるだけです。

特に、"はるみ" という品種?が美味しいんですよね。

 

なんといってもジューシーという言葉がぴったりなほどの果汁です。

剥いている間にも、溢れてしまうことが多々あります。

通常みかんとして売られているものよりも少し皮が強いので、手の中でコロコロしてから剥くと、身と皮が離れてむきやすくなりますよ。

→その結果、果汁が溢れる。

 

とても美味しいんですが、唯一気になることがあるとすれば、種があるので出すのが面倒です。

欠点にはなりえない程度のことなので、美味しくて結構おすすめです。

今が食べ頃で、もう少しするとシーズンオフになるので、興味がある方は早めに召し上がってください。

 

というわけで、近況雑談でした。

おやすみなさい。

淡路島ツーリング

こんばんは。

更新しようと思って書いてた記事が残ってたことを忘れてました。

なので、ちょっと前のことですが、せっかく書いてたので更新しておきます。

 

淡路島に行ってきた時のお話です。

 

淡路島って、結構山があるし、寒いので、凍結の心配をしていたんですが、調べてみると、そんなに積雪とかもなくて、バイクツーリングに行けることが判明しました。

 

とりあえず、淡路島に上陸するためには、高速道路で行くしかないので、明石海峡大橋を渡りますが、本当に無風の状態で橋を渡れたのは、久しぶりでした。

 

今回は特に行く場所を決めていかなかったんですが、目的は2つ。

1. 新玉ねぎを買うこと。

2. 淡路島バーガーを食べること。

 

適当に下道で南下して、南あわじで淡路島バーガーを食べるのもいいなーと思ってたんですが、西側の外周を少し走ったところで、活断層が生で見られるとの看板を見つたので、見に行きました。

 

場所の名前は <北淡 震災記念公園> です。

阪神淡路大震災によって、断層にずれが発生したものをずっと保管してくれている施設です。

入って最初は写真によって、阪神淡路大震災の様子が伝えられており、自動ドアをくぐると、タイムスリップしたような演出があって、断層が保存されている空間になります。

入ってすぐのところで断層がいかにできたのかを説明されているお姉さんがいらっしゃいますので、ゆっくり聞いてみてください。

 

この施設への入場料は大人 730 円が必要なんですが、十分満足できる内容でした。

こういう場所は残っていてほしいと思うので、もう少しくらいなら払ってもいいと思えます。

正直、中を周る前は、高いと思ってましたけどね。

 

断層のずれは、目視で分かりやすいように表示もしてくれていて、活断層の説明もあったので、とても勉強になりました。

残念ながら、地震体験は装置が故障しているとのことで、体験できませんでした。

いろいろと機械部品が高騰しているご時世ですが、復活してくれたらいいですね。

 

見て回った後は、淡路島外周を再度南に向かって走りはじめて、南あわじに入ったころにイングランドの丘の看板を見つけたので、玉ねぎを求めて行ってみることにしました。

 

行ってみると、玉ねぎがいっぱい置いてあって、惑わされましたが、新玉ねぎと、通常の玉ねぎを手に入れました。

おいしかったんですが、帰ってから、冷蔵だったことに気づきました。

どういうことかというと、冷蔵保存されていたものが、陳列されていて、買って帰ったら、ちょっと柔らかくなってるという・・・。

商品情報はよく見ることをお勧めいたします・・・。

 

そんなこととはつゆ知らず、ここで淡路島バーガーを見つけたので食べていくことにしました。

照り焼きを注文したんですが、驚くほどお肉がジューシーで、とてもおいしかったです。

 

いい時間になったので、帰宅することに。

明石海峡大橋までついたところで、道の駅 あわじ に行って、ちょこっと休憩。

焼き芋たべて、、、、たら、雨が・・・。

降ってきたので、慌てて帰宅しました。

 

淡路島は、今まで何度も行きましたが、まだまだ行ったことのない場所もありますし、新しい建物やサービスも増えているので、また行かないといけないですね。

 

それでは今日はこの辺で。

おやすみなさい。

ヘブンバーンズレッド Angel Beats! コラボ

こんばんは。

突然ですが、ヘブンバーンズレッドって知ってますか?

TVとか、インターネット上など、メディアの至る所で広告を見るので、知ってる方も多いと思います。

簡単に説明すると、スマホとか、タブレット、PC で利用できる課金制のゲームです。

あ、無料でも遊べますよ。

 

正直に言えば、悲しく、切ないお話になっているので、辛い人も多いと思います。

自分は、2 章を終えてみて、しばらくアプリを開かないくらいには感動してしまいました。

 

このゲームが、2 周年とのことで、Angel Beats! と言うアニメ作品とコラボしています。

以前にもコラボしていたことがあって、今回は第二弾になります。

 

自分はこの Angel Beats! のファンで、昔から何度もみているんですが、本当に面白くておすすめです。

 

アニメ作中では語られなかったキャラクターたちの過去。

それがコラボによって、今観れると言うのは本当に嬉しいことです。

ヘブンバーンズレッド自体も、音楽的な要素が強いので、Angel Beats! の作中に登場したバンド(Girls Dead Monster)と相性がよく、そのバンドの曲が何度も流れていて、本当に嬉しい。

というか、曲を聴くだけでも思い出して泣きそうになる・・・。

 

先日、バイクで出かけた時に、自分の横に電動キックボードの青年がいたんですが、つけているイヤホンから音が漏れていて、それが Girls Dead Monster の曲だったんです。

アニメが放送されてから 10 年以上が経つのに、色褪せない曲が残っていて、当時のままに世界やキャラクターが生きていると思うと本当に嬉しい。

 

今でこそ、表立ってアニメの曲が好きだ!って言える時代ですけど、当時はオタクだーって馬鹿にされることも多い時代だったので、大声で言えなかったんですよ。

でも、音楽プレーヤーに入れてずっと聴いてたことを今でも覚えています。

カラオケに行けば、Girls Dead Monster の曲は毎回歌っているほどです。

どれも好きなんですが、必ず歌っているのは Alchemy です。

 

アニメの中身も語りたいところですが、ネタバレはない方が楽しめる作品だと思うので、グッと堪えて今回はこの辺にしておこうと思います。

だからヘブバンの方もコラボの内容を言えないんですよね・・・。

 

もし、時間があったら一度は見て欲しい作品です。

それではこの辺で。

おやすみなさい。

Databricks REST API について (備忘録) _ part 2

さあ、頑張って続きを書いていきます。

 

あと必要な知識は一つ。

JSON ファイルの記述方法です。

JSON は、Java Script Object Notation の略だそうです。

簡単にいえば表ですが、Excel で作成するようなものとは形式が違うので確認が必要です。

 

試しに Create new cluster で使用した JSON を記載してみるとこんな感じです。

{"num_workers": 0, "cluster_name": "test_cluster", "spark_version": "13.3.x-scala2.12", "node_type_id": "Standard_DS3_v2", "autotermination_minutes": 10, "policy_id": "0018E8D9BFF55262", "data_security_mode": "SINGLE_USER", "single_user_name": "koiyan skype"}

これを見やすく整理するとこんな感じです。

{

  "num_workers": 0,

  "cluster_name": "test_cluster",

  "spark_version": "13.3.x-scala2.12",

  "node_type_id": "Standard_DS3_v2",

  "autotermination_minutes": 10,

  "policy_id": "0018E8D9BFF55262",

  "data_security_mode": "SINGLE_USER",

  "single_user_name": "koiyan skype"

}

こんな感じで、: を挟んで左側にキーを入力して、右側に値を入力します。

数字とか、true, faulse 以外は "" で囲って記述します。

詳しいルールは記述するときに調べればすぐに出てきます。

それは Databricks に関係なく、JSON の書き方です。

 

複数の情報があるので、情報同士は , で区切ります。

最後は区切る必要がないので、, がありません。

 

これで、必要な知識は揃いました。

クラスターを作成するためのコードはこんな感じ。

curl --request POST "https://adb-xxxxxxxxxxxxxxxx.x.azuredatabricks.net/api/2.0/clusters/create" --header "Authorization: Bearer dapixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" --data '{"num_workers": 0, "cluster_name": "test_cluster", "spark_version": "13.3.x-scala2.12", "node_type_id": "Standard_DS3_v2", "autotermination_minutes": 10, "policy_id": "0018E8D9BFF56493", "data_security_mode": "SINGLE_USER", "single_user_name": "user_name"}'

 

試しにこれをシェルスクリプトとして保存して、実行してみたら、クラスターが作成されました。

 

というわけで、今回は Databricks API の備忘録でした。

繰り返しになりますが、自分が学習した範囲の内容ですので、余計なこともあるかもしれないですし、間違ったことを書いている可能性もあります。

これを使用して、損害などが発生しても当方は責任を負いませんので、自己責任で学習を進めてください。

 

と、身の上の保険をかけたところで今回はこの辺で終わります。

お疲れ様でした。

Databricks REST API について (備忘録)

こんばんは。

今回はただのメモです。

 

IT 初心者が Databricks の REST API を勉強していたんですが、かなり時間がかかってしまいました。

とはいえ、頻繁に使うものではないので、多分忘れます。

だから、ここに備忘録を作成しておこうと思います。

この記事が他の人の役に立てば、なお嬉しいことですが、わかっていない人間が書いているものなので、へぇー。くらいに見るようにしてください。

根拠のある部分はソースを記載するつもりですが、ないところは私の想像です。

 

そもそも REST API がなんなんだ?というところから。

といっても詳しいことはわからないので、何がしたいの?みたいなこと。

Databricks だけのシステムというわけではなく、そういう仕組みがあって、Databricks 用に使えるようにしているというだけのようです。

例えば Databricks のクラスターを同じ設定で作成して、消すだけの仕事をしていたとします。

これを自動化できたらいいなと思いませんか?

人間がマウスでぽちぽちして作るなら、毎回 Databricks の UI (ワークスペース) にアクセスして、クラスターの設定を選択して作成し、出来上がったら消すことをやり続けなければなりません。

しかし、REST API を使用すれば、自動で行う事ができるのです。

プログラムに組み込んで、タイマーでも設定しておけば、多分いける!と、思う。

 

REST API は、指定されたワークスペースにアクセスして、クラスターを作成するように命令を出します。

ワークスペースは、その命令に従って、クラスターを作成します。

そのために必要な要素は、ワークスペースインスタンス (アドレス)、認可のためのトークン、作りたいクラスターの情報です。

 

こんな感じです。

 

じゃあ、実際に用意していきます。

まずは、今回 Databricks REST API を使用する環境ですが、Azure Cloud Shell の Bash です。

REST API は、Bash のほかに Python などでも使用できますが、今のところはわかりません。

多分必要なことは一緒で、書き方が違うだけだと思います。

 

ひとまず、Databricks 社のサイトを貼っておきます。

https://docs.databricks.com/api/workspace/introduction

基本的にはこのサイトがメインで進んでいきます。

最初のページに書かれているコマンドがこれです。

curl --request GET "https://${DATABRICKS_HOST}/api/2.0/clusters/get" \
     --header "Authorization: Bearer ${DATABRICKS_TOKEN}" \
     --data '{ "cluster_id": "1234-567890-a12bcde3" }'

これは、curl コマンドで、任意のクラスターの情報を取得するための API です。

この API のリファレンスはこちら。

https://docs.databricks.com/api/workspace/clusters/get

 

curl コマンド自体は、API のためのコマンドというわけではないようです。

その全容はよくわかりませんが、API に使用できるコマンドであるということだけ覚えておけば大丈夫だと思います。

簡単に説明すると、サーバーから情報を取得したり、情報を渡したりすることができるので、API に使用できるという理屈みたいです。

 

オプションについて

--request <method>

Databricks API で使用できるメソッドを指定します。

(GET, POST, PATCH, DELETE) のいづれかが使用できます。

 

サンプルコードでは、クラスターの情報を取得するので、GET を使用しています。

どれを使うのかは、それぞれのリファレンスの上部に記載されています。

 

記載されている URL は、実行するワークスペースのアドレスバーからコピーすればいいです。

https://.azuredatabricks.net ってやつです。

その後ろに、/api/...... というのがくっ付きます。

 

--header

header で、認証情報を入力するために使用します。

"Authorization: Bearer ${DATABRICKS_TOKEN}" は、こういうモノなのでそのまま入力します。

${DATABRICKS_TOKEN} は、ワークスペースで個人用アクセストークンを取得して、その値を入力します。$ も {} も残す必用はなく、全て入れ替えて大丈夫です。

 

--data

やりたいことに関連する情報を入力します。

サンプルコードでは、クラスターの ID を指定するために入力しています。

 

このオプション達だけ知っていれば、クラスター作成まではできました。

なので、大体大丈夫なのでは?と思っています。

 

ちなみに、curl コマンドは Linux で動いているので、コマンドは 1 行で記述する必要があります。

サンプルコードの右端にいくつかある \ という記号は、次の特殊文字の効果を消す役割を持っています。

つまり、Enter キーによる改行を打ち消して、コマンドが 1 行であるようにしているというわけです。 

 

必要な知識はあと一つあるのですが、これは説明が必要なので、今回の記事はここまでにして、続きはパート 2 に記載します。