Nội dung cài đặt framework
I.
Bắt đầu........................................................................................................................2
II.
Tổng quan................................................................................................................3
III.
Module lõi................................................................................................................ 3
IV.
Module trích chọn....................................................................................................3
1. Cấu hình................................................................................................................... 4
2. Chạy kho trích chọn.................................................................................................4
V. Hướng dẫn từng bước..................................................................................................5
VI.
Module máy chủ......................................................................................................5
1. Cấu hình................................................................................................................... 5
2. Chạy máy chủ trích chọn..........................................................................................5
VII. Một số phần mềm sử dụng trong quá trình trích chọn..............................................5
1. Scala......................................................................................................................... 5
2. Maven...................................................................................................................... 6
1
I.
Bắt đầu
Cộng đồng DBpedia sử dụng khung linh hoạt và mở rộng để trích thông tin
khác nhau có cấu trúc từ Wikipedia. Khung trích chọn DBpedia được viết
bằng Scala 2.8. Khung có sẵn ở kho DBpedia Github ( Giấy phép GNU GPL).
Những thay đổi có thể tiết lộ những phát triển gần đây. Các tùy chọn cấu hình
có thể được tìm thấy ở />Khi liên kết trên hoàn thành 100%, phấn này sẽ được bỏ qua.
Trước khi bắt đầu phát triển, một số yêu cầu đặt ra:
Khung trích chọn DBpedia: lấy phiên bản mới nhất từ kho Github
(Github repository).
git clone git://github.com/dbpedia/extraction-framework.git
Bộ phát triển Java (Java Development Kit): khung trích chọn DBpedia
sử dụng ngôn ngữ lập trình Java. Lấy phiên bản mới nhất JDK từ
/> Khung trích chọn DBpedia yêu cầu phiên bản thấp nhất là Java 7 (JDK
v1.7.0) để có đầy đủ chức năng.
Có thể biên dịch và chạy với bản JDK trước đó bằng cách xóa hoặc làm
trống
hai
tệp
launchers_purge-download_and_purge-extract_in
the_dump_module sẽ không hoạt động, nhưng chúng không cần thiết
lắm).
core/src/main/scala/org/dbpedia/extraction/util/Rich Path.scala
dump/src/main/scala/org/dbpedia/extraction/dump/clean/Clean.s
cala
Maven sử dụng cho quản lý dự án và xây dựng tự động. Lấy xuống từ
Mave 2 hoặc 3 đều có thể làm việc được.
Đấy là yêu cầu để biên dịch và chạy khung trích chọn DBpedia. Các tập tin
đầu vào là kho Wikimedia sẽ được tải xuống bằng mã giải nén nếu được cấu
hình để làm như vậy.
Nếu muốn sử dụng IDE cho mã hóa, có một số lựa chọn được đưa ra:
Intellij IDEA: hiện nay IDE là phần mềm ổn định nhất để phát triển
với Scala
2
Eclipse
Netbeans
II.
Tổng quan
III.
Khung trích chọn DBpedia được thiết kế thành 2 module khác nhau:
Module lõi (Core module): chứa thành phần chính của framework
Module trích chọn (Dump extraction module): chứa ứng dụng
DBpedia trên trang />Module lõi
Hình 1. Các thành phần của module lõi
Hình 1 miêu tả các thành phần chính trong module lõi của khung trích chọn
DBpedia
Trong đó:
- Nguồn (Source): cung cấp tóm tắt một nguồn của các trong MediaWiki.
- WikiParser: phân tích trang MediaWiki thành một cây cú pháp trừu tượng
AST.
- Extractor: bộ trích chọn là một ánh xạ từ một trang thành một đồ thị các
triple của nó ( Vấn đề - Thuộc tính - Đối tượng).
- Đích (Destination): cung cấp một trừu tượng về đích của của các triple
RDF.
Ngoài ra còn có một số gói hữu ích cung cấp các chức năng phù hợp để sử
dụng trích chọn:
- Ontology: các lớp sử dụng để biểu diễn ontology, các phương pháp cho cả
đọc và ghi ontology được cung cấp trên ology
- DataParser: để trích chọn dữ liệu từ các nút trong AST được cung cấp trên
aparser
- Util: lớp hữu ích khác có trên il
IV.
Module trích chọn
3
Các lựa chọn cấu hình mới nhất có thể được lấy
/>
ở:
Khi liên kết trên hoàn thành 100%, phấn này sẽ được bỏ qua.
Khung đang trải qua nhiều cải tiến và làm cho tốt hơn (refactoring), và các
phần sau không chắc chắn đúng 100%.
Các bước thực hiện:
-
Lấy phiên bản mới nhất của khung trích chọn DBpedia từ github:
$ git clone git://github.com/dbpedia/extraction-framework.git
-
Sau khi tải khung trích chọn hoàn tất, mở thư mục extraction-framework:
$ cd extraction-framework
-
Tiếp tục gõ lệnh để cài Maven:
$ mvn clean install
-
Sau khi cài Maven hoàn tất, sử dụng câu lệnh để mở tệp dump và chạy hai
thư mục sau:
$ cd dump
$ ../run download config=download.properties.file
$ ../run extraction extraction.properties.file
Hai tệp vừa chạy là thuộc tính và tải xuống chứa đựng nhiều dữ liệu có thể dễ
dàng sửa đôi theo nhu cầu sử dụng.
1. Cấu hình
Tất cả các cấu hình được tìm thấy từ tập thuộc tính có tên
dump/config.properties. Sau khi tạo mới, cần sao chép nó từ .default và sửa đổi
theo nhu cầu sử dụng. Ở đây sẽ loại bỏ tất cả các ngôn ngữ không muốn để
trích xuất, chỉ trừ lại tiếng Việt (vi).
Các thuộc tính có sẵn:
dumpDir: thư mục nơi đặt kho. Khung trích chọn mong muốn nhìn
thấy các thư mục con của kiểu “viwiki/[date]” bên trong.
updateDumps: nếu đúng (true), khung trích chọn sẽ tải xuống tất cả các
kho dữ liệu bị thiếu hoặc không cập nhật. Nếu muốn sử dụng kho riêng
4
hoặc không muốn cập nhật các kho, hãy đặt nó là sai (false) và đảm bảo
rằng các có sẵn các kho ở tình trạng không nén.
dumpDir/<lang>/<date>/<lang>wiki-<date>pages-articles.xml
Ở dòng lệnh trên thì “lang” là ngôn ngữ mong muốn trích chọn, ở đây
là tiếng Việt (vi).
outputDir: các thư mục đầu ra
languages: ngôn ngữ của kho Wikipedia được trích chọn.
extractors: các lớp trích chọn được sử dụng để khai thác. Trình trích
chọn ngôn ngữ cụ thể có thể được cấu hình sử dụng thuộc tính của định
dạng extractors.{wikiCode}, extractors.vi
2. Chạy kho trích chọn
Trước khi bắt đầu trích chọn, cần cài đặt khung vào kho lưu trữ Maven trên
máy chủ bằng cách chạy mvn install từ thư mục extraction .
Việc chạy kho trích chọn được bắt đầu bằng cách mvn scala:run chạy từ thư
mục extraction/dump .
V.
Hướng dẫn từng bước
Trích chọn trên Ubuntu, nếu sử dụng hệ điều hành Window thì tải phần mềm
Git (phần mềm quản lý mã nguồn phân tán) trên phù hợp với cấu hình máy chủ, để thực hiện các câu lệnh
giống như trên Ubuntu.
Nếu cài đặt updateDumps là false, thì có thể tải kho chứa từ
, chọn một kho đầy đủ nhất từ
<lang>wiki (vídụ itwiki) và chọn một pages-articles.xml.bz2 (ví dụ
itwiki-20120226-pages-articles.xml.bz2). Tệp đầu vào phải được đặt ở
dumpDir/<lang>/<date> (e.g., /srv/dbpedia/dumps/it/20122
0226/itwiki-20120226-pages-articles.xml.bz2 ,
nếu dumpDir thì /srv/dbpedia/dumps).
5
VI.
Module máy chủ
Module này được dùng để thử nghiệm khung trích chọn.
1. Cấu hình
Có hai lớp Scala cấu hình các thông số của máy chủ:
Trong org.dbpedia.extraction.server.Configuration , có thể
cấu hình các ngôn ngữ và URL ánh xạ tới wiki API.
định
Trong org.dbpedia.extraction.server.ExtractionManager ở hàm
loadExtractor, Có thể cấu hình trình trích chọn nên được sử dụng bởi
máy chủ.
2. Chạy máy chủ trích chọn
Trước khi chạy trích chọn, cần cài đặt khung trích chọn vào kho lưu trữ
maven bằng cách chạy mvn install từ thư mục extraction .
Máy chủ khai thác được khởi động bằng cách chạy mvn scala:run từ thư
mục extraction/server .
Chuẩn đầu vào là 9999
Một của sổ trình duyệt sẽ mở ra, trong đó có thể chỉ định ngôn ngữ và URI
muốn trích chọn.
VII.
Một số phần mềm sử dụng trong quá trình trích chọn
1. Scala
Scala là ngôn ngữ lập trình đa mẫu hình, được thiết kế để tích hợp các tính
năng của lập trình hướng đối tượng với lập trình hàm.
Scala chạy trên nền máy ảo Java và tương thích với chương trình Java, nó
biên dịch giống như Java nên có thể đọc được thư viện Java. Hơn nữa bản
thân code Scala khi biên dịch ra là mã bytecode của máy ảo nên các thư
viện có thể sử dụng theo chọn lựa. Scala ưu việt khi xử lý tính toán song
song, phân tán và đồng bộ.
2. Maven
6
Maven là công cụ quản lý và thiết lập tự động một dự án phần mềm. Hỗ trợ
việc tự động hóa quá quá trình tạo dự án ban đầu, thực hiện biên dịch, kiểm
thử, đóng gói và triển khai sản phẩm, maven có thể chạy trên các nền tảng
khác nhau như Windows, Linus,..
Về việc cài đặt thì chúng em chỉ mới build thành công đến bước:
7
8