山pの楽しいお勉強生活

勉強の成果を垂れ流していきます

2019-07-01から1ヶ月間の記事一覧

PySparkで日付毎にデータを蓄積する際のdf.write.modeについて

概要 PySparkでpartitionByで日付毎に分けてデータを保存している場合、どのように追記していけば良いのか。 先にまとめ appendの方がメリットは多いが、チェック忘れると重複登録されるデメリットが怖い。 とはいえ、overwriteも他のデータ消えるデメリット…

PySparkで特定のカラムが全体の最大値であるレコードを取得する

概要 実現はできてはいたものの、もっと良いやり方ないかな?と聞いたら教えてもらったのでメモ。 うまく説明できないのでデータを記載します。 処理前 +----+------+ |name| date| +----+------+ | a|201906| | a|201907| | b|201906| | b|201907| | c|2019…

Databricksでは日本語は使用しない方が良い

概要 Databricksでファイル名、フォルダ名、引数では日本語を使用できない場合があるので、使用しない方が良い。 詳細 今時当たり前だが、Databricksでは普通に日本語を使用可能。 ファイル名やフォルダ名でもnotebbook単体で普通に使う分には問題ない。 だ…

PySparkでjsonカラムを縦持ちに変換する

正確には文字列でjsonが入っている時にパースして縦持ちにする方法。 また使いそうだが、すぐ忘れそうなのでメモ データ 元データ +---+--------------------------------------------------------------+ |id |json | +---+-------------------------------…

PySparkでread時に型が変わる

概要 PySparkで保存前はstringで、読み込むとintegerにカラムの型が変わっている現象に遭遇した。 原因としてはpartitionByで指定したカラムの型は自動的に推測されるため。 パーティションのカラムのデータタイプは自動的に推測されることに注意してくださ…

GreasemonkeyやTampermonkeyで外部CSSを読み込む

表題のまま。 久しぶりにuser script書いたら外部のCSSの読み込み方法がわからなかったのでメモ。 (昔、user scriptをよく書いてた時も外部のCSS読み込んでいたと思うんだけど、こんな方法使ってた記憶がない。。。どうやってたんだろう?) まとめ ヘッダ…