タグ

関連タグで絞り込む (733)

タグの絞り込みを解除

TIPSとtipsに関するclavierのブックマーク (1,437)

  • 知っておくと運用で役に立つbq loadのTips - yasuhisa's blog

    今日もbq loadが失敗して涙を流していたデータエンジニアのid:syou6162です*1。このエントリではbq loadを使ったデータ取り込みで泣かないで済む、あるいは泣いても致命傷まではいかないようにするための色々なTipsを書きます。 bq loadをベースに書いていますが、SDKを使ってBigQueryにデータを取り込む際もほぼ同様のことを考えれば十分な場合が多いです。 bq loadの基形 スキーマを自分で指定する 取り込み失敗時の対処方法 パーティショニング列やクラスタ列を指定する 必要であればbq queryと組み合わせて使う 洗い替えしたい場合 パーティション指定で洗い替え 一癖あるデータと戦う Shift-JISやEUC-JPのファイルを読み込む レコード内に改行を含むCSVを読み込む --max_bad_recordsオプションは最小限に 運用中のスキーマ変更に立ち

    知っておくと運用で役に立つbq loadのTips - yasuhisa's blog
  • いい加減シェルスクリプトで [ $? -eq 0 ] や [ $? -ne 0 ] なんて エラー処理を書くのはやめよう! - Qiita

    いい加減シェルスクリプトで [ $? -eq 0 ] や [ $? -ne 0 ] なんて エラー処理を書くのはやめよう!ShellScriptBashLinuxUNIXmacOS はじめに [ $? -eq 0 ] や [ $? -ne 0 ] は冗長でデメリットしかありません。非常に多く見かける書き方ですが、1979 年に Bourne シェルが広く公開された時からこのようなコードは必要ありませんでした。実際に当時はこのような書き方は使われておらず、このような書き方をしなければならなかった歴史的な経緯などはありません。これはなぜか広まってしまった良くない書き方です。 優れたコードとは無駄がないシンプルなコードです。丁寧なコードとは無駄な処理を書くことではありません。[ $? -eq 0 ] や [ $? -ne 0 ] は書かないほうが、簡単で読みやすくわかりやすくなります。優れた文法

    いい加減シェルスクリプトで [ $? -eq 0 ] や [ $? -ne 0 ] なんて エラー処理を書くのはやめよう! - Qiita
  • これで猛暑を乗り越えよう!2024年真夏の最新トレンドTerraform Tips集

    社内のLT会でのスライドです。 参考リンク Terraform Style Guide (https://developer.hashicorp.com/terraform/language/style) Terraform Language Documentation (https://de…

    これで猛暑を乗り越えよう!2024年真夏の最新トレンドTerraform Tips集
  • 【Git】同じコンフリクト解消を繰り返している人に教えたい「git rerere」 - Qiita

    はじめに こんにちは、kenです。みなさんコンフリクト解消してますか! チーム開発をしているとコンフリクトとは嫌でも向き合うことになりますが、コンフリクト解消って緊張感のある作業なのでやりたくないですよね。 そんなコンフリクト解消をちょっぴり楽にする(かもしれない)コマンドを最近知ったので今回はそれを紹介します、その名もgit rerereです。 git rerereとは Gitの公式ドキュメント(日語版)には次のように記載されています。 git rerere コマンドはベールに包まれた機能といってもいいでしょう。これは “reuse recorded resolution” の略です。その名が示すとおり、このコマンドは、コンフリクトがどのように解消されたかを記録してくれます。 そして、同じコンフリクトに次に出くわしたときに、自動で解消してくれるのです。 ここに書かれているように、git

    【Git】同じコンフリクト解消を繰り返している人に教えたい「git rerere」 - Qiita
  • Pythonのデコレータってどう実装するん?ってことでフレームワーク的な実装を試してみた - Qiita

    はじめに 最近はあまり触れていないが、PythonDiscordのBOTを作成しようとすると、discord.pyやPycordのようなライブラリを使うのが一般的と思う。 その中でよく使われる構文の中に@bot.commandのような構文を目にすることだろう。 これはデコレータと呼ばれる構文なのだが、私は中身の構造は関数型引数を実装した関数のような感じなんだろうなと予想はしながらも、なんとなしで利用していた。 そんなわけで、調べていきながら便利な使い方なんかを探してみる。 import discord from discord.ext import commands intents = discord.Intents.default() intents.members = True intents.message_content = True bot = commands.Bot( co

    Pythonのデコレータってどう実装するん?ってことでフレームワーク的な実装を試してみた - Qiita
  • BigQuery縦持ちデータを動的に横持ちデータにする方法 - ドワンゴ教育サービス開発者ブログ

    はじめに ドワンゴ教育事業でデータアナリストとして働いている小林です。 一般的にデータアナリストはデータの収集・分析を通して組織の意思決定を支援する役割を期待されることが多く、ドワンゴ教育事業における私のミッションもKPI動向の可視化やダッシュボード / レポートの作成・提供を通してデータドリブンな組織に貢献するところにあります。 私たち教育事業には施策を実行する企画者やビジネス上の意思決定者だけでなく、サービスを活用して教育の現場に立っている方々、サービスに展開している教材を制作しているチームなど多様な方面からデータ収集・分析の需要があります。それだけにやりがいも大きく楽しい日々を過ごしています。 課題について(導入に代えて) クエリを書いて、結果を分析して、資料にまとめて、展開して、共有して・・・みたいな仕事をしているとSQLで抽出した縦持ちのデータを横持ちに作り変えたいことがよくあり

    BigQuery縦持ちデータを動的に横持ちデータにする方法 - ドワンゴ教育サービス開発者ブログ
  • AWS NAT ゲートウェイ を理解した上で起動&停止 Lambda を用意する - Qiita

    実現したいこと 既存のAWSのバックエンドシステムにおいて、コスト削減のため開発環境とステージング環境のNATゲートウェイ(NAT Gateway)を夜間と休日の間は停止させるべく、NATゲートウェイを起動・停止させるLambdaを作成します。 待て、まだコードを書こうとするな 「NATゲートウェイ 自動 停止」とかで検索すると少ないながらもいくつか記事が出てきますが、理解せずにそれをまるまるコピペして実行させるだけではうまくいかないことが多いですし、望まないNAT削除をしてしまう可能性があります。 NATゲートウェイ、ルートテーブル、Elastic IPなどが自分の開発しているシステムではどのように設定されていて、どのリソースを操作すれば良いかをちゃんと理解する必要がありました。 こちらは開発していたシステムの構成図を、NATゲートウェイ周りだけを抽出して描いたものです。 手描きでごめん

    AWS NAT ゲートウェイ を理解した上で起動&停止 Lambda を用意する - Qiita
  • 今日から始めるChatGPT+Zapierで雑パーソナライズ情報収集 - LayerX エンジニアブログ

    皆さんこんにちは。CTOの松です。LLM使ってますか?ChatGPT毎日触ってますか? LLMに熱狂してすでに1年以上が経ちましたが周辺エコシステムが充実してきたことでいろいろな取り組みがとても簡単に実現出来るようになったなーと感じています。 ということで今回はZapierを使った小ネタのご紹介です。 AI・LLM事業部の今 とその前に、AI・LLM事業部での取り組みから着想を得たものでして、AI・LLM事業部について簡単に紹介させてください。 LayerXの新規事業であるAI・LLM事業部では、バクラクでも取り組んできたビジネス文書の解析の延長としてLLMを活用して文書分析エンジンの開発を進めています。現在このエンジンを使ったエンタープライズ向けの新規プロダクト開発にいそしんでおります。とても楽しいですし、最近は様々なお客様からの引き合いも増えておりまして、事業成長に向けて満を持しての

    今日から始めるChatGPT+Zapierで雑パーソナライズ情報収集 - LayerX エンジニアブログ
  • Looker Studioで組織内に魔境を作らないための裏技的Tips集 - Qiita

    はじめに Looker StudioはGoogleが無料で提供しているBIツールです。無料でもかなりの機能が揃っており、BIの活用にあたっては大変重宝する存在になっています。ただし、以前「後回しにするとどうしようもなくなる(かもしれない)Looker Studioの権限を理解する」で整理したように、組織管理という観点で難があるのは事実です。 それは例えば、レポートを組織的に管理する機能がなかったり、Google CloudのIAMを利用した権限管理ができなかったりすることが挙げられます。Looker Studio Proという有償版のサービスでは、こうした組織管理を円滑にするような機能拡充がされています。 とはいえ、実は様々なデータをフル活用すると無料版でもできることは多くあります。今回は、そんな裏技的Tipsを5つ紹介しようと思います。 こんな方におすすめ Looker Studioの組

    Looker Studioで組織内に魔境を作らないための裏技的Tips集 - Qiita
  • SSMって20種類あんねん 〜Run Commandで定期バッチを起動する〜 - NRIネットコムBlog

    どうも。小林です。 みなさん、自動化してますか? 私の課では特定の顧客のシステムを多数運用しています。 かなり多くのシステムがあり、顧客側の担当者も異なるため、弊社側でも複数のチームを組んで手分けしてシステムを担当しています。 チームも顧客担当者も異なるとなれば、当然運用のやり方はシステムごとに変わってきます。その一方で統一できる部分は統一しておかないと全体の統制は効きづらくなってしまいます。 そこで「標準化チーム」を発足し、チーム間で共用するシステムのアカウント管理やその申請ルール、顧客報告やメンバーの勤怠管理といったものの標準化を進めています。 標準化の恩恵のひとつとして、「作業が単純化できて自動化しやすくなる」という点が挙げられます。 例えばアカウント発行の申請フォーマットを統一すると、「フォーマットにしたがって記載されたテキストをバッチに読み込ませてアカウントを自動的に発行する」と

    SSMって20種類あんねん 〜Run Commandで定期バッチを起動する〜 - NRIネットコムBlog
  • git commit --fixupを使いましょう - Don't Repeat Yourself

    発端 Pull Request で force push されると差分がわからなくなるから困るんだけどみんなどうしてますか?— codehex.bsky(へっくす) (@codehex) 2024年2月25日 ポストの前提がちょっとわかりませんが、レビュー後にforce pushされると、どこに修正を入れたのかわからないケースだと仮定します。プルリクエストがまだドラフト状態でのforce pushやrebaseで困るケースはそんなにないと思うからです。 git commit --fixup このケースではgit commit --fixupが便利です。レビューで指摘が入ったコミットに対して--fixupをかけておき、レビュワーはfixupコミットの内容を確認します。レビュワーが確認してOKが出た段階で、git rebase -i --autosquashなどを使ってfixupコミットを元コ

    git commit --fixupを使いましょう - Don't Repeat Yourself
  • 【Python】import system の全体像

    概要 Python の import 文は、プログラムの実行中に他のモジュールを読みこむために使われます。 おおまかな import 文の動作として、sys.path から指定された名前のモジュールを探して見つかったものを読みこむというように理解している人が多いのではないかと思います。 この理解は概ね正しいですが、実際には sys.path の探索は import system の一部分でしかなく、他の機構が用いられることもあります。さらにはカスタマイズした実装を使って import system の動作を拡張したり置き替えたりすることさえ可能です。 Python の import system は import 文の単純そうな文法からすると意外なほどに複雑です。この記事では import system の仕組みについて、図を交えながら全体像をできるだけわかりやすく説明することを目指しまし

    【Python】import system の全体像
  • SQLBoilerのちょっとしたTips集

    はじめに SQLBoilerは、スキーマに合わせたORMを生成するツールです。 READMEにも書かれていますが、意外と気づきづらい部分があったりするので、使い方から、ちょっとしたTips、ハマりポイントをまとめます。 少しでも参考になれば幸いです。 前提 MySQL SQLBoiler v4.16.1 生成したコードはmodelパッケージに配置されているとします テーブルは以下を想定 CREATE TABLE `teams` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_

    SQLBoilerのちょっとしたTips集
  • 【python再入門】親ディレクトリを経由したimportを行う方法 - Qiita

    pythonで自作モジュールをimportする際の対処方法がよくわからなくなってしまったのでメモ 背景 pythonに限らずプラグラミングをしていると、最初1ファイルで記載していた処理を複数ファイルに分割したくなってきます。 そしてそのうち分割したファイルをディレクトリに分けて管理したくなります。 これらのディレクトリに分けて管理を始めたファイルをimportする際に少し工夫が必要で手間取ったので対応方法を残しておきます。 なお、細かいですが、パターンが以下の2つに別れます。この記事では1の方について記載します。 1.実行ファイル内で親ディレクトリ経由のパスにあるモジュールをimportしたい場合 . ├package1 │ ├__init__.py │ └module1.py # <= 実行ファイル └package2 ├__init__.py └module2.py ↑実行ファイルがm

    【python再入門】親ディレクトリを経由したimportを行う方法 - Qiita
  • S3間で容量の大きいファイルをBoto3を使ってコピーする際はmultipart_chunksizeに注意 | DevelopersIO

    データアナリティクス事業部のueharaです。 今回は、S3間で容量の大きいファイルをBoto3を使ってコピーする際はmultipart_chunksizeに注意しましょうという話をしたいと思います。 はじめに Boto3を利用してS3間でファイルコピーをするというのはよくあるケースだと思います。 中でも、大きめの容量のファイルをコピーする際は以下のブログでも紹介されているように S3.Client.copy() メソッドを利用するかと思います。 ただ、この関数をデフォルトのまま使用するとファイルコピーの速度といったパフォーマンス面で課題が生じるケースがあります。 ファイルコピーを行う際の設定値について S3.Client.copy()メソッドは Config という引数を持っており、こちらは boto3.s3.transfer.TransferConfigを受け取ります。 ここで、デフ

    S3間で容量の大きいファイルをBoto3を使ってコピーする際はmultipart_chunksizeに注意 | DevelopersIO
  • bmf-tech.com - Goでオレオレ証明書がほしいときの一手

    GoでHTTPサーバーを書いているときなどオレオレ証明書がほしいときに役立つワンライナー。 go run $(go env GOROOT)/src/crypto/tls/generate_cert.go -rsa-bits 2048 -host localhost cert.pemとkey.pemが用意できる。 openssl使ったりmkcert使ったりしていたけどGo使っていたらこれで良さそう。 cf. Source file src/crypto/tls/generate_cert.go

  • Life Tips

    W-8BENについて アメリカの会社からRSU(Restricted Stock Units)を受け取っている場合、W-8BENの申請を行うことで、配当金に関する税金を減らすことができます。 W-8BENとは Form W-8BENとは、アメリカでの源泉徴収のために外国籍の受益者が提出する書類です。この書類を提出することで、RSUに関連する課税所得確定後に保有する株式について、アメリカで生じる税金を軽減できます。 申請の有効期間と再申請 Form W-8BENの効力は3年間です。提出した日から3年後の年末まで有効です。 例えば2020年4月に申請した場合、効力は2023年12月31日まで続きます。 通常は、効力の消滅に伴い再申請を促す通知がeTradeなどから届きますので再申請を行えます。 e*Tradeを利用している場合、以下のURLから申請のステータスを確認できます。また、この画面から

    Life Tips
  • マンションリフォーム虎の巻

    来は親友に向けたマンションリフォームのアドバイスだが、LINEで送るには長すぎるので、増田の日記として公にさらしてみる。ブコメやトラバで有用な反論が得られるかもしれない。 祝1000user超え。いろんな意見が聞けて楽しい。おそうじ浴槽がみんなに届いてうれしい。 祝2000user超え。自分の知識がみんなの役に立ったようでうれしい。はてブ愛してる。 増田は建築士としてそれなりに経験値はあるが、住まいのあり方や価値観は当に多様なので、N=1の意見として参照するぐらいがちょうどよい。 大前提適切な断熱壁と二重ガラス樹脂サッシが装備されていること。それがない建築が許されるのは安藤忠雄だけ。 既存のサッシが交換できないならインプラスなどの内窓をいれればよし。 風呂編おそうじ浴槽!これが言いたくてこの長い日記を書いているといっても過言ではない。 google:image:おそうじ浴槽 他の設備投

    マンションリフォーム虎の巻
  • Pythonでリストを多用しがちな新人に贈りたい、array/tuple/set/queueの魅力と使い分けフローチャート - Qiita

    Pythonでリストを多用しがちな新人に贈りたい、array/tuple/set/queueの魅力と使い分けフローチャートPythonarray初心者tupleset はじめに みずほリサーチ&テクノロジーズの @fujine です。 Pythonのリストってとても便利ですよね。可変長で任意のオブジェクトを保存できるため、シーケンシャルなデータなら何でもリストで実装したくなる気持ち、分かります。 でもちょっと待ってください!リスト以外にも便利なコレクション型があること、ご存知でしょうか?コレクション型を適切に使い分けることで、 プログラムの意図を(ドキュメントに頼らなくても)読み手に的確に伝えられる パフォーマンスが向上する などの効果が期待できます。 そこで記事では、Pythonの組み込み型や標準ライブラリを対象に、リストと似たコレクション型をどのように使い分けるか?の案をフローチャー

    Pythonでリストを多用しがちな新人に贈りたい、array/tuple/set/queueの魅力と使い分けフローチャート - Qiita
  • Pythonで辞書のキーにtupleが指定できた件(+パフォーマンスの話) - Qiita

    強化学習のを読んでいて、とても今更なのですがPythonで辞書のキーにtupleが指定できることを知りました。 普段はPandasでデータフレームで対応することが多いので、そこまで頻繁に使うというものではありませんが、稀に必要になった時のためにメモしておきます。(マイナーなトピックなので、需要は皆無な気がしないでもないですが・・) できること sample_dict = {} sample_dict[(100, 3, 1300)] = 500 print(sample_dict[(100, 3, 1300)])

    Pythonで辞書のキーにtupleが指定できた件(+パフォーマンスの話) - Qiita