Archive

Archive for the ‘TaiBIF’ Category

生態與工程生態習性資料庫修復

February 29th, 2012 No comments

今天發現生態與工程生態習性資料庫秀空白頁面,追了一下,先總結原因:MediaWiki 1.9.3 與 PHP 5.3 不相容。(PHP Parse error:  syntax error, unexpected T_NAMESPACE, expecting T_STRING in /var/www/html/eemwiki/includes/Namespace.php)

解決方法是將 MediaWiki 升級(本篇完稿時為 1.18.1)。

在執行升級程式 maintenance/update.php 時,遭遇一些錯誤:

  1. 需將 StartProfiler.php 註解取消引用舊版的 includes/ProfilerStub.php
  2. 需停用 extensions/DynamicPageList2 (於 LocalSettings.php 註解取消引入)【安全因素】
  3. 可停用 extensions/GoogleSitemap (於 LocalSettings.php 註解取消引入),另外改以 crontab 方式自動產出 Sitemaps XML,並編寫 robots.txt 指引搜尋引擎抓取。

目前已恢復正常。

Categories: TaiBIF Tags:

TapirLink 遭遇 PHP fopen() 函式失效時的解決經驗

February 29th, 2012 No comments

日前與某合作單位夥伴接洽處理 TapirLink 的安裝設定問題。主要症狀是無法引入外部的模組 (module, URL 當中的 m 參數),會傳回 Failed to parse request, IO_ERROR 的錯誤訊息;然而 accesspoint 本身獨立運作是正常的。

首先為了診斷問題,我們請夥伴開啟 TapirLink 的 DEBUG 模式,以便得到詳細的問題報告資料。將 www/ 底下之 localconfig_dist.php 複製為 localconfig.php 後,設定以下參數:

define('TP_LOGLEVEL', PEAR_LOG_DEBUG);
define('TP_ALLOW_DEBUG', true);
define('_DEBUG', true);
define('TP_LOG_DEBUG', true);
define('TP_DEBUG_DIR', TP_LOG_DIR);
define('TP_DEBUG_LOGFILE', 'debug.txt');

檢視得出的 debug.txt 後,發現是 fopen() 函式無法以 HTTP  取得遠端 (remote) 資源。但是進一步檢視夥伴的 PHP 設定(查看 php.ini 與 phpinfo() 頁面),allow_url_fopen 設定值確實為 On;且在伺服器上改以瀏覽器取得被引用到的遠端資源,正常無誤,應可排除防火牆之類的外部限制因素;又以 wget 程式測試遠端資源的伺服器是否限制特定的 user agents,結果也並未設限。

此夥伴的 PHP 是以 ISAPI 的組態方式架設在 Windows IIS 上,不是較為常見的 AMP (Apache, MySQL, PHP) 組態。但是為了讓夥伴的 TapirLink 先求能動,在此暫不繼續深究是否有其他因素導致 fopen() 未如預期運作。我們決定讓夥伴的 TapirLink 改以優先從自家伺服器本地端 (local) 擷取所需的這些 *.xml & *.xsd 檔案,同樣設定 localconfig.php:

define('TP_LOCAL_REPOSITORY', 'c:/tapirlink');
define('TP_FILE_RETRIEVAL_BEHAVIOUR', 'prefer_local');

再依設定所示,於伺服器建立 C:\tapirlink 目錄後,將這些被引用的 *.xml, *.xsd 檔案放入此處。這些檔案至少有:

http://rs.tdwg.org/tapir/cs/dwc/1.4/model/dw_core_geo_cur.xml
http://rs.tdwg.org/dwc/tdwg_dw_record_tapir.xsd
http://rs.tdwg.org/dwc/tdwg_dw_core.xsd
http://rs.tdwg.org/dwc/tdwg_basetypes.xsd
http://rs.tdwg.org/dwc/tdwg_dw_element.xsd
http://rs.tdwg.org/dwc/tdwg_dw_geospatial.xsd
http://rs.tdwg.org/dwc/tdwg_dw_curatorial.xsd
http://140.109.29.92/tapirlink/model/output_record.xml
http://140.109.29.92/tapirlink/model/output_record.xsd
http://140.109.29.92/tapirlink/darwinxml/darwin_c.xsd

經過這些設定,終於讓夥伴的 TapirLink 正常運作。

Categories: TaiBIF Tags:

如何匯入大量資料到資料庫?

April 13th, 2011 No comments

taibif 有時收的資料都非常的大量~~多至好幾十萬筆~~通常以phpMyAdmin 的方式來執行匯入時常是行不通的..
時常會 timeout 或等很久都無法成功…. 這就是使用web的方式來處理資料的一個大缺點….
小量的資料是可以,但大筆資料就會失敗,因此我們就得利用command line 的方式來處理,不僅快速且保證成功~~
但資料通常得先處理~~有兩種方式~~
一是先用程式或excel來處理,
二是,若資料已經存在資料庫裡了,也可以用sql 的function來處理~~也還蠻快速的~

