はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    ノーベル賞

『raahii.me』

  • 人気
  • 新着
  • すべて
  • SQLのページネーションで COUNT(*) OVER() を使うのは避けよう

    3 users

    raahii.me

    はじめに 検索結果をページングしながら返すWeb APIを作るとき、検索にヒットした総件数も一緒に返すケースは多い。 通常、特定のページのデータを取得するクエリと、ヒットした件数を引くクエリは別々になる。 そこで、COUNT(*) OVER() を使うことで一発で両方とも引くテクニックがあるが、意図せずスロークエリに繋がりかねないので止めた方が良いと思っている話、である。 前提条件として MySQL8でInnoDBを使用している。 COUNT(*) OVER() を使うとどうなるか 下記のように、COUNT(*) OVER() を使うことでページングしつつ全件数も同時に取得できる。このクエリは、 employees データベース を使って開発部の社員の給与履歴を検索するものである。 -- salaries(社員の給与履歴)をdepartmentsまでJOINして開発部に絞って検索する SE

    • テクノロジー
    • 2024/12/04 20:00
    • ProxySQLでMySQLの負荷分散をする

      6 users

      raahii.me

      はじめに 前回、MySQLのmaster slave構成をDockerで作ってみた が、実際の開発では複数DBをアプリケーションから使うには一工夫必要である。もっとも素朴な方法は使用するDBの接続情報をアプリケーションですべて保持しておき、read系/write系で使い分けることだと思う。しかし、これは次のような問題がある。 DBの接続情報は途中で変わりうる アプリケーションのロジックにDBの使い分けが入るのは面倒(だし複雑) そこで、今回は ProxySQL を試してみる。ProxySQLは アプリケーションとDBの間に入って、次のようなことをしてくれる。 クエリに応じたmaster / slave への自動プロキシ 負荷分散 シームレスな接続設定の変更 どの程度メジャーなのかはいまいちわかっていないが、公式の mysql-proxyよりは使われているようだったので選んだ。ちなみにPro

      • テクノロジー
      • 2021/11/24 11:22
      • mysql
      • Go でオプショナルパラメータをどう扱うか

        9 users

        raahii.me

        TL; DR 状況によって下記を使い分けるのが良さそう.とりあえずFunctional Option Patternでも良いかも. 複数の関数を用意する オプショナル引数が少ない場合に有効.シンプルだが拡張性が低い. 引数用の構造体を用意する 構造体を使うのでユーザービリティが良く実装も容易.ただし,引数の未指定とゼロ値を分離するためには値のポインタを使う必要がある. Functional Option Patternを使う デザインパターンとして提案されているだけあって,クリーンで拡張性が高い.敢えてデメリットを挙げるとすると,このパターンを知らないユーザーからするとやや直感的でない.実装側は引数毎に関数を定義する必要があり記述量が増える. はじめに Goには関数のオプショナルパラメータ(デフォルトパラメータ)がありません.しかし,「必要最低限の挙動をする分にはユーザーが意識する必要のな

        • テクノロジー
        • 2020/07/23 13:36
        • なぜ ioutil.ReadFile は ioutil.ReadAll より速いか

          3 users

          raahii.me

          TL;DR Goでファイル内容を読む場合 には,ioutil.ReadFile の方が ioutil.ReadAll よりも高速.なぜなら,読み込むデータの大きさがあらかじめわかっている場合は,内部のバッファサイズを決定でき,無駄なメモリ確保を無くせるから. (いやなんでReadAllを使うんだよ,というのはさておき.) ioutilパッケージの関数たち Go言語には入力や出力を抽象化したインターフェース(io.Reader やio.Writer など)がある.このインターフェースはいわゆるファイル的な振る舞いをするものをまるっと同じように扱うためにとても便利なもの.ioutil パッケージも当然,それらをベースとしてさまざまな関数を実装している. io.Reader / io.Writer ただし,抽象化するということは,それぞれに特化できないということでもある.実際に ioutil.R

          • テクノロジー
          • 2020/05/25 11:01
          • Google Home と Nature Remo でエアコンのタイマーを快適にセットする

            4 users

            raahii.me

            はじめに この時期になると朝寒くてお布団から出るのが辛いですね….せっかく一度目を覚ましたのに部屋が寒すぎてエアコンを付けて二度寝….あるあるです. なので我々はエアコンのタイマーをセットしますね.でもこのタイマーがちょいと曲者. まず明日何時に起きるかを考えて… 今から逆算して何時間後かを計算して… 入タイマーボタンを何度も押してその時間をセット と機種によりますが大体こんな感じ.すごく面倒. これ本当は「明日○時にエアコン付けて」のワンステップで良くないですか? というか…何か変ですよね… この時代にもなって人間が時間を逆算…?ボタンを何度も…押す…!? 由々しき事態です. エアコンの入タイマーを自動化する そこで,Google HomeとNature Remoを活用して所望の時間に自動でエアコンをONにする機能を作ります. 皆さん家電リモコンは持ってますか?外から予め暖房を付けておい

            • テクノロジー
            • 2019/12/26 17:23

            このページはまだ
            ブックマークされていません

            このページを最初にブックマークしてみませんか?

            『raahii.me』の新着エントリーを見る

            キーボードショートカット一覧

            j次のブックマーク

            k前のブックマーク

            lあとで読む

            eコメント一覧を開く

            oページを開く

            はてなブックマーク

            • 総合
            • 一般
            • 世の中
            • 政治と経済
            • 暮らし
            • 学び
            • テクノロジー
            • エンタメ
            • アニメとゲーム
            • おもしろ
            • アプリ・拡張機能
            • 開発ブログ
            • ヘルプ
            • お問い合わせ
            • ガイドライン
            • 利用規約
            • プライバシーポリシー
            • 利用者情報の外部送信について
            • ガイドライン
            • 利用規約
            • プライバシーポリシー
            • 利用者情報の外部送信について

            公式Twitter

            • 公式アカウント
            • ホットエントリー

            はてなのサービス

            • はてなブログ
            • はてなブログPro
            • 人力検索はてな
            • はてなブログ タグ
            • はてなニュース
            • ソレドコ
            • App Storeからダウンロード
            • Google Playで手に入れよう
            Copyright © 2005-2025 Hatena. All Rights Reserved.
            設定を変更しましたx