CLOVER🍀

That was when it all began.

TiDBでユーザーを作成する

これは、なにをしたくて書いたもの? これまでTiDBを使う時には、tiup playgroundで起動してそのままrootユーザー(しかもパスワードなし)で接続していたのですが、 通常のユーザーアカウントを作成する方法も押さえておいた方がよいかなと思いまして。 そ…

H2 Database(インメモリー)へいろいろな形態で接続する

これは、なにをしたくて書いたもの? 組み込み、インメモリーなデータベースとしてテストなどでよく使われるH2 Databaseですが、どういう利用形態があるかちゃんと見てきて いなかったので、少し見ておきたいなということで。 自分はインメモリーで使うこと…

TiDB(TiKV)のデータのリージョンごとの配置状況を確認してみる

これは、なにをしたくて書いたもの? TiDB(TiKV)のデータのリージョンごとの配置状況を確認する方法はあるのかな?ということで調べてみました。 調べる方法 いくつかありそうです。 1番簡単にわかりそうなのは、こちらかなと思います。指定したテーブルの…

Infinispan 15.0で使えるようになったベクトル検索をInfinispan Server × Hot Rod Clientで試す

これは、なにをしたくて書いたもの? Infinispan 15.0.0.Finalからベクトル検索ができるようになったので、試してみたいなということで。 Infinispan 15.0のベクトル検索 Infinispan 15.0のベクトル検索の情報は、ブログエントリーに出てきます。 まずはInfi…

JJUG CCC 2024 Springに参加してきました #jjug_ccc

なんの話? 6月16日に、野村コンファレンスプラザ新宿で開催されたJJUG CCC 2024 Springに参加してきました。 JJUG CCC 2024 Spring その記録と感想を少し書いておきます。 参加したセッション 11時から参加していました。 セッション一覧 タイムテーブル 参…

Rocky Linux 9.4でBPF Compiler Collection(BCC)のtcptopを使って転送状況を確認をしてみる

これは、なにをしたくて書いたもの? 前に、iftopを使ってネットワークの転送状況を確認してみました。 Ubuntu Linux 22.04 LTSでネットワークの転送状況を確認したい(iftop、tcpdump) - CLOVER 今回はBCCに含まれるtcptopを使ってみたいと思います。 BPF …

Ubuntu Linux 22.04 LTSでネットワークの転送状況を確認したい(iftop、tcpdump)

これは、なにをしたくて書いたもの? アプリケーションが通信相手の送信中または受信中のような時に、状況を確認する方法はないのかな?と思いまして。 スレッドダンプを取ってみた時にどうやら受信中のようだ、ということは推測できたりするのですが、実際…

WildFlyのloggingサブシステムの設定を行う

これは、なにをしたくて書いたもの? WildFlyのアプリケーションをデプロイしていて、そういえばログの設定をしたことがないなと思いまして。 全然やり方を把握していなかったので、メモしておくことにします。 対象のWildFlyは、32.0.1.Finalとします。 Wil…

Ubuntu Linux 22.04 LTSに、オープンソースの列指向データベースClickHouseをインストールする

