2フェーズコミット/2相コミット
複数の独立したシステムが参加する分散トランザクションにおいて、処理の整合性が保たれるよう2段階に分けてコミットを行う手法。
例えば、AWS銀行からGoogle銀行へ10万円の振り込みを行うとする。
準備フェーズ(第1フェーズ)では、すべてを司る神様(トランザクションコーディネータ―と呼ばれる)がAWS銀行のサーバとGoogle銀行のサーバにそれぞれが行うべき処理を行うように指示を出す。各銀行のサーバは処理が完了したらそれを神様へと報告する。失敗した場合は失敗したという報告をする。この時点ではまだ各々の銀行のサーバのコミットは仮のコミットという扱いになる。
コミットフェーズ(第2フェーズ)では、神様がすべての銀行のサーバから成功の報告を受けていれば、それぞれの処理を確定する(本当のコミット)ように指示を出す。一台でも失敗の報告をするサーバがあればすべてのサーバに対してロールバックするように指示する。
こうすることで分散環境におけるデータの整合性と一貫性を保ちながら、トランザクションを確実に完了させることができる。ひとりでも失敗したら全員が失敗扱いになる、連帯責任って感じですね。
参考サイト
2フェーズコミット(2相コミット)とは – 意味をわかりやすく – IT用語辞典 e-Words
N項関連
主にクラス図で利用する関係性の記述方法で、3つかそれ以上の要素間の複雑な関連をモデリングしている状態。
関連っていうのもクラス図の用語らしい。内容は、ずばり文字通り「2つの要素間に何らかの関係があることを示す」こと。それぞれの端には役割名や多重度を指定することができ、向きや制約を指定することもできる。
多重度(0, 1, *)のどれかで表すあれが「関連」というらしい。その各要素が3つ以上になったときに、その関連のことをN項関連と呼ぶ。
三項の関連は菱形のボックスを中継点にすることが多い。
参考サイト
関連 – Enterprise Architect 16.0/16.1 日本語版 ヘルプ
N項関連 – Enterprise Architect 16.0/16.1 日本語版 ヘルプ
renameコマンド
Linuxコマンドのうちの1つで、ファイル名を変更するためのコマンド。
単一のファイル名を変更(移動)する「mv」に対して、「rename」は指定した文字列で複数のファイルを一度に変更することができる。
注意点として「rename」はUbuntuとUbuntu以外で書式が違う。
Ubuntu
$ rename "s/置換前文字列/置換後文字列/;" ファイル名1 ファイル名2 …
sed的な記法。参考サイトにはセミコロンがあるが、なくても成立した。
Ubuntu以外
$ rename 置換前文字列 置換後文字列 ファイル名1 ファイル名2 …
参考サイト
【Linuxコマンド】renameで複数のファイル名を一括変更する | 侍エンジニアブログ
AIアライメント
大規模言語モデルに人間の価値観や目標を埋め込んで、可能な限り有用で安全かつ信頼できるものにするプロセス。アライメントを通じて、企業は自社のビジネス・ルールやポリシーに従うようにAIモデルを調整することができる。
似た言葉にチューニングがあるが、チューニングは問題解決のための、性能や効率を最適化する作業であるのに対し、アライメントは倫理的に問題のある回答をしないようにする作業らしい。例えば人の殺し方などを検索した場合に、効率の良い方法を提示するのではなく、人を殺すのは良くないです的な回答をするように設定するなど。
思想の違いは分かったものの、技術的に何が違うのかはあまりわからず。
参考サイト
AIアライメントとは何か? | IBM ソリューション ブログ
Gravatar
複数のサイトで使用できるアバターを作成できるサービス。
https://ja.gravatar.com/
2007年にAutomatticが買収し、ブログのプラットフォームであるWordPress.comに統合されている。
ITのサービスってほかの業界と比べてもサービスをデカい会社が買収して何らかのサービスに組み込むって流れが多い気がする。マイクロソフトがgithub買収したりとか。
Gravatarは「Globally Recognized Avatars」の略。
参考サイト
Gravatar – Wikipedia