再來,就是匯入資料了~~
用 putty 連線到遠端資料庫伺服器,並下以下的指令
mysql -u USER -p DBNAME < filename.sql(你要匯入的檔名及他的絕對路徑) ===>注意 ” < ” 的方向,匯入匯出是相反的
通常建議再加上編碼,才不會匯入亂碼 –default-character-set=utf8

匯入指令為:
     

匯出
的指令為:
   

打完指令後會需要建入資料庫密碼,正確後則會開始處理資料,直到出現根目錄為止,如下
[root@culture ~]#

 

Categories: TaiBIF Tags:

K最近鄰法(K-Nearest Neighbor)

January 28th, 2011 No comments

K最近鄰法(K-Nearest Neighbor)為一種事例學習(Instance-based learning)的一種機械學習方法,而做法為比對測試資料與一群訓練資料中距離最接近K個的資料,最後以用投票Vote判定其分類歸屬。

Read more…

Categories: TaiBIF Tags:

資料挖掘探討-以分類(classification)相關技術

December 21st, 2010 No comments

在資料挖掘的領域中,分類預測(Classification)主要是鎖定的對象為欲處理且未分類的資料集合,根據已知類別(Class)的物件集合,將上述的資料依據其屬性(Attributes)去完成分類的過程,並冀望能讓機器學習分類的規則,提供未來能自動分類之用。而幾種常見分類技術,如決策樹演算法(Decision Tree)、貝式分類法(Bayes classifier)、支援向量機(Support Vector Machine)K最近鄰法(K-Nearest Neighbor)…等技術,將陸續介紹。

Categories: TaiBIF Tags:

Convex hull演算法

November 18th, 2010 No comments

Convex hull演算法為在一個平面上,找出一最小凸多邊形可包含所有的點,目前有幾種比較常見用來計算凸多邊形演算法,如:Incremental 、Jarvis’s March (Gift Wrap)、Divide and Conquer、Quick Hull,而TaiBIF上即採用Quick Hull演算法,來協助我們畫出一個物種的最小凸多邊,因此在這邊,說明此演算法的概念及步驟: Read more…

Categories: TaiBIF Tags: ,

TaiBIF 使用 Google Maps JavaScript 第3版 API 地圖介紹

October 29th, 2010 No comments

TaiBIF(Taiwan Biodiversity Information Facility)使用 Google Maps 做為物種出現記錄的呈現工具,接下來的介紹將以盤古蟾蜍(Bufo bankorensis)的搜尋結果作為介紹所使用的頁面(網址如參考資料1)。

 

Read more…

Categories: TaiBIF Tags: ,

多邊形檢索探討-使用Point in polygon演算法

October 20th, 2010 No comments

很多的朋有再問「究竟TaiBIF上的多邊形檢索是怎麼作」?在這一篇文章中,就來說明其中的關鍵作法。

傳統上多邊形檢索在一般的GIS軟體中,並不是一個特別的功能,幾乎所有的GIS軟體都會提供這樣的功能,大家用久了自然也就覺得好像不是一個特別的技術。但在Google Map中並沒有提供所謂多邊形檢索,因此要達成這樣的目的,必須多花一些功夫,重新探討與瞭解GIS軟體中多邊形檢索的原理。

早期的TaiBIF的空間檢索功能,先利用一個JavaScript的功能,當使用者任意框選Google Map上任一個地區,會將這個矩形的框框的左下與右上(座標的最大值與最小值)傳到資料庫中進行檢索,再回傳符合這個區塊的資料。

Read more…

RDFa 實作

March 17th, 2010 No comments

先前筆者於網站上陸續寫了幾篇關於linked data、RDF與RDFa的文章,之後在Kenny熱心的協助下,我們開始進行物種名錄資料庫RDFa,至於為什麼會先選RDFa來進行,我想最大的原因就是它可以保有原本網頁html架構,且容易實作。

Read more…

Categories: TaiBIF Tags:

參加2010年動物行為、生態暨生物教育研討會-中國生物學會暨中華民國魚類學會聯合年會心得

January 22nd, 2010 No comments

活動網頁:http://www.bio.ncue.edu.tw/arr/actnews.php?Sn=1

活動時間:2010-01-20 ~ 2010-01-21

活動地點:國立彰化師範大學進德校區

可以在 TaiBIF 新增的功能:

  1. Darwin Core 格式的介紹網頁。
  2. 讓使用者下載出現記錄的點位資料。 Read more…
Categories: TaiBIF Tags: ,