タグ

kanbayashiのブックマーク (8,561)

  • postgresのio_uringを有効にした時のパフォーマンスを見てみる - Ryoの開発日記 Neo!

    測定してみました。 postgresのio_uringを有効にした時のパフォーマンスを見てみる · GitHub

    postgresのio_uringを有効にした時のパフォーマンスを見てみる - Ryoの開発日記 Neo!
    kanbayashi
    kanbayashi 2025/04/08
    セルクマ
  • ECSとRDSをやめて、AWSコストを9割削減しました

    はじめに こんにちは。BEENOSのがれっとです。 AWS上にアプリケーションを構築する際、一般的なのはECS + RDSという組み合わせです。私も社内システムをそのような形で構築しました。 しかし、使わないときにもインスタンスが動き続けてしまうため、大量のトラフィックを捌かないアプリケーションにおいてはコストが見合わないものとなってしまいます。 そこで、ECS + RDSという構成からLambda + EFSの構成に社内システムを移行して、コスト削減した話を紹介します。 前提 以下の構成のアプリケーションを移行しました。 Blitz.js 内部に下記を使用 Prisma Next.js PostgreSQL テーブル数は12 (_prisma_migrationsテーブルを含めて13) AWS 構成図 移行前 移行後 リレーショナルデータベースを用いることが必須のアプリケーションを構築す

    ECSとRDSをやめて、AWSコストを9割削減しました
  • アニメ風イラスト特化のローカル画像検索ツールを作ってみた - ViT系 Tagger x BM25/Doc2Vec - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? どうも、 ryo_grid です。 手元に大量の2次元イラスト画像があって、うまいこと検索できないかなあと思い、ちょいとコードを書いてみました。 Anime Style Illustration Specific Image Search App with ViT Tagger x BM25/Doc2Vec https://github.com/ryogrid/anime-illust-image-searcher 作ったものの概要 深層学習系の技術も活用した画像検索アプリケーション => Vision Transformer(ViT

    アニメ風イラスト特化のローカル画像検索ツールを作ってみた - ViT系 Tagger x BM25/Doc2Vec - Qiita
    kanbayashi
    kanbayashi 2024/10/18
    セルクマ
  • CLIP+Faiss+Streamlitで画像検索アプリを作成してみる - OPTiM TECH BLOG

    R&Dチーム所属の伊藤です。気がついたら半年ぶりくらいの投稿になってしまいました。 今回はrinna株式会社より公開された言語画像モデルである日語対応CLIPを使ってみた話になります。 元々はCLIPとFaissを組み合わせて画像検索のためのツールを作れないかを試していたのですが、どうせだったら可視化までしようと考えてStreamlitを使用したアプリ化も行いました。 今回作成したコードはGithubのリポジトリにありますので、興味がある方は覗いてみてください。 CLIPとは? Faissとは? CLIPとFaissで画像検索 事前準備 画像ベクトルのインデックス作成 インデックスを読み込んで画像検索 Streamlitで画像検索アプリを作成する 最後に CLIPとは? CLIPはOpenAIより提案された、テキストと画像を使用して画像分類モデルです。 CLIPはContrastive

    CLIP+Faiss+Streamlitで画像検索アプリを作成してみる - OPTiM TECH BLOG
    kanbayashi
    kanbayashi 2024/10/10
    知らずに(劣化版の)似たようなもの作ってた・・・
  • データベース自作勉強会・輪実装会のススメ - エムスリーテックブログ

    先日、社内有志で開催していたDB自作 Database Design and Implementation の輪読会ならぬ輪実装会がついに完結を迎えました。 RDBMSをゼロから、毎週一人ずつ、1章分を実装してPullRequestを出しつつ資料も準備して発表をこなすという一見ハードな勉強会で、完走できるか不安もありつつスタートしましたが、やってみるとめちゃくちゃ楽しく最後まで完走できました。 記事ではみなさんに「うちでもやってみたい」と思ってもらえることを願って、読んだ推しポイントや、どのように勉強会を進めたかを紹介したいと思います。 感動で涙の出るコード Part1: おすすめポイント が良い みんなでワイワイやるのが良い 3ヶ月で完走できるのがいい 完走後のモチベーションアップが良い Part2: 輪実装会 募集 参加者 進め方・実装 期間 Part3: おれたちのDB実装

    データベース自作勉強会・輪実装会のススメ - エムスリーテックブログ
    kanbayashi
    kanbayashi 2024/10/08
    素晴らしい
  • またRustでB+Treeかいたよ - totechite's blog

    Rust標準ライブラリのBTreeMapの実装コードを参考にB+Treeをフルスクラッチで実装しました。 get, insert, remove, rangeなどの基的な操作は実装できているので、ひとまずここに記録します。 ソースコードはGitHubリポジトリに公開しています。そちらもみて見てください github.com どなたかのB+Treeの実装や理解の参考になれば幸いです。 (1600行程度で収まったのでstd::collections::btree_mapより追いやすくなっていればいいなと) 実装した主な操作 Rustっぽい疑似コードです。細かい仕様はソースコードみてください。 fn get(key) -> Option<value> 入力に全順序なkeyを取る。もし要素が存在すれば、そのvalueを出力する。 fn insert(key, value) -> Option<o

    またRustでB+Treeかいたよ - totechite's blog
    kanbayashi
    kanbayashi 2024/09/13
    素晴らしい
  • DB初心者が自作DBMS始めてみた - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事は DeNA 24 新卒 Advent Calendar 2023 の 23 日目の記事です。 TL;DR DBMSの基的な仕組みを知るのに有益だったリソース CMUのDBMS講義 先人の素晴らしい自作DBMSの解説記事&ソースコードリーディング 小さな小さな自作DBMSの設計と実装 最小限SELECTやINSERTなど基的なSQLが動く この記事のゴール データベースの内部構成を超ざっくり理解するために有用なリソースを知り、そして(全開発者のロマンである)自作 DBMS に一歩踏み出すきっかけになればうれしいです。 モチベ

    DB初心者が自作DBMS始めてみた - Qiita
    kanbayashi
    kanbayashi 2024/07/25
    SamehadaDBの作者です
  • AndroidスマホでNostrP2Pのサーバが動いた - Ryoの開発日記 Neo!

    先日以下のような記事をQiitaに書いたのですが、サーバをずっと動かすとなるとそれが可能なマシンを用意できるか、持っているかが問題だよなー、とか考えてました。 qiita.com で、そういえば、AndroidスマホならTermuxというAndroid端末内に独自Linux環境を構築するアプリがあるので、使わなくなったAndroidスマホなんかを有効活用して、サーバ動かしておくというのは悪くないのでは、と思い試してみたところ、見事動きました! (そもそもAndroidLinuxの一種なので、アプリがユーザに見せるシェルにおいてだけ、chrootでファイルシステムのルートの位置を変更して、あれこれ必要なファイルを配置してあげれば、独自のLinuxユーザランドが作れるよね、というのがTermux、という認識) まずは、下のサイトなどを参考にしつつ、Fdroidアプリを経由してTermuxをイ

    AndroidスマホでNostrP2Pのサーバが動いた - Ryoの開発日記 Neo!
    kanbayashi
    kanbayashi 2024/06/02
    セルクマ
  • ピュアP2P分散マイクロブログシステム NostrP2Pを作ってみた - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? こんにちは。 ryo_grid です。 今回はピュアP2P分散マイクロブログシステム NostrP2Pというものを作ってみたのでそれについて書いてみます。 ひとまず開発物のGitHubリポジトリはこちら ryogrid/nostrp2p ryogrid/flustr-for-nosp2p アイキャッチ画像です。 前提知識 Nostr プロトコルについてのざっくりとした理解 こちらの記事などに目を通しておいていただければ十分かと 開発しようと思った経緯 元々NAT透過なオーバレイ上で動作するピュアP2Pなアプリケーションを作ってみたかった

    ピュアP2P分散マイクロブログシステム NostrP2Pを作ってみた - Qiita
    kanbayashi
    kanbayashi 2024/05/26
    セルクマ
  • userspace RCU(QSBR)の使い方と解説 - くまメモ

    http://lttng.org/urcu|Userspace RCU という大変クールなプロジェクトがあります。 「RCU(リードコピーアップデート)をユーザースペースで行うもの」という事で、そこだけ聞くとなんのこっちゃという感じ。 リードコピーアップデートって何よ リードコピーアップデートそのものの正しい説明はWikipedia*1 でも読んでもらうとして、Wikipediaを読むのすら面倒な人の為に説明すると「みんなで共有してるデータをfree()しても良いタイミングを見極める技術」です。 特定の構造体をみんなで共有して書き換えたりしたいな → Lockとればよくね? すごく頻繁にアクセスするし読み出しの方が多いからLockはやだな → Read-Write Lockでよくね? Read-Write LockだとAtomic命令多すぎてパフォーマンスでないな → Lock無くしてデー

    userspace RCU(QSBR)の使い方と解説 - くまメモ
  • オリィ研究所・ソラコム共催 Web通信/配信サービスの裏側公開 開催レポート!

    みなさん、こんにちは!ソラコムでソラカメの事業開発を担当しております高見(ニックネーム:yuu)です。 2023年4月27日に、分身ロボット「OriHime」をはじめとするコミュニケーションテクノロジーの研究開発・製造販売をされている株式会社オリィ研究所と株式会社ソラコムの共催でネットワークエンジニアのMeet Upイベント「Web通信/配信サービスの裏側公開」をオリィ研究所が運営する分身ロボットカフェDAWN ver.βにて開催しました。 記事では、当日のイベント内容や会場の雰囲気についてご紹介します。 プレゼン:「ソラカメ」の映像配信技術についてご紹介 まずトップバッターは株式会社ソラコムのソフトウェアエンジニアである松下こと、ニックネーム名:kokiから「ソラカメの映像配信技術」と題して、発表しました。 松下はリモート参加でしたが、今回はオリィ研究所の分身ロボット「OriHime」

    オリィ研究所・ソラコム共催 Web通信/配信サービスの裏側公開 開催レポート!
  • Bluesky meetup in Osaka Vol.2 (2024/04/14 13:30〜)

    なんとTokyo開催に続き、 Bluesky Meetup in Osaka も開催します! BlueskyチームのWhyさんが大阪にも来てくれることになりました! 前回(2023/4/7)の東京開催の様子 ※画像提供 東城朱音さん ブログ記事 前回(2023/4/7)の東京開催のメディア記事 ITmediaの記事 ギズモードの記事 前回の大阪開催はBluesky上でしか募集していませんでしたが、去年の6/25に大阪でもmeetupという名のBBQを開催していました。 なので今回は大阪開催2回目です! Bluesky とは Blueskyは、もともとTwitter社が開発を主導していた分散型のSNS。 ジャック・ドーシー氏がTwitterに居た頃から開発が開始され、2021年に暗号資産 Zcashのソフトウェアエンジニアの経歴を持つJay Graber氏がプロジェクトリーダーに任命されてい

    Bluesky meetup in Osaka Vol.2 (2024/04/14 13:30〜)
  • リレーショナル・データベースの世界

    序文 私の仕事は、DBエンジニアです。といっても別に望んでデータベースの世界へきたわけではなく、当初、私はこの分野が面白くありませんでした。「Web系は花形、データベースは日陰」という言葉も囁かれていました。今でも囁かれているかもしれません。 ですが、しばらくデータベースを触っているうちに、私はこの世界にとても興味深いテーマが多くあることを知りました。なぜもっと早く気づかなかったのか、後悔することしきりです。 もちろん、自分の不明が最大の原因ですが、この世界に足を踏み入れた当時、先生も、導きの書となる入門書もなかったことも事実です。 今でこそバイブルと仰ぐ『プログラマのためのSQL 第2版』も新入社員には敷居が高すぎました (2015年2月追記:その後、自分で第4版を訳出できたのだから、 人生は何があるか分からないものです)。 そこで、です。このサイトの目的は、データベースの世界に足を踏み

  • Rustでリレーショナルデータベースを自作したときの成果と反省と学び - サノメモ

    はじめに この記事では、個人プロジェクトとしてRust言語でリレーショナルデータベースを開発した経験(もう五ヶ月も前...)について、その成果と反省、得た学びを共有します。 DBMSを自作した理由 自分がDBMSの自作に着手したのは、『Designing Data-Intensive Applications』というの内容を深く理解するためでした。 このは、データシステムの設計と運用において最も大切な「信頼性」、「拡張性」、「保守性」を保証する方法論を、豊富な文献を引用しつつ、理論と実践の橋渡しを巧みに行いながら、丁寧に説明している名著です。読んだことがない人は速攻購入してくだい。当にいいです。 このは、データベースの内部構造に関する話も豊富に含まれていたので、「データベース自作してみようか...」という気持ちになりました。 Rustを採用した理由 データベースの実装のついでに、

    Rustでリレーショナルデータベースを自作したときの成果と反省と学び - サノメモ
    kanbayashi
    kanbayashi 2024/03/04
    良い話
  • ピュアP2P分散マイクロブログシステムの第一歩 - Ryoの開発日記 Neo!

    オーバレイでメッセージをブロードキャストできるだけのものができた! https://github.com/ryogrid/buzzoon/releases/tag/v0.0.3 構想はコレ: みんなで頑張る分散ピュアP2Pマイクロブログシステム(Buzzoon) · GitHub 試し方(サーバ起動) ryogrid.net:9999 ryogrid.net:8888 に既にオーバレイネットワークに参加しているサーバが2匹いるのでどちらかに接続。 バイナリはWin環境なら buzzoon.exe、Linux環境なら buzzon_linuxMac環境ならbuzzoon_mac ローカルのサーバは下のように起動 $ .\buzzoon.exe server -l 0.0.0.0:20000 -p 1985 -n ryo -b ryogrid.net:9999 -l オプションはバインドする

    ピュアP2P分散マイクロブログシステムの第一歩 - Ryoの開発日記 Neo!
    kanbayashi
    kanbayashi 2024/02/15
    セルクマ
  • 自作RDBMSやろうぜ!

    Skip to the content. 自作RDBMSやろうぜ! このサイトの目的 RDBMS(いわゆるリレーショナルデータベース)というものはプログラミング言語の処理系や、OSなどと同様に、世の中で広く使われているソフトウェアであるにも関わらず、いざ自作してみようと思うと日語で記述されたサイトや書籍で、必要な情報・情報源がまとまったものがないことに気づきました そこで、叩き台として、サイト管理人および数名のコミッタで開発している自作RDBMSである SamehadaDB が軌道に乗るまでの経験をベースに、自作RDBMSするための道筋をある程度整理して書き記してみました 各々の情報・情報源はあいかわらず多くが英語で記述されていますが、その点はご容赦下さい なお、サイトは技術的な解説を提供するのではなく、適切と思われる情報・情報源をポイントするようなサイトとなることを想定しています

  • ハッカーのおもちゃとしてのNostrのススメ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Nostrという、SNSのようなものはご存知でしょうか? ご存知でなければ、ぜひまず一度触ってみることをお勧めします。 割と普通にSNSっぽく使えます。 分散系SNSっぽいシステム Nostrは、分散系のSNSっぽいネットワークです。 図で表すとこんな感じ。普通に想像するWebサービスとは随分形が違うと思います。 各所のリレーサーバーに、ユーザーは投稿をばらまき、ユーザーがそれを見る形です。 分散の責任がユーザー(クライアント)側にあって、リレーサーバーが落ちたり消えたりしても影響が起きにくい仕組みです。 より詳しい説明は上記

    ハッカーのおもちゃとしてのNostrのススメ - Qiita
    kanbayashi
    kanbayashi 2024/01/03
    分散SNS, プロトコル
  • Lightning Memory-Mapped Database(LMDB)について調べてみた - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに これは データベース・システム系 Advent Calendar 2023 の12/23の記事である そして Nostr (2) Advent Calendar 2023 の12/2の記事である LMDBというDBMSについて調べてみた内容をつらつらと書く Discraimer 筆者はデータベースシステムの専門家ではないため、頓珍漢な記述をしている可能性あり。その点ご留意頂きたく。誤っている点があれば指摘頂ければ幸甚 一部、推測に基づいた内容あり。それらの箇所は推測に基づいている旨分かるように記述する (実装を確認するといった

    Lightning Memory-Mapped Database(LMDB)について調べてみた - Qiita
    kanbayashi
    kanbayashi 2023/12/12
    セルクマ
  • LevelDB入門 (基本編) - from scratch

    さて、今回は比較的新しいデータストアであるLevelDBについてまとめてみました。 LevelDBは1年ほど前からNode.js界隈ではブームが来ていて、理由がよくわかっていなかったんですが、まとめている内に分かるかなと思ってまとめました。今回はNode.js無関係でLevelDBの基礎的なことだけ調査した結果をまとめてみました。 Node.jsで使ってみる話は後に回します。 LevelDBとは? key-value型のデータストアの一つです。 Googleの研究者である、Jeff DeanとSanjey Ghemawatが開発し、2011年に公表されました。C++で書かれており、多くのプログラミング言語でbindingsが書かれています。もちろん、JavaScript/Node.jsでも書かれています。 LevelDBGoogle のBigTableをベースにしたアーキテクチャを持

    LevelDB入門 (基本編) - from scratch
    kanbayashi
    kanbayashi 2023/06/03
    ll
  • ChatGPTに匹敵する性能の日本語対応チャットAI「Vicuna-13B」のデータが公開され一般家庭のPC上で動作可能に

    Vicuna-13BはChatGPTの90%の性能を持つと評価されているチャットAIで、オープンソースなので誰でも利用できるのが特徴です。2023年4月3日にモデルのウェイトが公開され、誰でも手元のPCでチャットAIを動作させることが可能になったとのことで、早速使い勝手を試してみました。 GitHub - lm-sys/FastChat: The release repo for "Vicuna: An Open Chatbot Impressing GPT-4" https://github.com/lm-sys/FastChat/#vicuna-weights 2023年3月30日にはオンラインで動作を試せるデモ版が公開されていました。デモ版の様子は下記の記事で確認できます。 ChatGPTGoogleBardに匹敵する精度の日語対応チャットAI「Vicuna-13B」が公開され

    ChatGPTに匹敵する性能の日本語対応チャットAI「Vicuna-13B」のデータが公開され一般家庭のPC上で動作可能に