はじまる

適当な事を適当に書く

Las Vegas で Bellagio の Prime Steakhouse にいった

ラスベガスで最高級のステーキハウスのひとつらしい。

https://share.google/QaB7kUTWyKnyjwkz9

 

3種類のステーキソースがめちゃ旨。

日本でステーキ食べる時はソースなんか使わないんだけど、ソースが旨すぎて3種類満遍なく活用。

やはり牛肉の食い方について、米国は日本の何歩も先。

 

アジア人には量が多すぎるので、以下のオーダーで十分。

・ステーキを1人1皿

・サラダ1品とサイドメニュー1品(1品が3人前くらいの量があるので注文数は任意で)

・ドリンク数杯

 

1人2万円程度に収まった。

 

 

追記: ソースのレシピが欲しかったので検索。真偽さはさておき、reddit にそれっぽい投稿があった

https://www.reddit.com/r/vegas/comments/zj5if8/oddly_specific_question_prime_bellagio/

外国語のリスニングではパンクチュエーションが重要かも

米国出張なう。

 

改めて、米国地元民の英語は punctuation なくヌラヌラーと喋るので、ゆっくり話されたとて聞き取りにくい。音のベルトを全部頭にいれて、推測で語句に分解して、意味を解釈しないとわからなくて辛い。仕事関係者やニュース,テレビ・映画の英語どんなに高速で話されてもわかる。リスニングでは実は速度より、語句の区切りがはっきりするかのほうが重要なのかもね。

ヨーグルトをヨーグルトで割るのだ。

こういう甘いヨーグルト食べたいけど普通に食べると個人的には甘すぎ、かつ血糖値バクあがりするので、プレーンヨーグルトを混ぜて、甘みを薄めてみた。わりと良いかもしれん。


f:id:satorusangakoronda:20240321233927j:image

ロジカル!男のハンバーグ、ミニマムレシピ

ハンバーグ

基本的にひき肉を焼いて食べるものを指すと思う。しかし、例えば、ひき肉をスーパーから買ってきたパックからそのままだして、フライパンで焼くと下記のようになるはず。

  • そぼろのようにバラバラになって、かたちがまとまらない
  • 味がしない

 

巷のハンバーグのレシピというものは、実はこの2つの事象を防ぐように構成されている、というのがいくつかのハンバーグレシピを試してみて持った持論だ。これはの課題さえ克服していれば、実はハンバーグは、味付けやその他の構成要素などもすべて調理者に委ねられる、非常に自由度の高い料理といって良いのではないか、と最近は思っている。これらの課題を克服した最低限のハンバーグは以下のようなものになる。

 

ハンバーグのミニマムレシピ

材料
  • ひき肉
  • パン粉
工程

これらをこねて円盤状にして、フライパンで両面を焼く。中心まで赤い部分がなくなり、完全に火が通ったら食べられる(食中毒の心配がない)。雑で。工程より以下の理由のほうがだいじ。

 

なぜパン粉を加えるか?

ひき肉は加熱とともに、肉汁(血、油)がフライパンに流れ落ちる。生肉を安全に食せるまで十分に加熱した結果、できあがったハンバーグはたいてい下記のようになる。

  • 味がしない
  • 割れやすい

 

この2つの課題を解決するのがパン粉だ。パン粉が、加熱により流れ出ようとする肉汁をハンバーグ内に吸着することで、味を留める役割を担う。また、肉汁を吸収したパン粉は粘度をまして、バラバラに肉塊を固めるのだ。

 

加熱時間を押さえれば、肉汁の流出も中まで火が通らない状態になる。病原菌の少ない牛肉100%のひき肉であればそれでも良いが、豚肉を含む場合、病原菌が死滅するまで十分に加熱する必要がある。中途半端な加熱は豚肉にはありえないのだ。その結果肉汁はすべて流れ出すことになる。豚肉を含むハンバーグでは、パン粉は不可欠だ、というのがハンバーグを作るなかで確信したことである。

ただし、パン粉を加えすぎると、お好み焼きのような風味になるので注意。

 

なぜ塩を加えるか

水分を減らすことにより肉塊がバラバラに分解するのをふせぐ、と言われている。ただし吸着効果としてはパン粉のほうが強力なので、効率的な味付けの意味合いも強いようだ。焼けたあとに外側から味付けするのもいいが、ひき肉にたいして万遍なく下味がついているほうがいい場合が多いだろう。

Treasure Data Workflow (digdag) でテーブルを任意の行数単位で分割して、動的にループする

背景(例)

  • 1億レコードのテーブルがある。
  • テーブルに対してクエリを実行したい。
  • 実行してみたら重たかったので並列処理したい。
  • 100万レコードごとにテーブルを分割して、各テーブルごとにクエリを実行する。

Treasure Data のテーブルインデックスについて

Treasure Data のテーブルは、time というlong 型の列を必ず持つ仕様となっている。このtimeが、標準ではTreasure Data のテーブルの唯一のインデックスにもなっている。time には unix timestamp が数値で入る想定で、Treasure Data が時系列データのビッグデータ分析基盤から始まったことの名残である、と思われる。

このtime,実はlong値であれば、unixtime スタンプでない値もいれることができる。テーブルを任意のレコード件数で分割したいとき、このtime列に分割の基準となる値をいれることで、分割処理でインデックスが効くようになり、処理時間を早めることができる。

こんな感じ

#main.dig

###############################################################
# 環境変数設定
###############################################################

_export:
  td:
    database: hoge
    table: fuga
    split_size: 1000000
  

###############################################################
# 処理
###############################################################


+create_indexed_view:
# time を row_num 列として利用し、テーブルのレコードを分割する。
# https://qiita.com/mumuma/items/faa76b50ca653d85d522
  td>: create_indexed_view.sql
  create_table: ${td.database}.${td.table}_view_${session_date.replaceAll('-', '_')}
  engine: hive

+count_records:
  td>:
  query: "select count(time) as count from ${td.database}.${td.table}"
  store_last_results: true

+caluculate_loop:
# ここで、レコード件数と、分割サイズをもとに、必要なloopの回数を計算する。
  td>: 
  query: "select cast(ceiling( ${td.last_results.count} / (${td.split_size} * 1.0)) AS INTEGER) as loop;"
  store_last_results: true

+p4:
  loop>: ${td.last_results.loop} 
  _parallel:
    limit: 3
  _do:
    +table_split:
      td>: 1.sql
-- create_indexed_view.sql
SELECT 
  row_number() over(order by order_no)as time
  ,column1
  ,column2
FROM
  ${td.database}.${td.table}
-- split.sql
SELECT * FROM ${td.database}.${td.table}
WHERE time BETWEEN (1+${i}*${td.split_size}) AND (${i}+1)*${td.split_size}

Mac OS ventura にアップデートしたら git が行方不明になった。

git 実行時にエラーがでるようになってしまった。

% which git
/usr/bin/git
% git
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

Gitコマンドでxcrun: errorが出た時の対処 - Qiita をみて、Xcode を再インストールしたら直りました。

% git
usage: git [-v | --version] [-h | --help] [-C <path>] [-c <name>=<value>]
           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
           [--super-prefix=<path>] [--config-env=<name>=<envvar>]
           <command> [<args>]

These are common Git commands used in various situations:

start a working area (see also: git help tutorial)
   clone     Clone a repository into a new directory
   init      Create an empty Git repository or reinitialize an existing one
...

先人の皆様ありがとう…。