Abstract:
ข้อมูล RDF เป็นรูปแบบข้อมูลที่มีมาตรฐานมาจากภาษา XML เพื่อใช้ในการอ้างอิงถึงทรัพยากรของเว็บไซต์ เช่น ผู้เขียน วัน เวลา เป็นต้น หนึ่งในรูปแบบเว็ปไซต์ที่นิยมใช้ข้อมูล RDF ก็คือ เว็บประเภทเว็บเชิงความหมาย เนื่องจากข้อมูบ RDF มีการเชื่อมโยงถึงกันและกัน ทำให้ง่ายต่อการค้นหา ซึ่งปัจจุบันข้อมูล RDF มีจำนวนเพิ่มมากขึ้น ทำให้การประมวลผลข้อมูลเหล่านี้ใช้เวลานาน งานวิจัยนี้จึงได้นำเสนอกระบวนการสำหรับการประมวลผลโดยการใช้หน่วยประมวลผล กราฟิกส์ (GPU) สำหรับการประมวลผลข้อมูล RDF โดยขั้นแรกนำข้อมูล RDF เปลี่ยนรูปแบบให้เป็น Header Dictionary Triples (HDT) เพื่อให้มีขนาดเของข้อมูลที่เล็กลง จากนั้นจึงสามารถที่จะนำข้อมูลที่เปลี่ยนรูปแบบแล้ว เข้าไปประมวลผลบน GPU ซึ่งจำเป็นต้องคัดลอกข้อมูลเข้าสู่ หน่วยความจำของ GPU ก่อน โดยมี Compute Unified Device Architecture (CUDA) เป็นกรอบ การทำงานช่วยในการโปรแกรม GPU ในการประมวลผลซึ่งในงานวิจัยนี้ใช้ JCuda ที่เป็นภาษา Java รูปแบบของการค้นหาจะขึ้นอยู่กับรูปแบบของการประมวลผล ในงานวิจัยนี้ได้ทำการเปรียบเทียบเวลาที่ใช้ทั้งหมดในการคิวรี่ข้อมูลโดยใช้ GPU และ CPU โดยใช้รูปแบบคิวรี่มาตรฐานอ้างอิงจาก SP2Bench โดยพิจารณาตัวดำเนินการได้แก่ Union , Intersection , Filter และ Join
RDF data is the standard data format of XML language used to refer to the resources of website such as author, date, time, etc. The most of websites that use RDF are semantic web. The RDF data are linked to each other which makes it easier and quicker to search. Nowadays, there are increasing number of RDF data which make the RDF query take a long time. This research proposes an RDF processing approach utilizing graphics processing unit (GPU). First, RDF data is transformed to Header Dictionary Triples (HDT) format to reduce the size. After that we can bring the data to process on GPUs. The data must be copied to GPU memory before processing. Compute Unified Device Architecture (CUDA) is the standard framework to program to use GPU devices. In this research, we use JCuda library that is based on Java language. We compare the processing time in searching using GPUs and CPUs by using standard queries from SP2Bench examples with Union, Intersection, Filter, and Join operations.