タグ

DBに関するlarkerのブックマーク (162)

  • DB に JSON を保存したいときに Protobuf を使うと便利 #LayerXテックアドカレ - LayerX エンジニアブログ

    こんにちは。バクラク事業部 Enabling チームの @izumin5210 です。最近「HUNTER×HUNTER」の既刊を全部読みました。 この記事はLayerXテックアドカレ2023の9日目の記事です。 前回「1人目データアナリストとしてデータチームに異動しました 」 次回「Slack × Zapier × MiroでKPTでの振り返りをラクにする」 RDB や KVS などのデータ保存先において、データを正規化せずにそのまま保存したいと思うことはありませんか? 8月にリリースされた「バクラク請求書発行」というプロダクトには「柔軟なレイアウトカスタマイズ」機能が搭載されています。リンク先の画面操作イメージを見ていただくと、この機能の雰囲気を理解していただけると思います。この機能が扱うレイアウトデータはまさに「関係の正規化をせずに保存したいデータ」でした。 bakuraku.jp こ

    DB に JSON を保存したいときに Protobuf を使うと便利 #LayerXテックアドカレ - LayerX エンジニアブログ
  • [flutter]hiveに大量のデータを保存すると重くなりすぎて厳しい

    fragment PetWithRecord on Pet { ...Pet records { // この記録(Record)がめっちゃ多い場合を想定 ...Record } } UpdateCacheHandler<GCreateRecordData, GCreateRecordVars> createRecordCacheHandler = (CacheProxy proxy, OperationResponse<GCreateRecordData, GCreateRecordVars> response) { if (response.needUpdateCache) { final createdRecord = response.data!.createRecord; final pet = proxy.readFragment(GPetWithRecordReq((b) =>

    [flutter]hiveに大量のデータを保存すると重くなりすぎて厳しい
  • 【Flutter】Hiveの使い方

    Hiveは端末のローカル保存領域をデータベースとして使用するためのパッケージです。Hiveを使用することで簡単かつ高速にデータの保存/取得を行うことができます。 パッケージのインストール Hiveを使用するためにpubspec.yaml のdependencies に以下のコードを記述します。 そしてflutter pub get コマンドを実行することでHiveを使用することができるようになります。 Hiveの基的な使い方 Hiveを初期化する Hiveでデータを保存/取得する前にHive クラスのinitFlutter() を実行して、Hive クラスを初期化します。 Box型の変数を宣言する Box クラスはデータを保存/取得するためのメソッドが集まっているクラスです。HiveではBox インスタンスを介してデータの保存/取得を行います。 Boxインスタンスを取得する Hive ク

    【Flutter】Hiveの使い方
  • Flutter で ObjectBox つかってみた

    ObjectBox とは 処理速度が速いローカルデータベースです。 https://pub.dev/packages/objectbox より引用 Hive や sqflite と比較した図を見るとその性能のよさがわかります。膨大なデータを扱わなければ実感できないレベルだとは思いますが、速いにこしたことはありません。公式ドキュメントを見ながら、その使用感を試します。 パッケージの導入 pubspec.yaml を編集して必要なパッケージを入れます。 name: demoobjectbox description: A new Flutter project. publish_to: "none" version: 1.0.0+1 environment: sdk: ">=2.16.2 <3.0.0" dependencies: flutter: sdk: flutter cupertino

    Flutter で ObjectBox つかってみた
  • Dart/FlutterのローカルDBの比較 - のんびり精進

    モバイル以外にも対応したローカル DB を使いたかったので、複数のパッケージを調べてみました。 Hive を特に詳しく調べたため、そこだけ情報量が多めです。 2022年12月補足(結論) 記事を書いたときは Isar に注目していましたが、現在は Drift に落ち着きました。 ややこしそうな印象を受けて試さずにいて、しばらく後に再び気になったときに触って良さに気づいたので、もっと早く使えば良かったと思いました。 イチオシです。 高い機能性、型安全 あらゆる場所で使われている SQLite なので非常に堅牢(参考記事) この一点だけを見ても Isar のような個人開発のデータベースは比較にならない SQLite の最新バージョンを利用できる 既に持っている RDB / SQL の知識を活用できる RDB なので高度な操作も自在にできる Flutter Favorite に選ばれている Fl

    Dart/FlutterのローカルDBの比較 - のんびり精進
  • 1文字でSQLを200倍遅くする方法

    こんにちは、19のSysAd班の翠(sappi_red)です。普段はtraQのフロントエンドの保守を行ったりしています。 こんばんは、19のSysAd班のtemmaです。普段は普段どおりのことをしています。この記事の面白い部分はすべて僕が書いています。面白くないところは翠君が書いています。 この記事では、日々パフォーマンスに頭を悩ませる開発者の方のために、ワンタッチで劇遅SQLを200倍高速でキュートなSQLに劇的ビフォーアフターする方法を紹介します。 「おいおいおい、遅くしたくて記事を読み始めたのに話が違うじゃないか💢」と思ってるそこのあなた👈 早くできるということは遅くもできるんですね。 TL;DR ここにテーブルがあります。 CREATE TABLE messages ( id CHAR(36) NOT NULL PRIMARY KEY, text TEXT COLLATE ut

    1文字でSQLを200倍遅くする方法
  • Hive データをA5:SQL Mk-2 でCRUD クエリする方法

    CData Drivers あらゆるSaaS / DB へのリアルタイム連携を実現する高機能コネクタ。

    Hive データをA5:SQL Mk-2 でCRUD クエリする方法
    larker
    larker 2022/03/10
  • 初めてのFlutterでHive導入

    NoSQL SQLiteよりも高速に読み取り、書き込みができる。 SharedPreferencesよりも書き込みが優れている。 モバイルやデスクトップ、ブラウザなど様々なプラットフォームに対応しているため、複数の動作環境に対応することができる。(クロスプラットフォーム)

    初めてのFlutterでHive導入
  • 読書記録の書き方6選×おすすめアプリ6選 - STUDY HACKER(スタディーハッカー)|社会人の勉強法&英語学習

    読書の質を高めたいなら、読書記録がおすすめ。要約、感想、心に残った文章などを書き残せば、より深く記憶に刻めますよ。 有識者が推奨する読書記録テンプレートや書き方のコツ、便利なツールなど詳しくご紹介します。 読書記録のメリット これまで読んだを振り返れる の内容を整理できる の知識を活用しやすい 記憶が定着しやすい 読書記録の書き方1:ひとこと読書ノート 自分に必要な情報だけ 気取らず音で 感想だけでなく理由も 思い出の品を貼る 読書記録の書き方2:A4用紙記録法 ひとこと要約 図解 自分なりの意見 読書記録の書き方3:K-W-L表 K:すでに知っていること W:から学びたいこと L:から学べたこと 読書記録の書き方4:の余白を使う テーマに沿った重要な情報 テーマからは逸れるが有益な情報 著者独自の主張 スタイルについて気づいた点 引用された 読書記録の書き方5:引用ベスト

    読書記録の書き方6選×おすすめアプリ6選 - STUDY HACKER(スタディーハッカー)|社会人の勉強法&英語学習
  • AndroidでSQLiteのDB操作をするための基礎知識

    県庁所在地は各都道府県に必ず1つだけ存在するので、プライマリキーを設定しています。郷土料理はいくつ存在するか分からないため、プライマリキーはありません。この2つのテーブルは都道府県でリレーションしています。 なお、郷土料理が登録されていない県がありますが、あしからずご了承ください。 Androidのデータベースを作成するには? スキーマが決まったら、データベースを作成します。 データベースの作成方法はいろいろありますが、今回は「SQLiteOpenHelper」というクラスを利用します。このクラスは、abstract(抽象)クラスなので、以下のコールバックを実装する必要があります。 public void onCreate(SQLiteDatabase db) データベースを作成したタイミングで呼び出される。通常はここでテーブルを作成する。今回はデータもこのタイミングで追加している pub

    AndroidでSQLiteのDB操作をするための基礎知識
    larker
    larker 2021/11/19
    トランザクション、ロールバック
  • - Android開発初心者向け - Content Providerの使い方 - Qiita

    AndroidDB関係を実装するときによくわからなかったので勉強したことをまとめます。 自分はjavaは触ったことがあるがAndroidは初めてという人なので結構基的なことから書いていると思います。 そんなこと知ってるわ!って人は最初の方を飛ばしてください。 Content Providerとは何か AndroidDBにデータを取得/保存する時に利用するクラスです。 このクラスを使えば、あるアプリが持っているデータを他のアプリも使用できるようになったりします。もともと用意されているものとしては、着信ログや電話帳、ブラウザのブックマークなどがあります。 異なるアプリで同じDBを触ることができるというあたり、様々利用できそうで夢が膨らみます。 これらのデータを利用するためにはgetContentResolver().query()メソッドで、目的のデータを示すURIを指定してCursor

    - Android開発初心者向け - Content Providerの使い方 - Qiita
  • GitBucket のデータが壊れた!のを復旧させてみた - Qiita

    事の起こり あるとき、gitbucketのプラグインがうまく動いてないことに気付いた私は、体のバージョン確認をしながらGitHub をのぞいたのでした。 https://github.com/gitbucket/gitbucket そしたらなんと。いつの間にやら 4.30.x まで上がってるじゃないですか。 手元の gitbucketを見ると 4.19.3 とか。 バージョンアップしたくなりますよね。(・ω・)(-ω-)(・ω・)(-ω-)ウンウン♪ おもむろに、warファイルをダウンロードしてtomcat再起動したさ。 [root@localhost] cd /var/lib/tomcat/webapps [root@localhost] mv gitbucket.war gitbucket.war.version4.19.3 [root@localhost] wget http

    GitBucket のデータが壊れた!のを復旧させてみた - Qiita
  • みんなの校則データベース:広島県内公立高校版【2021年3月公開】|中国新聞デジタル

    概要 広島県内の公立高(全日制)と中等教育学校、計88校の校則を一覧できるデータベースです。中国新聞が2020年8月に広島県教委、広島市教委、福山市教委、呉市教委に開示請求した「生徒指導規程」などの資料を基に、服装、頭髪、化粧や装飾品についての決まりを抜き出して整理しています。 使い方 関心のあるキーワードや学校名、地名などで自由に検索できます。複数のキーワードをスペースで区切っての検索も可能です。トップページに表示される「キーワードボタン」を押すことでも利用できます。 注意事項 学校によって開示する資料やその範囲が異なっています。また、「服装」などの分野ごとに整理するため、基とした資料とは記述の順番が変わっていることがあります。そのため「(1)」などの通し番号を「◆」などの記号に置き換えている場合があります。

    larker
    larker 2021/04/01
  • データベースを遅くするための8つの方法

    はじめに Twitterのタイムラインを見ていたらバッチ系のプログラムで逐次コミットをやめて一括コミットにしたら爆速になったというのを見ました。当たり前でしょ、と思ったけど確かに知らなければ分からないよね、と思って主に初心者向けにRDBを扱うときの注意点をまとめてみました。 プログラミングテクニック的なところからテーブル設計くらいの範疇でDBチューニングとかは入ってないです。 自分の経験的にOracleをベースに書いていますが、他のRDBでも特に変わらないレベルの粒度だと思います。 大量の逐次コミットをする バッチアプリケーションでDBにデータをインサートすると言うのはかなり一般的な処理です。しかしデータ量が少ない時はともかく大量のインサートを逐次コミットで処理するとめちゃくちゃ遅くなります。数倍から十数倍遅くなることもあるので、10分程度のバッチが1時間越えに化けることもザラにあるので原

    データベースを遅くするための8つの方法
    larker
    larker 2020/11/15
  • DBMSをGoで実装してみた - Sansan Tech Blog

    こんにちは。プロダクト開発部の荒川 id:ad-sho-loko です。突然ですが、皆さんはこんな疑問を持ったことはありませんか? データベースの内部実装はどうなっているのか? トランザクションとはどのようなアルゴリズムで実現されているのか? NoSQLが遅いのはなぜか? 古典的なデータベースとは内部的にどのように違うの? データベースを何かしらの形で利用しているのにも関わらず、意外と内部の仕組みを理解していない場合が多いかと思います。僕もそうです。*1 しかし、エンジニアたるもの、その仕組みを知ることは非常に重要です。僕もデータベースについて勉強しようといくつかのやサイトを調べていたのですが、なかでもCMU(カーネギーメロン大学)のDatabase System Groupがアップロードしている講義が最も勉強になりました。 www.youtube.com そしてブログでは、上記の講義

    DBMSをGoで実装してみた - Sansan Tech Blog
  • ピアノ曲事典 | ピティナ・ピアノホームページ - ピティナ・ピアノ曲事典

    導入1 導入2 導入3 基礎1 基礎2 基礎3 基礎4 基礎5 応用1 応用2 応用3 応用4 応用5 応用6 応用7 発展1 発展2 発展3 発展4 発展5 展開1 展開2 展開3

  • Symfoware

    SourceTree AWS CodeCommitで複数アカウントのパスワード管理 SourceTreeは一度入力したgitの認証情報を保持してくれます。 管理はドメイン単位で行われるようです。 別アカウントのAWS CodeCommitでも https://git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/ までURLは同じなので、他のCodeCommitリポジトリの認証情報があるとエラーになる。 毎回、メニューの[ツール]-[オプション]を選択。 「認証」タブで表示される、Git保存されたパスワードで git-codecommit.ap-northeast-1.amazonaws.com の履歴を削除して、情報を入力しなおしていましたがめんどくさい。何とかならないか。 複数アカウントの保持 こちらがとても参考になりました。 [AW

    Symfoware
  • 【MySQL】Spiderストレージエンジンによる水平分散(シャーディング) - 株式会社オーツー|スタッフブログ

    どうも、開発2部サーバー担当の山です。 皆さんDBの水平分散は行ってますか? 最近ではサービス開始時点から水平分散しているタイトルも割と多いのではないでしょうか。ユーザーやデータが増えるのはサービスが好調な証ではありますが、いざ対応しようと思うと大変ですよね。 今回はMySQLのストレージエンジンであるSpiderを使った水平分散(以下シャーディング)について紹介したいと思います。 Spiderとは Spiderは2009年にver1.0がリリースされた国産のMySQLストレージエンジンで、MySQL以外にもMariaDBOracleに対応しています。 MySQLにはInnodbを代表にMyISAM、MEMORYなど様々な特徴を持ったストレージエンジンが用意されていますが、Spiderの特徴はストレージエンジンがシャーディングに対応していることです。 ここ最近は皆さんAWSのAuror

    【MySQL】Spiderストレージエンジンによる水平分散(シャーディング) - 株式会社オーツー|スタッフブログ
  • oracleのエラーORA-XXXXXがまとまっているサイト - ウィリアムのいたずらの、まちあるき、たべあるき

    世間話(15) まとめ(7) 経営戦略とか(1) まちあるき(25) 映画あれこれ(4) 個人的見解(67) べ物いろいろ(140) 音楽いろいろ(94) 予言・スピリチュアル・自己啓発(29) ネットワーク(1140) AI・BigData(462) そのほか(1139) Twitter(2120) Weblog(7012) トピックス(591) Ruby(70) 正規表現(12) PHP(117) ケータイ(324) コピーされるほど儲かるシステム!(79) 開発ネタ(630) JavaとWeb(488) Linux(43) 業務のモデル化(24) Officeソフト&VBA(87) 一人勉強会(22) リンク集(2) XML(10) 土日シリーズ(109) OpenOffice(14) SugarCRM(26)

    oracleのエラーORA-XXXXXがまとまっているサイト - ウィリアムのいたずらの、まちあるき、たべあるき
    larker
    larker 2018/02/26
    エラーメッセージの一覧
  • GitBucketのDBが壊れたので直した - おぼのおぼえがき

    Tomcatのプロセスが予期せず終了したのが原因でGitBucketのデータベースが壊れた. 状況としてはこの記事と同じ. rela1470.hatenablog.jp この記事では最後に $ mv data.mv.db data.h2.db をしているが,それをしなければ一応は動くはず. ただ,READ_CLOB_DBがある行を全て削除しているので,SSHキーの設定などが消えてしまう.ここをなんとかしたのでそのメモ. まず,data.*.dbを保存しているディレクトリに移動後, $ java -cp h2-1.4.180.jar org.h2.tools.Recover でリカバリー用スクリプトを生成. data.*.dbはバックアップを取っておく. data.h2.sqlが生成される. 次に,data.h2.sqlからREAD_CLOB_DB関数のみ抽出し, CREATE ALIAS

    GitBucketのDBが壊れたので直した - おぼのおぼえがき