Fesen HttpClient

Fess 14では、Elasticsearch 7.x, 8.xとOpenSearch 1.xをサポートする予定なので、これらへのアクセスを吸収してくれるようなクライアントが必要だったので、Fesen HttpClientをリファクタリングして、使えるようにしました。FesenはもともとElasticsearch 7.10をフォークして、Fessで利用していたものだけど、FesenをElasticsearch 8対応するのがつらすぎるので、それは断念して、Fesenで利用していたHttpClientだけが生き残って、Elasticsearch/OpenSearch対応して使える状態になったみたいな感じです。Fesen HttpClientは現時点ではMaven Centralに置いていないのですが、Elasticsearch 8がリリースされたら、Fessでテストして、Maven Centralに置いておく予定です。まぁ、全部のAPIに対応しているわけではなく、Fessで利用しているものが使える感じなものです。FessはいろいろなAPIを呼んでいるので、だいたいのAPIは利用できると思います。

という感じで、Fesen HttpClientができたので、Fess 14のElasticsearch 8対応に向けての大物は処理できたはず…。

株式会社コードリブズの2期目の振り返り

2期目の振り返りを書こうと思いつつ、既に時間が経ってしまった…。昨年の10月が年度末で、昨年11月から3期目が始まっています。なので、年度末処理は既に完了しています。

2期目は1期目ほど、話すこともない感じではありますが、簡単に振り返っておくと、

まず、法人としてのやること的なことは、一年回せはイベント的なことはだいたい把握しているので、大きな問題もなく、税理士さんの指示に従って、処理とかすれば完了できました。反省があるとするなら、予算の立て方が甘かったので、年度末になって、いろいろと考えなきゃならないのでつらいな…というのを体感しました。なので、今期は予算周りを改善して進めてます。

仕事的なことは、前期と同様に地道にやっていった感じですが、それ以外では、2期目で新たなプロダクトを作ろう!という感じで進めて、周りの方にもいろいろと協力をしてもらいながら、Recotemというレコメンドサーバーのプロダクトを作ることができました。なので、一応は、計画していたことを達成はできたかなと。

という感じで、1期目ほど、大した話はないですが、今期はRecotemの普及にも力を入れて活動していこうと思います。

Fess 14に向けて

Elasticsearch 8のリリースも近づいているので、それに対応したFess 14をどうしようかと考え始めている。作業もあれこれと始めているのだけど、Elasticsearch 8になると、パスから_docが消えるので、影響が結構大きいなと考えている。さらに、これにまじめに対応しようとすると、Fesenをかなり修正しないといけないのもあり、ちょっとそこまで時間を使うことができないかなと…。とはいえ、Elasticsearch 8にも対応していかないといけないし、みたいな悩ましい状況です。

そこで、いろいろと考えたところの現状は、
・Elasticsearch 7.10からフォークしたFesenをメンテしていくのは工数的につらそう
・同じくElasticsearch 7.10からフォークしていたOpenSearchは結構頑張っていそう
・Fessとしては、Elasticsearch 7&8とOpenSearchのサポートをしていきたい
というのがあるので、方針としては
・Fess 14.xはElasticsearch 8.xに合わせてリリースしていく
・Fessの内部コードはFesenからOpenSearchに変更する
・Elasticsearch7&8, OpenSearchの差分はfesen-httpclientで吸収する
という感じでいこうと考えています。なので、今までどおり、Elasticsearchのリリースに合わせて、Fessもリリースはしていく予定で考えています。

そんな感じで、zip版でお試し実行用の組み込み版はOpenSearchに変わることになります。一応、githubの最新ソースコードはOpenSearchに変わっています。まぁ、この辺は見た目にはわからないことなので、普通に使っている分には気づくこともないことですが、今後は、OpenSearchとの連携とかも強化されていくはず…。