KAKEN OpenSearch API の使い方

科研費データベース(KAKEN)の情報をプログラムから取得する方法を解説します。 1. はじめに KAKENは、国立情報学研究所(NII)が提供する科学研究費助成事業データベースです。OpenSearch APIを利用することで、研究課題の情報をプログラムから取得できます。 2. 事前準備:アプリケーションIDの取得 KAKEN APIを利用するには、CiNiiでアプリケーションIDを取得する必要があります。 CiNii API利用登録にアクセス 必要事項を入力して登録申請 承認後、メールでApplication ID(appid)が届く 注意 : 登録から承認まで時間がかかる場合があります。 3. APIエンドポイント 研究課題をさがす h t t p s : / / k a k e n . n i i . a c . j p / o p e n s e a r c h / 研究者をさがす h t t p s : / / n r i d . n i i . a c . j p / o p e n s e a r c h / 4. 主要パラメータ(研究課題をさがす) パラメータ 説明 必須 例 appid アプリケーションID ○ 82RKpPlZiIjbqKwFDO3D qb 研究課題番号で検索 △ 19K20626 kw フリーワード検索 △ IIIF qa 研究課題名で検索 △ デジタルアーカイブ qg 研究者の姓名で検索 △ 中村覚 qm 研究者番号で検索 △ 80802743 format レスポンス形式 - xml(デフォルト: html5) rw 1ページの件数 - 20, 50, 100, 200, 500 lang 言語 - ja, en △: いずれか1つ以上が必要 ...

2026年2月5日 · 15 分 · Nakamura

Elasticsearch/OpenSearch クラスタ間のデータ移行ガイド

Amazon Elasticsearch Service から別の OpenSearch クラスタへデータを移行する方法を解説します。本記事では、Scroll API と Bulk API を使用したシンプルかつ確実な移行手法を紹介します。 背景 クラウドサービスの移行やコスト最適化のため、Elasticsearch/OpenSearch クラスタ間でデータを移行する必要が生じることがあります。今回は以下の環境間での移行を行いました。 移行元 : Amazon Elasticsearch Service (AWS) 移行先 : セルフホスト OpenSearch 移行の流れ 移行元・移行先のインデックス確認 マッピング情報の取得と調整 移行先にインデックスを作成 Scroll API + Bulk API でデータ移行 移行結果の確認 事前準備:インデックスの確認 まず、移行元と移行先のインデックス一覧を確認します。 # c # c u u 移 r 移 r 行 l 行 l 元 先 の - の - イ u イ u ン ン デ " デ " ッ u ッ u ク s ク s ス e ス e 一 r 一 r 覧 : 覧 : p p a a s s s s w w o o r r d d " " " " h h t t t t p p s s : : / / / / s d o e u s r t c - e c - l c u l s u t s e t r e / r _ / c _ a c t a / t i / n i d n i d c i e c s e ? s v ? & v s & = s i = n i d n e d x e " x " Step 1: マッピング情報の取得 移行元からマッピング情報を取得します。 ...

2025年11月28日 · 19 分 · Nakamura

Amazon OpenSearch ServiceでDisable autotuneを行う

Amazon OpenSearch Serviceの開発用のドメインにおいて、インスタンスタイプをt3.small.searchからt3.medium.searchに変更しようとしたところ、以下のメッセージが表示されました。 A u t o t u n e i s n o t s u p p o r t e d i n t 2 / t 3 i n s t a n c e t y p e s . D i s a b l e a u t o t u n e o r c h a n g e y o u r i n s t a n c e t y p e . UI上ではAutotuneに関する項目を見つけることができずに困っていたところ、以下のページにCLIを使う方法が記載されていました。 ...

2023年10月3日 · 1 分 · Nakamura

DjangoとAWS OpenSearchを接続する

概要 DjangoとAWS OpenSearchを接続する方法に関するメモです。以下の記事が参考になりました。 https://testdriven.io/blog/django-drf-elasticsearch/ ただし、上記の記事はElasticsearchを対象にした設定のため、OpenSearchに応じた変更が必要です。 変更点 以下のElasticsearch Setupの部分から、OpenSearchに応じた変更が必要でした。 https://testdriven.io/blog/django-drf-elasticsearch/#elasticsearch-setup 具体的には、以下の2つのライブラリが必要でした。 ( ( e e n n v v ) ) $ $ p p i i p p i i n n s s t t a a l l l l o d p j e a n n s g e o a - r o c p h e - n p s y e a r c h - d s l その後は、django_elasticsearch_dslとなっている箇所をdjango-opensearch-dslに、elasticsearch_dslをopensearchpyに書き換えることで、記事の通りに進めることができました。 ...

