Enviar pesquisa
Carregar
Sc2009autumn s2robot
•
0 gostou
•
2,696 visualizações
Shinsuke Sugaya
Seguir
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 46
Baixar agora
Baixar para ler offline
Recomendados
DBFlute Mavenプラグインを用いてCRUD作成
DBFlute Mavenプラグインを用いてCRUD作成
Shinsuke Sugaya
LastaFluteに移行したFessとElasticsearch+ESFluteによるDBFlute環境
LastaFluteに移行したFessとElasticsearch+ESFluteによるDBFlute環境
Shinsuke Sugaya
Solrベースの全文検索サーバ Fess
Solrベースの全文検索サーバ Fess
Shinsuke Sugaya
DBFluteを用いて開発されている全文検索システムFess
DBFluteを用いて開発されている全文検索システムFess
Shinsuke Sugaya
ESFluteによるElasticsearchでのO/Rマッパーを用いた開発
ESFluteによるElasticsearchでのO/Rマッパーを用いた開発
Shinsuke Sugaya
Elasticsearchベースの全文検索システムFess
Elasticsearchベースの全文検索システムFess
Shinsuke Sugaya
オフィスに1台!全文検索Fess
オフィスに1台!全文検索Fess
Shinsuke Sugaya
Solr 4.0 の主な機能
Solr 4.0 の主な機能
Shinichiro Abe
Mais conteúdo relacionado
Mais procurados
Fess/Elasticsearchを使った業務で使える?全文検索への道
Fess/Elasticsearchを使った業務で使える?全文検索への道
Shinsuke Sugaya
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
Shinsuke Sugaya
Solr6 の紹介(第18回 Solr勉強会 資料) (2016年6月10日)
Solr6 の紹介(第18回 Solr勉強会 資料) (2016年6月10日)
Issei Nishigata
elasticsearchプラグイン入門
elasticsearchプラグイン入門
Shinsuke Sugaya
Terraform
Terraform
Shigeyuki Takeuchi
Step by stepで学ぶTerraformによる監視付きAWS構築
Step by stepで学ぶTerraformによる監視付きAWS構築
Yo Takezawa
LastaFluteでKotlinをはじめよう
LastaFluteでKotlinをはじめよう
Shinsuke Sugaya
solr勉強会資料
solr勉強会資料
Atsushi Takayasu
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
takanori suzuki
Elasticsearch Authプラグインでアクセスコントロール
Elasticsearch Authプラグインでアクセスコントロール
Shinsuke Sugaya
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
Shinsuke Sugaya
Elasticsearchプラグインの作り方
Elasticsearchプラグインの作り方
Shinsuke Sugaya
Mroongaを使ったときの MySQLの制限との戦い
Mroongaを使ったときの MySQLの制限との戦い
Naoya Murakami
OpenStack を NetApp Unified Driver と NFS Copy Offload を使って拡張する Vol.002
OpenStack を NetApp Unified Driver と NFS Copy Offload を使って拡張する Vol.002
Takeshi Kuramochi
12 cyberagent
12 cyberagent
cyberagent
DeclarativeSql
DeclarativeSql
Takaaki Suzuki
Apache Solr 入門
Apache Solr 入門
順平 西本
類義語検索と類義語ハイライト
類義語検索と類義語ハイライト
Shinichiro Abe
JavaScriptから利用するFirebase
JavaScriptから利用するFirebase
Takuji Shimokawa
MongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキスト
Akihiro Kuwano
Mais procurados
(20)
Fess/Elasticsearchを使った業務で使える?全文検索への道
Fess/Elasticsearchを使った業務で使える?全文検索への道
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
Solr6 の紹介(第18回 Solr勉強会 資料) (2016年6月10日)
Solr6 の紹介(第18回 Solr勉強会 資料) (2016年6月10日)
elasticsearchプラグイン入門
elasticsearchプラグイン入門
Terraform
Terraform
Step by stepで学ぶTerraformによる監視付きAWS構築
Step by stepで学ぶTerraformによる監視付きAWS構築
LastaFluteでKotlinをはじめよう
LastaFluteでKotlinをはじめよう
solr勉強会資料
solr勉強会資料
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
Elasticsearch Authプラグインでアクセスコントロール
Elasticsearch Authプラグインでアクセスコントロール
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
Elasticsearchプラグインの作り方
Elasticsearchプラグインの作り方
Mroongaを使ったときの MySQLの制限との戦い
Mroongaを使ったときの MySQLの制限との戦い
OpenStack を NetApp Unified Driver と NFS Copy Offload を使って拡張する Vol.002
OpenStack を NetApp Unified Driver と NFS Copy Offload を使って拡張する Vol.002
12 cyberagent
12 cyberagent
DeclarativeSql
DeclarativeSql
Apache Solr 入門
Apache Solr 入門
類義語検索と類義語ハイライト
類義語検索と類義語ハイライト
JavaScriptから利用するFirebase
JavaScriptから利用するFirebase
MongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキスト
Semelhante a Sc2009autumn s2robot
Seasarプロジェクト徹底攻略
Seasarプロジェクト徹底攻略
takezoe
Apache Torqueについて
Apache Torqueについて
tako pons
Data Factory V2 新機能徹底活用入門
Data Factory V2 新機能徹底活用入門
Keisuke Fujikawa
SAStruts Seminar In Tripodworks
SAStruts Seminar In Tripodworks
tripodworks
Develop Web Application with Node.js + Express
Develop Web Application with Node.js + Express
Akinari Tsugo
160705-03 RTミドルウエア講習会・名城大
160705-03 RTミドルウエア講習会・名城大
openrtm
Springでdao 20070413
Springでdao 20070413
Funato Takashi
G0042 h
G0042 h
silicone69
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
Masahiro Nagano
SDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 Whire
Akio Katayama
分散環境におけるDocker とオーケストレーション
分散環境におけるDocker とオーケストレーション
Masahito Zembutsu
Operator reading and writing ( Operator SDK 編 )
Operator reading and writing ( Operator SDK 編 )
ロフト くん
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
Naoki (Neo) SATO
シラサギハンズオン 東京
シラサギハンズオン 東京
Yu Ito
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
Akihiro Kuwano
FluentdとRedshiftの素敵な関係
FluentdとRedshiftの素敵な関係
moai kids
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おう
DevTakas
Cloudstack user group meeting in osaka
Cloudstack user group meeting in osaka
Naotaka Jay HOTTA
Clrh 110716 wcfwf
Clrh 110716 wcfwf
Tomoyuki Obi
Redmineosaka 20 talk_crosspoints
Redmineosaka 20 talk_crosspoints
Shinji Tamura
Semelhante a Sc2009autumn s2robot
(20)
Seasarプロジェクト徹底攻略
Seasarプロジェクト徹底攻略
Apache Torqueについて
Apache Torqueについて
Data Factory V2 新機能徹底活用入門
Data Factory V2 新機能徹底活用入門
SAStruts Seminar In Tripodworks
SAStruts Seminar In Tripodworks
Develop Web Application with Node.js + Express
Develop Web Application with Node.js + Express
160705-03 RTミドルウエア講習会・名城大
160705-03 RTミドルウエア講習会・名城大
Springでdao 20070413
Springでdao 20070413
G0042 h
G0042 h
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
SDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 Whire
分散環境におけるDocker とオーケストレーション
分散環境におけるDocker とオーケストレーション
Operator reading and writing ( Operator SDK 編 )
Operator reading and writing ( Operator SDK 編 )
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
シラサギハンズオン 東京
シラサギハンズオン 東京
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
FluentdとRedshiftの素敵な関係
FluentdとRedshiftの素敵な関係
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おう
Cloudstack user group meeting in osaka
Cloudstack user group meeting in osaka
Clrh 110716 wcfwf
Clrh 110716 wcfwf
Redmineosaka 20 talk_crosspoints
Redmineosaka 20 talk_crosspoints
Mais de Shinsuke Sugaya
社内ドキュメント検索システム構築のノウハウ
社内ドキュメント検索システム構築のノウハウ
Shinsuke Sugaya
PredictionIOでSparkMLを使った開発方法
PredictionIOでSparkMLを使った開発方法
Shinsuke Sugaya
PredictionIOのPython対応計画
PredictionIOのPython対応計画
Shinsuke Sugaya
PredictionIO構築入門
PredictionIO構築入門
Shinsuke Sugaya
Elasticsearchで作る形態素解析サーバ
Elasticsearchで作る形態素解析サーバ
Shinsuke Sugaya
ElasticsearchとTasteプラグインで作るレコメンドシステム
ElasticsearchとTasteプラグインで作るレコメンドシステム
Shinsuke Sugaya
Mais de Shinsuke Sugaya
(6)
社内ドキュメント検索システム構築のノウハウ
社内ドキュメント検索システム構築のノウハウ
PredictionIOでSparkMLを使った開発方法
PredictionIOでSparkMLを使った開発方法
PredictionIOのPython対応計画
PredictionIOのPython対応計画
PredictionIO構築入門
PredictionIO構築入門
Elasticsearchで作る形態素解析サーバ
Elasticsearchで作る形態素解析サーバ
ElasticsearchとTasteプラグインで作るレコメンドシステム
ElasticsearchとTasteプラグインで作るレコメンドシステム
Último
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
Ayachika Kitazaki
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
arts yokohama
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
Shumpei Kishi
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
Sadao Tokuyama
2024 04 minnanoito
2024 04 minnanoito
arts yokohama
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
ssuser370dd7
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
Tetsuya Nihonmatsu
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
ssuser539845
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
Industrial Technology Research Institute (ITRI)(工業技術研究院, 工研院)
2024 03 CTEA
2024 03 CTEA
arts yokohama
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
Matsushita Laboratory
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
arts yokohama
Último
(12)
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
2024 04 minnanoito
2024 04 minnanoito
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
2024 03 CTEA
2024 03 CTEA
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
Sc2009autumn s2robot
1.
Seasar Conference
2009 Autumn S2Robotで泳ぎませんか? ~S2RobotとFessのご紹介~ 株式会社エヌツーエスエム 菅谷信介 Copyright© 2002-2008 N2SM, Inc. All Rights Reserved
2.
Seasar Conference 2009
Autumn 自己紹介 名前: 菅谷信介 所属: N2SM, Inc. オープンソース活動: – Apache Portals (Jetspeed, Portals Bridges) コミッタ – Seasarプロジェクトコミッタ(S2Container, Teeda, SAStruts, DBFlute, S2Portlet, S2Robot..) – Portal Application Laboratory(PAL)プロジェクト運 営 – Fessプロジェクト運営 などなど・・・ ブログ: http://d.hatena.ne.jp/shinsuke_sugaya/
3.
Seasar Conference 2009
Autumn Agenda S2Robot の概要 S2Robot の使い方 Fess の概要 Fess の特徴 Fess の使い方
4.
Seasar Conference 2009
Autumn S2Robot
5.
Seasar Conference 2009
Autumn S2Robotとは Seasar2ベースのクローラフレームワーク 「クローラ (Crawler) とは、ウェブ上の文書や画像などを 周期的に取得し、自動的にデータベース化するプログラム である。「スパイダー」や「ロボット」などとも呼ばれ る。」 出典: フリー百科事典『ウィキペディア(Wikipedia)』 S2Robot インターネット コンポーネント化され、機能を柔軟にカスタマイ ズ可能
6.
Seasar Conference 2009
Autumn クローラの利用場面 全文検索のインデックス作成 → 一番多いパターン(だと思う) サイトの商品情報などを抜き出し → ページ上の特定のデータを抜き出してDBに保存するなど SEOチェックツール → リンク切れとか、要素数を数えるなど クローラを開発するというニーズは意外と多い HTTP通信やページ解析が面倒だから? →実際に面倒でした…
7.
Seasar Conference 2009
Autumn S2Robotの特徴 Webおよびローカルファイルシステムを対象 マルチスレッドクローリング 巡回する深さ、コンテンツ取得数を指定可能 巡回するコンテンツをURLでフィルタリング 柔軟に拡張可能なコンテンツ処理ルール 取得したコンテンツを指定した形式でDBに格納 画像や音声など様々なファイルから文字列抽出 robots.txt に従うクローリング
8.
Seasar Conference 2009
Autumn S2Robotのセットアップ S2プロジェクトなら dicon に追加 <components> : <include path="s2robot.dicon"/> : </components> あとは、S2Robot を DI すれば利用可能 備考: DBを利用する場合は s2robot_db.dicon を利用 簡単に使えます!
9.
Seasar Conference 2009
Autumn S2Robotの使い方(基本編) S2Robot のインスタンスを取得して実行 // container から取得する場合 S2Robot s2Robot = (S2Robot) container .getComponent(S2Robot.class); // URL の追加 (この URL を起点にして巡回します) s2Robot.addUrl(url); // 巡回する深さを指定 s2Robot.setMaxDepth(depth); // クロールの実行 (実行時のセッション ID が返ります) String sessionId = s2Robot.execute(); カレントディレクトリに取得したものを保存
10.
Seasar Conference 2009
Autumn S2Robotの処理フロー 1 execute() S2Robot UrlFilter Web 3 Web Web FS 2 start() Check the URL 5 FS FS S2RobotThread 4 S2RobotClient Get the Content S2RobotThread 6 (Web,FS) S2RobotThread ResponseData 9 process() 7 Rule 8 RuleManager ResponseProcessor 10ResponseData 12 store() 11 AccessResult ResultData Transformer S2Robot DB
11.
Seasar Conference 2009
Autumn S2Robotの使い方(応用編 ~ その1) スレッド数の変更 // デフォルトのスレッド数: 10 s2Robot. setNumOfThread(20); 巡回して取得するファイル数 // デフォルトの巡回取得数: 0 (無制限) s2Robot. setMaxAccessCount(10000); URLキューが空のときに待つ回数 // デフォルトの待つ回数: 20 s2Robot. setMaxThreadCheckCount(30);
12.
Seasar Conference 2009
Autumn S2Robotの使い方(応用編 ~ その2) バックグラウンドで実行 // デフォルト: false (execute() した後に待つ) s2Robot. setBackground(true); バックグラウンド実行後、終了を待つ // デフォルトの待ち時間 (ms): 0 (無制限) s2Robot. awaitTermination(60000); セッションIDの指定 (再実行するときなどに利用) // デフォルトのセッションID: yyyyMMddHHmmssSSS s2Robot. setSessionId(“200909120123456”);
13.
Seasar Conference 2009
Autumn URLフィルタ アクセスするURLを制限することが可能 S2Robot 内の UrlFilter がアクセス先の URL を制御 アクセスできる URL を指定: addIncludeUrl() // 例: http://www.n2sm.net/ 以下だけにする s2Robot. addIncludeFilter(“http://www.n2sm.net/.*”); アクセスしない URL を指定: addExcludeUrl() // 例: jpg ファイルをアクセスしない s2Robot. addExcludeFilter(“.*.jpg”); デフォルトの実装 UrlFilterImpl を dicon で差し替えも可能
14.
Seasar Conference 2009
Autumn S2RobotClient 指定されたコンテンツの取得 CommonsHttpClient: http/https からコンテンツを取得 FileSystemClient: ローカルファイルシステムから取 得 S2RobotClientFactoryがS2RobotClientを管理 // url を元に適切なクライアントを判別 (http:,https:,file:) S2RobotClient client = clientFactory.getClient(url); clientFactory は S2Container から取得可能 client.doGet(uri) でコンテンツを ResponseData で返 す 拡張は S2RobotClient を実装して s2robot_client.dicon
15.
Seasar Conference 2009
Autumn RuleManager & Rule (その1) RuleManager: 取得したコンテンツの処理ルールを 決定 Rule: コンテンツの処理内容を定義 RuleManager から Rule を取得 // responseData を元に適切なルールを判別 Rule rule = s2Robot. getRuleManager() .ruleManager.getRule(responseData); RuleManagerは S2Container からは取得できない (prototypeでS2Robotにセットされるため) 拡張は s2robot_rule.dicon で定義することが可能
16.
Seasar Conference 2009
Autumn RuleManager & Rule (その2) addRule で複数ルールを追加することが可能 <components> <include path="s2robot_transformer.dicon"/> <component name="ruleManager" class="org.seasar.robot.rule.impl.RuleManagerImpl" instance="prototype"> <initMethod name="addRule"> <arg>fileRule</arg> </initMethod> </component> <component name="fileRule" class="org.seasar.robot.rule.impl.RegexRule"> <property name="defaultRule">true</property> <property name="responseProcessor"> <component class="org.seasar.robot.processor.impl.DefaultResponseProcessor"> <property name="transformer">fileTransformer</property> </component> </property> </component> </components>;
17.
Seasar Conference 2009
Autumn ResponseProcessor ResponseDataを処理する DefaultResponseProcessor: 保持するTransformerを実 行 // RuleからResponseProcessorを取得 ResponseProcessor processor = rule.getResponseProcessor(); processor.process(responseData); Transfomerは s2robot_rule.dicon で指定される NullResponseProcessor: 何もしない
18.
Seasar Conference 2009
Autumn Transfomer (その1) ResponseDataをResuleDataに変換する ResultDataは取得データを加工したものを保持 例: 画像のメタデータから文字列を取得して保存など s2robot_transfomer_basic.dicon に基本的なものを定 義 // ResponseDataをResuleDataに変換 ResultData resultData = transformer.transform(responseData); 保存データを復元も可能 Transfomer transfomer = container .getComponent(“fileTransfomer”); // getData() で返されるものは各Transformerで定義 Object obj = transformer. getData(accessResultData);
19.
Seasar Conference 2009
Autumn Transfomer (その2) BinaryTransformer: バイナリデータをResultDataに格納 FileTransformer: カレントディレクトリにファイルとして保存 し、ResultDataにパスを格納 HtmlTransformer: HTMLのバイナリデータと次のリンク先をResultDataに格納 XpathTransformer: 上記の拡張。指定したノードデータをXML形式で保存 TextTransformer: 文字列をResultDataに格納。Extractor機能を利用して様々な 形式に対応。
20.
Seasar Conference 2009
Autumn Extractor 様々なファイルから文字列を取得 対応フォーマットはMS Office, pdf, zip など多数 ExtractorFactoryがExtractorを管理 Extractor extractor = extractorFactory.getExtractor(mimeType); ExtractData extractData = extractor.getText(inputStream); String content = extractData.getContent(); // content に inputStream のデータ本体の文字列だけ入る for (String key : extractData.getKeySet()) { String[] values = extractData.getValues(key); // values にはメタ情報が入る } extractorFactoryはS2Containerから取得可能 Extractorの単体利用も可能 (s2robot_extractor.dicon)
21.
Seasar Conference 2009
Autumn AccessResult & AccessResultData データ格納用エンティティ AccessResult: アクセス結果のパラメータ AccessResultData: 加工後のコンテンツデータ ResponseDataとResultDataからAccessResultと AccessResultData を生成 DataService インターフェース経由でアクセス 現在、オンメモリまたはDBに保存することが可能
22.
Seasar Conference 2009
Autumn DataService AccessResultとAccessResultDataの取得や保存など S2Containerから取得することが可能 AccessResultの取得 // セッションIDとURLをキーにして取得 AccessResult accressResult = dataService .getAccessResult(sessionId, url); あるセッションIDのAccessResult群を取得 dataService.iterate(sessionId, new AccessResultCallback() { public void iterate(AccessResult accessResult) { // accessResult の処理… } });
23.
Seasar Conference 2009
Autumn S2Robotの苦労話 (おまけ?) マルチスレッドクローリング → 同期を最低限にしたり、結構がんばりが必要 壊れた HTML → nekohtml が結構吸収してくれるけど → 大手サイトのページでもおかしいものがあったりする… コンテンツ取得数の指定 → マルチスレッドなので上限で止めるのが大変… S2Robotのスレッドセーフ → 複数のS2Robotのインスタンスを同時実行 H2Databaseのパラメータ →奥深い・・・(よくわからん)
24.
Seasar Conference 2009
Autumn S2Robotの今後 データベース周りの整理 metaタグの robots に従う 壊れたURL対応(不正な文字とかを除外するフィ ルタ) サイトマップを読む OpenOffice 系ファイル対応
25.
Seasar Conference 2009
Autumn Fess
26.
Seasar Conference 2009
Autumn Fessとは Javaフレンドリーな全文検索システム 「全文検索(ぜんぶんけんさく、Full text search)とは、コ ンピュータにおいて、複数の文書(ファイル)から特定 の文字列を検索すること。」 出典: フリー百科事典 『ウィキペディア(Wikipedia)』 ファイルシステム Fessサーバ インターネット Apacheライセンスのオープンソースプロダクト ちなみに Full tExt Search System → Fess
27.
Seasar Conference 2009
Autumn 世の中の検索システム Namazu, Hyper Estraier, Senna, Rast, Nutch, Google Mini, FAST ESP, ConceptBase... Namazu →スケールしない Google Mini →ブラックボックス →入れ替え作業が発生する
28.
Seasar Conference 2009
Autumn Fessの特徴 (その1) Java (Seasar2) ベースの検索システム DBFlute S2Chronos S2Container SAStruts S2Robot 用途に応じて柔軟に対応可能な設計
29.
Seasar Conference 2009
Autumn Fessの構成図 標準でオールインワンで提供 Tomcat の起動で利用可能! fess.war solr.war S2Robot S2Chronos SAStruts DBFlute H2Database Solr Seasar2 Tomcat
30.
Seasar Conference 2009
Autumn Fessの特徴 (その2) ~ S2Robotなど S2Robot で Web とファイルシステムをクロー ル 様々なファイルフォーマットをサポート →テキスト(HTML,XML含む)、MS Office関 連、PDF、zipなどの圧縮ファイル、画像ファイ ル、音楽ファイル ブラウザ上でクロール対象設定 検索結果のパス変換 (ローカルパスの変換と か) クロール情報のサマリー表示
31.
Seasar Conference 2009
Autumn Fessの特徴 (その3) ~ Apache Solr Luceneベースのオープンソース検索サーバー XML/HTTP や JSON の API Fess のUI から SolrJ で接続 ファセット検索 検索結果の強調表示 SHOOTIで約2億のWebページをインデックス Fess ではSolrサーバーをグループ化して状態管理 (ハイエンドユースを視野に入れた設計)
32.
Seasar Conference 2009
Autumn Solrサーバ構成例1 検索サーバ・更新サーバ交換方式 検索 Solr Group 1 Fess 更新 Solr Group 2
33.
Seasar Conference 2009
Autumn Solrサーバ構成例2 レプリケーション方式 更新 Solr Group 1 インデックスコピー Fess 検索 Solr Group 2
34.
Seasar Conference 2009
Autumn Solrサーバ構成例3 分散クロール方式 更新 Solr Group 1 インデックスコピー Fess 検索 Solr Group 2 Fess DB
35.
Seasar Conference 2009
Autumn Fessの特徴 (その4) ~ mobylet 携帯向けアプリ構築のオープンソースフレーム ワーク → 3キャリアの絵文字に対応 → 3キャリアの絵文字入りメール/添付メール/デコメールの 送信に対応 → 画像を動的にリサイズ表示 → 端末プロファイル情報などを取得可能 → GPS/GoogleMapインターフェースを提供 Fessでは各端末に最適な表示を実現
36.
Seasar Conference 2009
Autumn Fess のUI (検索結果) 検索語を入力
37.
Seasar Conference 2009
Autumn Fessの管理UI (クローラ設定) 管理者でログイン クロール時刻、インデックス操作、モバイル変換 を設定
38.
Seasar Conference 2009
Autumn Fessの管理UI (ウェブクロールの設定) クロールするウェブ情報の設定管理 対象URLとフィルタ 各種パラメータ ユーザーエージェント名 ブラウザタイプ
39.
Seasar Conference 2009
Autumn Fessの管理UI (ファイルシステムクロールの設定) クロールするファイルシステム情報の設定管理 対象パスとフィルタ 各種パラメータ ブラウザタイプ
40.
Seasar Conference 2009
Autumn Fessの管理UI (パスマッピング設定) 検索結果のリンクを書き換える クロールした結果がファイルシステムの場合にブラウザか らアクセスできるように書き換えるなどで利用
41.
Seasar Conference 2009
Autumn Fessの管理UI (ブラウザタイプ設定) 検索結果表示時にブラウザの種類で表示を切り替 え モバイルでアクセスした場合はモバイルページに 移動
42.
Seasar Conference 2009
Autumn Fessの管理UI (Solr設定) Solrの状態と設定管理 グループ化された Solr に対して、コミット、最適 化、削除を実行可能
43.
Seasar Conference 2009
Autumn Fessの管理UI (セッション情報) クロール結果の情報表示 クロール時間 インデックス数
44.
Seasar Conference 2009
Autumn Fess の情報 プロジェクトサイト: http://fess.sourceforge.jp/ja/ Fess Server 1.0.0 が利用可能 要望などあればお知らせください
45.
Seasar Conference 2009
Autumn Fess の今後 認証サイトへのアクセス ログファイルのダウンロード リクエストヘッダーの付加 重複ドメインの除外 ロールによる検索結果の出しわけ ラベル付け Solr のアップグレード
46.
Seasar Conference 2009
Autumn ありがとうございました
Baixar agora