2017.12.15 Friday
スポンサーサイト
一定期間更新がないため広告を表示しています
| スポンサードリンク | - | | - | - |
関口宏司のLuceneブログOSS検索ライブラリのLuceneおよびそのサブプロジェクト(Solr/Tika/Mahoutなど)について
2011.03.18 Friday
GC改善に役立つ新しいJVMパラメータ
GC問題改善に役立つJDK 1.6.0_24の新しいJVMパラメータに関するメールがSolrのメーリングリストに投稿されたので紹介しよう:
Helpful new JVM parameters アプリケーションの規模 1300万件レコード、非分散検索、相当数のstoredフィールド 64GBのハードウェアメモリに22GBのヒープ領域、1.2GBのnewSize/maxNewSize、CMS/ParNew 利用しているSolrの機能 少なくとも1ダース以上のフィールドに対するソートと20〜30フィールドに対するファセット 遭遇した問題 プロモーションの失敗によるフルGCの頻発。大きなオブジェクトが生成され、OLD領域をフラグメントさせたようである。 問題の改善に役立った新JVMパラメータ OLD領域にプロモートされるオブジェクトの数を大幅に削減し、フラグメントとCMSの回数と時間を減少させたパラメータ
64ビットJVMにおける圧縮ポインタを利用し、new GC (ParNew)時間を削減したパラメータ
CMS GCが発動されるtenured領域の占有率。ドキュメント上は68%とあるが、われわれの見立てだと90%に近い感覚があり、これでは遅すぎる
メジャーGCのRemarkフェイズをマルチスレッドで実行
2011.01.30 Sunday
Lucene/SolrをEclipseのプロジェクトとしてオープンする(4.0)
Lucene/Solr 4.0以降をEclipseやIntelliJ IDEAのプロジェクトとしてオープンするには、次のようにする:
# Lucene/Solrのダウンロード $ svn co http://svn.apache.org/repos/asf/lucene/dev/trunk # Eclipseの環境をセットアップ $ cd trunk $ ant eclipse # または、IntelliJ IDEAの環境をセットアップ $ cd trunk $ ant idea 2010.12.24 Friday
(メモ) Subversion: mergeを使った変更の取り消し
Solrの検索結果クラスタリングの分散検索対応を担当している:
https://issues.apache.org/jira/browse/SOLR-2282 https://issues.apache.org/jira/browse/SOLR-2296 これで現在はまっている。ローカルでは再現しないエラーが、hudson上のnightlyビルドで起きている。とりあえず、迷惑をかけられないので、SOLR-2296を一時的にrevertすることにした。これはそのときのオペレーションメモ: [koji@MacBook COMMIT-2296]$ svn merge -r 1052416:1052415 . --- Reverse-merging r1052416 into 'solr/contrib': A solr/contrib/clustering/lib/carrot2-core-3.4.0.jar D solr/contrib/clustering/lib/carrot2-core-3.4.2.jar U solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/DistributedClusteringComponentTest.java U solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/carrot2/LuceneLanguageModelFactory.java --- Reverse-merging r1052416 into 'solr/CHANGES.txt': U solr/CHANGES.txt [koji@MacBook COMMIT-2296]$ svn commit -m "SOLR-2296: still failing on hudson - reverted" Sending solr/CHANGES.txt Adding (bin) solr/contrib/clustering/lib/carrot2-core-3.4.0.jar Deleting solr/contrib/clustering/lib/carrot2-core-3.4.2.jar Sending solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/carrot2/LuceneLanguageModelFactory.java Sending solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/DistributedClusteringComponentTest.java Transmitting file data ... Committed revision 1052436. 取り消したい前回のコミットリビジョンと、その一つ前のリビジョンをsvn mergeコマンドに指定している。このようにコミットを1つにまとめておくと、取り消すのも簡単である。 2010.05.31 Monday
(メモ)Subversionブランチの一部をマージ
今回のSolr 1.4.1リリースで、以下のファイルディスクリプタリークの修正をbranch-1.5-devからsvn mergeすることで入れた。あまりやらない操作なので、のちのちのためにメモを残しておく。
# 1. branch-1.4をチェックアウト $ mkdir work $ cd work $ svn co https://svn.apache.org/repos/asf/lucene/solr/branches/branch-1.4 # 2. (MoreLikeThisHandler.javaを例にとる)ディレクトリを移動して変更履歴をチェック $ cd src/java/org/apache/solr/handler $ svn log MoreLikeThisHandler.java ------------------------------------------------------------------------ r829938 | gsingers | 2009-10-27 05:24:11 +0900 (火, 27 10 2009) | 1 line Starting Solr 1.4 branch. ------------------------------------------------------------------------ r801768 | yonik | 2009-08-07 03:47:16 +0900 (金, 07 8 2009) | 1 line SOLR-1344: MoreLikeThis handler can't handle numeric id : # 3. branch-1.5-devの方もチェック $ svn log https://svn.apache.org/repos/asf/lucene/solr/branches/branch-1.5-dev/src/java/org/apache/solr/handler/MoreLikeThisHandler.java ------------------------------------------------------------------------ r926581 | yonik | 2010-03-23 23:10:49 +0900 (火, 23 3 2010) | 1 line moving to merged lusolr trunk ------------------------------------------------------------------------ r906553 | markrmiller | 2010-02-05 01:26:38 +0900 (金, 05 2 2010) | 1 line SOLR-1748, SOLR-1747, SOLR-1746, SOLR-1745, SOLR-1744: Streams and Readers retrieved from ContentStreams are not closed in various places, resulting in file descriptor leaks. ------------------------------------------------------------------------ r898152 | ryan | 2010-01-12 11:19:56 +0900 (火, 12 1 2010) | 1 line SOLR-1602 -- step 1. Adding new 'response' package and refactoring all response things to this package. NOTE, this will break back-compatibility depricated versions of the moved 1.4 files are added back. ------------------------------------------------------------------------ r801768 | yonik | 2009-08-07 03:47:16 +0900 (金, 07 8 2009) | 1 line SOLR-1344: MoreLikeThis handler can't handle numeric id : # 4. 上記2と3の変更履歴を比べると、r801768までが同じでbranch-1.4はそれ以降ソースに変更がなく、 # branch-1.5-devはr898152でrequestパッケージにあったMoreLikeThisHandler.javaファイルがresponse # パッケージが新設されてそちらに移動し、その後r906553で今回の目的の変更があったことがわかる。 # そこで、(パッケージの移動は避けなければいけないので)svn diffでr906553でのMoreLikeThisHandler.java # ファイルへの変更箇所を確認する $ svn diff -r906552:906553 https://svn.apache.org/repos/asf/lucene/solr/branches/branch-1.5-dev/src/java/org/apache/solr/handler/MoreLikeThisHandler.java # 5. OKならsvn mergeでマージ(このとき、手順2でMoreLikeThisHandler.javaのあるディレクトリに # 移動済みのこと)。上記4.のdiffをmergeに変えればよい。 $ svn merge -r906552:906553 https://svn.apache.org/repos/asf/lucene/solr/branches/branch-1.5-dev/src/java/org/apache/solr/handler/MoreLikeThisHandler.java # 6. 以降、個別に必要なだけsvn mergeし、CHANGES.txtは手動で直し、ant testしてOKを確認してsvn commit 2010.04.13 Tuesday
Lucene+SolrをEclipseで開いたときにエラーになるときの対処法
solr/src/test/org/apache/solr/core/TestConfig.javaがgetTextContent()でエラーになるときは、プロジェクトのBuild PathのLibrariesからlucene/contrib/ant/lib/Tidy.jarを削除する。Tidy.jarにはorg.w3c.dom.*のクラスが含まれており、これが悪さをしてしまう。
ネタ元: http://n3.nabble.com/Some-help-for-folks-trying-to-get-new-Solr-Lucene-up-in-Eclipse-td698753.html 2009.05.31 Sunday
Git at Apache
今発売中のWEB+DB PRESS Vol.50にも掲載されているgitについて。ApacheプロジェクトはSubversionを使っているが、そのgitミラーが存在する:
http://git.apache.org/ 使い方はこちら: http://wiki.apache.org/general/GitAtApache 2009.05.03 Sunday
パッケージごと単体テストをする(2.9)
Luceneの単体テストは、Luceneを展開したディレクトリで次のように実行する:
$ ant test これだとLuceneの全単体テストが実行されてしまうので、次のようにテストケース名を指定する方法がある: $ ant test -Dtestcase=テストケース名 しかしこの方法だと指定した単体テストが1つしか実行できないので、これはこれで不便であった。 LUCENE-1617の改善により、単体テストを実行するパッケージが指定できるようになった。たとえば、org.apache.lucene.searchパッケージをテストするには、次のように指定する: $ ant test -Dtestpackage=search こうすると、"search"をパッケージ名に含むパッケージ以下の全単体テストを実行するようになる。この指定方法では、org.apache.lucene.search.*の単体テストに加え、search以下のfunctionやpayloadsやspansパッケージも単体テストが実行されるようになる。search以下のこれらのパッケージを含めたくないときは、testpackageの代わりにtestpackagerootというプロパティを使い、次のように指定すればよい: $ ant test -Dtestpackageroot=search 2008.11.13 Thursday
過去バージョンの単体テストを実行するAntターゲット(2.9)
現在のLucene trunkではLucene 2.9の開発が行われているが、「過去バージョンの単体テスト」を実行するAntターゲット"test-tag"が追加された。
次のように実行すると、現在のtrunkのディレクトリの下にtags/lucene_2_4_0/というディレクトリが作成されてそこにLucene 2.4の単体テストコードがダウンロードされ、Lucene 2.9のライブラリを使ってLucene 2.4.0のテストが実行される:
|
+ Solrによるブログ内検索
+ PROFILE
+ LINKS
+ Lucene&Solrデモ
+ ThinkIT記事
+ RECOMMEND
+ RECOMMEND
Lucene in Action (JUGEMレビュー »)
Erik Hatcher,Otis Gospodnetic,Mike McCandless FastVectorHighlighterについて解説記事を寄稿しました。
+ RECOMMEND
+ SELECTED ENTRIES
+ RECENT COMMENTS
+ RECENT TRACKBACK
+ CATEGORIES
+ ARCHIVES
+ MOBILE
+ SPONSORED LINKS
|
(C) 2024 ブログ JUGEM Some Rights Reserved.
|
PAGE TOP |