2023年6月19日 · 18 分 · Nakamura

OpenAPIとAWS CDKを用いてREST APIを作成する(Opensearch接続・カスタムドメイン)

概要 OpenAPIとAWS CDKを用いてREST APIを作成する機会がありましたので、その備忘録です。以下の記事がとても参考になりました。 https://zenn.dev/taroman_zenn/articles/91879cec40627c 今回作成したものは以下のリポジトリで公開しています。 https://github.com/nakamura196/CdkOpenapi Opensearchとの接続 以下のLambdaで実装しています。 https://github.com/nakamura196/CdkOpenapi/blob/main/lambda/search.ts Lambdaに環境変数を渡す必要があり、lib以下のtsファイルで以下のように記述しました。 c o n s t } ) s e r h e } ; e n u a n , a t n n v E E E E r r t d i L L L L c y i l r A A A A h : m e o S S S S F e r n T T T T n p : : m I I I I a e C C C C = t R " n _ _ _ _ h u h t H U P I n . n a : O S A N e j t n S E S D w o i d { T R S E i m l : N W X N n e e A O _ o ( . r p M R N d _ N " r E D A e _ O , o : : M j d D c E s i E e p p : F r J s r r u n S s o o p n a _ . c c r c m 1 e e e o t e 8 n s s c i , _ v s s e o X . . . s n " , E e e s ( . L n n . t . A v v e h / S . . n i l T E E v s a I L L . , m C A A E b _ S S L " d H T T A s a O I I S e / S C C T a s T _ _ I r e U P C c a S A _ h r E S I " c R S N , h " N W D . " A O E { t , M R X s E D _ " N ) A , M E " " " " , , " " , カスタムドメイン 以下のファイルを参考にしてください。間違いなどがあるかもしれませんが、カスタムドメインの登録からAPI Gatewayへの設定も行ってみました。 ...

2023年5月26日 · 2 分 · Nakamura

StrapiとAmazon OpenSearchを連携する

概要 StrapiとElasticsearchとの連携にあたり、以下の記事が参考になりました。 https://punits.dev/blog/integrating-elasticsearch-with-strapi/ ソースコードも公開されています。 https://github.com/geeky-biz/strapi-integrate-elasticsearch ここでは、上記の記事を参考にして、Amazon OpenSearchと連携するなど、一部カスタマイズした内容についてメモします。 カスタマイズしたソースコードは以下です。 https://github.com/nakamura196/strapi-integrate-opensearch 修正点 以下について、記事ではindexing_typeとなっていますが、indexing_request_typeとする必要がありました。 https://github.com/nakamura196/strapi-integrate-opensearch/blob/006c533d4d7882fc9779552db31a7b0e2ada5e57/elastic/cron-search-indexing.js#L16 またElasticsearchではなく、Amazon OpenSearchを使用するにあたり、以下のライブラリをインストールする必要があります。 n n p p m m i i n n s s t t a a l l l l @ @ o a p w e s n - s s e d a k r / c c h r - e p d r e o n j t e i c a t l / - o p p r e o n v s i e d a e r r c s h 認証の方法はいくつかあると思いますが、ここでは以下のように変更しました。 ...

2023年5月26日 · 1 分 · Nakamura

DrupalとAmazon OpenSearch Serviceを接続する

概要 DrupalとAmazon OpenSearch Serviceを接続する機会がありましたので、その備忘録です。以下の記事が参考になりました。 https://www.acquia.com/jp/blog/intergration-with-drupal-and-elasticsearch モジュールのインストール drupal/search_apiとdrupal/elasticsearch_connectorに加えて、nodespark/des-connectorをインストールする必要がありました。 (バージョンの指定方法など、改善の余地があるかもしれません。) c c c o o o m m m p p p o o o s s s e e e r r r r r r e e e q q q u u u i i i r r r e e e " ' " n d d o r r d u u e p p s a a p l l a / / r s e k e l / a a d r s e c t s h i - _ c c a s o p e n i a n : r e ^ c c 1 h t . _ o 2 c r 9 o : ' n ^ n 7 e . c x t - o d r e v ^ " 7 . 0 @ a l p h a " 続けて、以下で有効化します。 ...

2023年4月13日 · 4 分 · Nakamura