これは、なにをしたくて書いたもの? ClickHouseに前々から少し興味があったので、まずはインストールをしてみようということで。 ClickHouse ClickHouseのWebサイトはこちら。 Fast Open-Source OLAP DBMS - ClickHouse ClickHouseは、OSSのOLAP(online an…

WildFlyのBOMを確認する

これは、なにをしたくて書いたもの? Jakarta EE PlatformおよびProfileとMicroProfileのBOMなどについて、少しまとめておきました。 Jakarta EE PlatformおよびProfileとMicroProfileのJARとBOMについて - CLOVER こういうのを書くと、実装側のBOMも知りた…

Jakarta EE PlatformおよびProfileとMicroProfileのJARとBOMについて

これは、なにをしたくて書いたもの? Jakarta EE PlatformおよびProfileおよびMicroProfileで使うAPIのJARやBOMについて、少しまとめておきたいと思いまして。 ここでは、Jakarta Servletといった個々の仕様の話よりも、Web Profileといったある程度の仕様を…

HTTPリクエスト/レスポンスをログ出力するLogbookをSpring Boot 3で試す

これは、なにをしたくて書いたもの? HTTPリクエスト/レスポンス(クライアント、サーバー)のログ出力をしてくれる、Logbookというライブラリーがあります。 1度試しておきたかったので、今回はSpring Bootで試してみることにしました。 Logbook Logbookの…

Apache LuceneでkNN検索とANN+HNSWを使い分ける(Codecを使ったHNSWのパラメーター設定付き)

これは、なにをしたくて書いたもの? 前にApache Luceneでベクトル検索(kNN検索)を試してみました。 Apache Luceneでベクトル検索(kNN検索)を試す - CLOVER この後でANNに関係するHNSWのパッケージやクラスがあるのを見つけたので、今回はこちらを扱って…

TiUP playgroundでクラスター内のコンポーネントのインスタンスを増減させてみる

これは、なにをしたくて書いたもの? TiDBのコマンドラインツールであるTiUPには簡単にローカルにTiDBの環境を作ることができる、playgroundというコマンドがあります。 このコマンドでもTiDBのクラスター内のコンポーネントを複数のインスタンスで構成でき…

WildFlyのプロビジョニングをWildFly Glow × WildFly Maven Pluginで試す

これは、なにをしたくて書いたもの? WildFly 32.0.0.Finalのリリース時に、WildFly Glowというものが1.0.Finalになっていたようなので試してみたいなと思いまして。 WildFlyのプロビジョニングが簡単になるようなので。 WildFly Glow WildFly Glowは、WildF…

JSSEでサポートしているSSL/TLSプロトコル、SSLSocketFactoryでサポートしている暗号スイートを確認する

これは、なにをしたくて書いたもの? 使用しているJava環境でサポートしているSSL/TLSプロトコルや、暗号スイートを確認したいなと思いまして。 特にこれを書こうと思ったきっかけはSSLSocketFactory#getSupportedCipherSuitesとSSLSocketFactory#getDefaul…

Infinispan 15.0でVirtual Threadsへの対応が入っていたという話

これは、なにをしたくて書いたもの? Infinispanのソースコードを眺めていたら、Virtual Threadsへの対応が入っている雰囲気を見つけたので少し試してみることにしました。 Infinispan 15.0のVirtual Threadsへの対応 今回の内容は、特にInfinispanのブログ…

ベクトル検索で使う類似度の比較方法について

これは、なにをしたくて書いたもの? ベクトルデータベースというかベクトル検索を扱うと、検索で使う類似度の比較方法の指定を求められます。 どういう時になにを選んだらいいのか全然わからないのですが、少しヒントになりそうな情報をまとめておこうかな…

Apache Lucene 9.0.0でRAMDirectoryが削除されていたという話(代わりにByteBuffersDirectoryを使う)

これは、なにをしたくて書いたもの? 前に、こういうエントリーを書きました。 Apache Luceneでベクトル検索(kNN検索)を試す - CLOVER 自分はApache Luceneで簡単なプログラムを書く時に、インデックスの保存先をインメモリーにすることが多いのですが、そ…

Apache Luceneでベクトル検索(kNN検索)を試す

これは、なにをしたくて書いたもの? ElasticsearchやApache Solrではベクトル検索ができるようです。となると、Apache Luceneにその基礎があるはずなので、ちょっと 見ておこうかなと思いまして。 今回はkNN検索を対象としているのですが、ANNに切り替わる…

TiDBのアーキテクチャーをざっくりと眺めてみる

これは、なにをしたくて書いたもの? この前、MySQL互換の分散データベースであるTiDBを少し触ってみました。 Ubuntu Linux 22.04 LTSに、MySQL互換の分散データベースTiDBをインストールして(ローカルでクラスターを立ち上げて)みる - CLOVER TiDBでHTAP…

MySQLをaptリポジトリーからインストールする時に、MySQL 8.0が選択されるように設定する

これは、なにをしたくて書いたもの? MySQLの次のLTSである、MySQL 8.4.0がリリースされました。 MySQL :: MySQL 8.4 Release Notes :: Changes in MySQL 8.4.0 (2024-04-30, LTS Release) ふだんの自分はMySQLをインストールする時はaptリポジトリーを使っ…

TiDBでHTAPを試してみる

これは、なにをしたくて書いたもの? 少し前に、TiDBのQuickStartを試してみました。 Ubuntu Linux 22.04 LTSに、MySQL互換の分散データベースTiDBをインストールして(ローカルでクラスターを立ち上げて)みる - CLOVER QuickStartはもうひとつあって、HTAP…

RESTEasyでCORSの設定をFilterで行う

これは、なにをしたくて書いたもの? そういえば、Jakarta EE(Java EE)でCORSの設定をしたことがないなと思いまして。 実装方法はいろいろあると思うのですが、すでに用意されているものとかないのかなと思って少し見ていたら、RESTEasyにあったので 軽く…

FastAPIとSentence Transformersを使って簡単なテキスト埋め込みAPIを作成する

これは、なにをしたくて書いたもの? テキスト埋め込みを行うにはSentence Transformersを使うのがいいのかなと思っているのですが、できれば単体で動作するサーバーとして 使いたいなと。 これをやろうとするとLocalAIを使うのが1番近い気がするのですが、…

OpenAIのJavaライブラリーからOpenAI API互換のサーバーへアクセスしてみる

これは、なにをしたくて書いたもの? これまでよくOpenAI API互換のサーバーにOpenAI Python APIライブラリーからアクセスして試していたのですが、1度Javaからも アクセスしてみようかなと思いまして。 アクセス先としては、llama-cpp-pythonを使うことにし…

WildFly Maven PluginでBootable JARを作成する

これは、なにをしたくて書いたもの? WildFly 32.0.0.Finalがリリースされました。 WildFly 32 is released! ちょっと気になるものとしてWildFly Glowというものがあるのですが。 その前に、WildFly Maven PluginでBootable JARが作れるようになったようなの…

Ubuntu Linux 22.04 LTSに、MySQL互換の分散データベースTiDBをインストールして(ローカルでクラスターを立ち上げて)みる

これは、なにをしたくて書いたもの? MySQL互換の分散データベースであるTiDBを少し試してみたいなと思いまして。 TiDB: The Advanced Distributed SQL Database 今回は、あまりなにも考えずにUbuntu Linux 22.04 LTSにインストールしてみます。 TiDB TiDBは…

QdrantのExampleから、「基本的なRAG(Basic RAG)」を試す

これは、なにをしたくて書いたもの? 今までQdrantのチュートリアルを試してきたのですが、今度はExampleを見てみようと思います。 Examples - Qdrant ただ、Exampleで見るのは「基本的なRAG(Basic RAG)」のみにしたいと思います。それから、Qdrant自体を…

Metaの「Llama 3」をOpenAI API互換のサーバーを持つllama-cpp-pythonとLocalAIで試す

これは、なにをしたくて書いたもの? MetaからLlama 3がリリースされました。 Meta、無料で商用可の新LLM「Llama 3」、ほぼすべてのクラウドでアクセス可能に - ITmedia NEWS このLlama 3をOpenAI API互換のサーバーを持つllama-cpp-pythonおよびLocalAIで動…