XÂYDỰNGCÔNGCỤĐỆTRÌNHCÔNGVIỆCCÓNGỮNGHĨACHOCONDOR Building a Semantic-based Job Submission Tool for Condor Lê Ngọc Sơn, Đinh Tuấn Việt, Tạ Tuấn Anh, Đỗ Đức Thành, Nguyễn Thanh Thủy Tóm tắt Sự phát triển của môi trường tính toán thông lượng cao đã góp phần giải quyết một số bài toán cỡ lớn mà nếu không có khả năng tính toán của môi trường này thì gần như không giải quyết được. Tuy nhiên, ở thời điểm hiện nay, phần mềm trung gian hỗ trợ môi trường vẫn có những hạn chế làm cho người dùng khó khai thác sức mạnh của chúng. Một trong số đó là việcđệtrìnhcông việc. Quá trình so khớp yêu cầu của người dùng và khả năng cung cấp của tài nguyên của hầu hết các bộ phần mềm trung gian hiện nay (kể cả Condor) chủ yếu vẫn dựa trên cơ chế so khớp chính xác. Bài báo trình bày một cách tiếp cận theo hướng ngữnghĩađể làm mềm dẻo quá trình so khớp này bằng việc ứng dụng các công nghệ của Web ngữ nghĩa. Ý tưởng này sau đó được ứng dụngđểxâydựng bộ côngcụđệtrìnhcôngviệc mới bổ sung thêm tính năng cho quá trìnhđệtrìnhcôngviệc trong Condor. Từ khóa: Semantic Grid, Condor, Ontology Abstract The development of High Throughput Computing environments helps solve several large- scale problems, which without these environments’ capability are hardly solved. At present, there are however shortcomings in the middleware supporting these environments that prevents users from effectively exploiting the environments’ power. One of these is job submission. The matchmaking between user requirement and resource capability of almost all middleware suites (including Condor) is exact matchmaking. This paper adopt a semantic approach in order to make the submission phase more flexible. The idea is then realized in a new job submission tool which adds new features to the submission process in Condor. Keywords: Semantic Grid, Condor, Ontology 1 1 ĐẶT VẤN ĐỀ Ngày nay cùng với sự phát triển như vũ bão của khoa học kỹ thuật, công nghệ, đã xuất hiện ngày càng nhiều bài toán đòi hỏi sức mạnh tính toán mà một máy tính riêng lẻ không thể đảm nhiệm. Ngoài ra các bài toán này đòi hỏi một khoảng thời gian lớn để thực thi, thời gian tính toán có thể lên đến hàng tháng, hàng năm. Xuất phát từ nhu cầu đó, các kỹ thuật tính toán song song, tính toán phân tán đã được đề xuất, và tính toán thông lượng cao (High Throughput Computing - HTC [1]) trở thành một công nghệ hứa hẹn giải quyết vấn đề này. Các hệ thống tính toán thông lượng cao lớn mạnh ngày càng được xâydựng và phát triển. Tuy nhiên tính đơn giản về ngữnghĩa của các hệ thống này đã dẫn đến một số hạn chế. Điều này khiến cho người dùng phải đương đầu với một lượng lớn thông tin chuyên sâu về hệ thống cũng như xuất hiện nhiều thông tin dư thừa so với mục đích sử dụng. Tính chất đơn giản của các bộ đệtrìnhcôngviệc trong các hệ thống tính toán thông lượng cao trước đây đã tạo rất nhiều khó khăn trong việc tìm kiếm trích rút và bảo trì thông tin. Do đó chúng chỉ hỗ trợ người dùng ở một mức giới hạn nào đó trong việc truy xuất và xử lý thông tin. Kết quả tất yếu là những người dùng phải gánh trên vai trách nhiệm không những truy cập và xử lý thông tin mà còn rút trích và thông dịch mọi thông tin. Condor [2] là một phần mềm trung gian có tác dụng hỗ trợ hoạt động của môi trường tính toán thông lượng cao. Các cơ chế của Condor hiện tại là đủ đáp ứng yêu cầu vận hành của môi trường tính toán thông lượng cao, tuy nhiên nó đòi hỏi người dùng phải có hiểu biết về hệ thống và phải liệt kê chi tiết các thông tin về tài nguyên trong đặc tả yêu cầu. Vấn đề tìm kiếm hiện nay trong quá trình xác định tài nguyên phù hợp của Condor sử dụngcông nghệ tìm kiếm theo từ khóa (key word). Ngoài ra phương tiện tìm kiếm này không hiểu được mối liên hệ giữa các từ khóa với nhau. Nếu tích hợp được tri thức cho các từ khóa này tạo thành ý nghĩa và ngữ cảnh, thì việc tìm kiếm sẽ dựa trên khái niệm (concept), chứ không phải theo từ khóa. Để hiểu rõ ý này, ta lấy ví dụ một nhóm máy tính có cài hệ điều hành IRIX và Linux. Theo cách thông thường, khi người dùng muốn côngviệc được thực hiện trên các máy tương thích với Unix, họ cần chỉ rõ hệ điều hành hoặc là IRIX hoặc là Linux. Tuy nhiên trong trường hợp người dùng không biết rõ tài nguyên của hệ thống đang sử dụng là Linux hoặc IRIX mà có nhu cầu thực thi côngviệc theo với những tài nguyên tương thích với 2 loại trên, người dùngđệtrìnhcôngviệc với yêu cầu tài nguyên là Unix thì Condor sẽ không xác định được chính xác tài nguyên do cơ chế tìm kiếm của Condor là cơ chế tìm kiếm theo từ khóa. Kết quả là côngviệc không được thực thi, nếu muốn thực thi thì người dùngcó thể phải đệtrìnhcôngviệc nhiều lần với mỗi lần là lựa chọn một hệ điều hành thuộc họ Unix. Việc sử dụngcông nghệ Web ngữnghĩa trong tình huống này sẽ giúp che dấu được đi tài nguyên của hệ thống, và giúp choviệc tìm kiếm linh hoạt, dựa trên khái niệm. Khi đó người dùng chỉ cần thiết yêu cầu thực thi côngviệc trên hệ điều hành Unix, thành phần suy diễn sẽ tìm ra các phần tử có mối quan hệ tương thích như Linux, IRIX, Solaris … Cách tiếp cận này xét về tốc độ là chậm hơn so với cách làm truyền thống, tuy nhiên nó lại mềm dẻo và có khả năng mở rộng cao hơn. Hơn nữa, trên thực tế, các ứng dụng chạy trên môi trường tính toán thông lượng cao phần lớn tốn rất nhiều thời gian để hoàn tất. Do vậy thời gian suy diễn là tương đối nhỏ so với tổng thời gian chạy. Chính vì điều này, việcxâydựng thêm các thành phần mô tả về ngữnghĩađể trợ giúp việcđệtrìnhcôngviệc là chấp nhận được, ít nhất là trong môi trường tính toán thông lượng cao. Hệ thống được xâydựng trên ý tưởng tiến hành thu thập thông tin và ngữnghĩa 2 hóa về các thành phần của các máy trạm trong hệ thống tính toán thông lượng cao. Ý tưởng ngữnghĩa hóa tài nguyên cho phép chúng ta mở rộng các nguồn tài nguyên thành một môi trường mới với tập các mối quan hệ mới giữa các nguồn dữ liệu và tạo ra mối liên hệ ngữ cảnh. Các thông tin yêu cầu đểđệtrìnhcôngviệc cũng được phân tích, xử lý theo hướng ngữnghĩa hóa. Thành phần suy diễn sẽ làm nhiệm vụ xác định tài nguyên phù hợp với yêu cầu. Sau quá trình lựa chọn tài nguyên phù hợp trên côngviệc sẽ được đệtrình lên hệ thống để thực thi. Nhằm giúp cho người đọc có được cái nhìn từ tổng quát đến chi tiết cấu trúc của bài báo bao gồm những phần sau: mục 2 trình bày các giải pháp trên thế giới có liên quan; mục 3 trình bày kiến trúc tổng thể và các thành phần của hệ thống; mục 4 đưa ra các cài đặt thử nghiệm; mục 5 đánh giá kết quả đạt được và đề xuất hướng phát triển tiếp theo. 2 CÁC GIẢI PHÁP CÓ LIÊN QUAN Đệtrìnhcôngviệc gồm có đặc tả yêu cầu tài nguyên, phát hiện tài nguyên và lựa chọn tài nguyên. Các cơ chế này là cần thiết để đảm bảo cho hoạt động của hệ thống. Tuy nhiên phần lớn các phần mềm trung gian hiện nay, có cả Condor đều dựa trên khớp chính xác yêu cầu. Đó là các bên có liên quan thống nhất về tên thuộc tính và dải giá trị tương ứng của chúng. Cách làm này tương đối đơn giản, tuy nhiên rất không mềm dẻo, đặc biệt khi có một tài nguyên với cấu hình mới xuất hiện trong hệ thống. Hiện tại cũng đã có một số hướng ứng dụng các công nghệ web ngữnghĩa vào trong các môi trường tính toán. Trong [3], các tác giả đã đề xuất đưa thêm một tầng tri thức vào kiến trúc của bộ môi giới Gridbus [4], nhờ vậy bộ môi giới có thể phát hiện tài nguyên nhờ cơ chế suy diễn. Thành phần ngữnghĩa trong tầng tri thức tạo mô tả ngữnghĩachotài nguyên nhờ vào một ontology template. Thông tin về tài nguyên không phải do tầng này tự phát hiện mà nhờ vào hệ thống giám sát và phát hiện tài nguyên (MDS) của Globus Toolkit. Trong [5], các tác giả còn đề xuất kết hợp việc chọn tài nguyên phần cứng và phần mềm để trợ giúp choviệc lập lịch. Trong [6], các tác giả đề xuất một dịch vụ matchmaker dựa trên ontology hỗ trợ việc phát hiện và mô tả tài nguyên động. Trong đó, yêu cầu của người dùng được biểu diễn bằng ontology của yêu cầu và nó phải được dịch sang mô tả ontology. Bài báo [7] giải quyết vấn đề mô tả tài nguyên để môi giới tài nguyên cho một số hệ phần mềm trung gian cho lưới, trong đó có Unicore. Trong [8], các tác giả đã thiết kế và xâydựng thử phần mềm lựa chọn tài nguyên dựa trên ontology khai thác ontology, các tri thức nền tảng và các luật để giải quyết vấn đề khớp tài nguyên trên lưới. Cơ sở dữ liệu suy diễn mà họ sử dụng là TRIPLE/XSB. Trong [9], các tác giả đưa ra một cơ chế cho phép đặc tả các dịch vụ Web, đủ cho một ứng dụng client xác định tất cả các dịch vụ để thực hiện một côngviệc nào đó. Cơ chế của họ sử dụng OWL 1 để mô tả các dịch vụ Web. Ngoài ra, điều đáng chú ý nhất là họ đã sử dụng các công nghệ cơ sở dữ liệu quan hệ để lưu trữ các thể hiện của các lớp. 3 KIẾN TRÚC CỦA HỆ THỐNG 3.1 Kiến trúc phân tầng của hệ thống Cũng giống như kiến trúc của một lưới thông thường, hệ thống được xâydựngcó kiến trúc phân tầng. Tầng dưới cùng bao gồm các dịch vụ cơ bản, tầng trên là các dịch vụ mức cao được xâydựng từ dịch vụ mức thấp. Sở dĩ ta lựa chọn kiến trúc phân tầng bởi những ưu điểm sau của nó: 1 Web Ontology Language, http://www.w3.org/TR/owl-ref/ 3 • Cung cấp khả năng hoạt động tốt trên môi trường không đồng nhất. • Người sử dụng đầu cuối trở nên trong suốt với dữ liệu của hệ thống. • Người phát triển ứng dụng chỉ cần biết các API là có thể lập trìnhdễ dàng. • Hỗ trợ một số lượng lớn các ứng dụng trên lưới. • Khả năng phát triển, nâng cấp dịch vụ độc lập với xâydựng ứng dụng. Trên cở sở đó, kiến trúc của hệ thống bao gồm ba tầng: tầng nền, tầng tri thức và tầng ứng dụng (Hình 1). Hình 1. Kiến trúc và thành phần của hệ thống Tầng nền (Fabric Layer) Tầng nền có nhiệm vụ thu thập thông tin về tài nguyên của hệ thống cũng như cung cấp cơ chế lập lịch. Phụ thuộc vào loại tài nguyên của hệ thống cần xâydựng mà chúng ta có thể chọn các nhà cung cấp khác nhau như Condor hay là PBS. Trong ứng dụng này ta lựa chọn Condor vì khả năng phù hợp với tính toán thông lượng cao. Tầng tri thức (Knowledge Layer) Tầng tri thức làm nhiệm vụ chuyển đổi thông tin về tài nguyên thu thập được từ tầng nền thành các đặc tả tri thức, sau đó lưu các đặc tả này vào trong một cơ sở tri thức. Ngoài ra tầng tri thức còn phụ trách việc sinh ra những mô tả tài nguyên hợp với đặc tả của Condor. Điều này đảm bảo rằng côngviệccó thể thực hiện một cách chính xác. Tầng ứng dụng (Application Layer) Đây là tầng trên cùng trong kiến trúc của hệ thống. Về nguyên tắc người dùngcó thể tương tác với hệ thống thông qua tầng ứng dụng một cách trong suốt mà không nhận biết được sự có mặt của các tầng khác. Tầng ứng dụng bao gồm giao diện giữa người và hệ thống bên dưới, nó nhận yêu cầu từ người sử dụng và đưa đến tầng tri thức cũng như hiện thị kết quả về trạng thái của côngviệccho người dùng. Trong ứng dụng này, tầng ứng dụng bao gồm một côngcụđệtrìnhcôngviệc giúp ích cho người dùngdễ dàng đệtrìnhcôngviệc với yêu cầu linh hoạt. 3.2 Các thành phần của hệ thống Trên cơ sở của kiến trúc phân tầng, ta sẽ đi chi tiết xem xét chức năng và nhiệm vụ các thành phần của hệ thống. Thành phần đệtrìnhcôngviệc (Job Submission Tool) Thành phần này là giao diện bao gồm việc lựa chọn các thông tin về tên tệp thực thi, kiểu công việc, các tham số, các yêu cầu sẽ được đưa cho tầng tri thức để phát hiện tài nguyên phù hợp nhất.Nó cũng cho phép lựa chọn các kiểu côngviệccó thể thực hiện. Thành phần sinh câu truy vấn ngữnghĩa (Query Generator) Vai trò của thành phần này là chuyển đổi yêu cầu tài nguyên của người dùng thành câu truy vấn tương ứng. Câu truy vấn trong trường hợp này thực chất là một đặc tả lớp của ontology. Thành phần phát hiện tài nguyên (Resource Discoverer) 4 Như ta đã biết Condor quản lý và thu thập thông tin các loại tài nguyên thông qua bộ thu thập Condor Collector, đồng thời cũng cung cấp giao diện WebService cho phép khai thác các thông tin này. Thành phần này thu thập thông qua các dịch vụ trên tiếp nhận thông tin dưới định dạng ClassAd 2 sau đó chuyển chúng sang dạng Ontology. Một trong những vấn đề thường xảy ra khi thu thập dữ liệu là sự không đầy đủ cũng như khác nhau về khuôn dạng nên chúng cần phải được quy đổi và đưa ra một kiểu thống nhất cho quá trình phân tích dựa theo các thuộc tính của ClassAd. Quá trình sàng lọc và loại bỏ những yếu tố dư thừa có thể rất phức tạp nếu dữ liệu vào được lấy từ nhiều nguồn không đồng nhất và phải tính đến quá trình biến đổi theo định dạng chung. Tiếp theo các thông tin này sẽ được lưu trữ ở trong một cơ sở tri thức. Trong môi trường tính toán thông lượng cao, một loại tài nguyên có thể được thêm vào hay ra môi trường ở bất kỳ thời điểm nào. Cơ chế thu thập thông tin của Condor là sau một khoảng thời gian nhất định sẽ cập nhật lại thông tin của các các máy trạm. Vì vậy một trong những nhiệm vụ của thành phần này là tự động cập nhật lại kho tri thức. Nó sẽ kiểm tra thường xuyên trạng thái của tài nguyên, xác định được sự thay đổi và cập nhật lại thông tin về tài nguyên. Thành phần mô tả côngviệc (Job Description Generator) Các thông tin được lựa chọn sau từ thành phần mô tả tài nguyên được chuyển sang dạng ClassAd, cùng với thông tin đầu vào về tên tệp, tham số làm thông tin đệtrìnhcôngviệc lên Condor Schedd. 4 CÀI ĐẶT CHƯƠNG TRÌNH 2 Classified Advertisements, http://www.cs.wisc.edu/condor/classad/ 4.1 Ontology mẫu Ontology mẫu trong ứng dụng này mô tả các tài nguyên có trong môi trường thông qua các khái niệm và các thuộc tính. Chúng là phương tiện để mô tả mọi tài nguyên có trong môi trường. Đối với cơ sở tri thức, ontology mẫu đóng vai trò giống như vai trò của lược đồ cơ sở dữ liệu đối với cơ sở dữ liệu. Ontology mẫu có tác dụng hỗ trợ cập nhật tự động cơ sở tri thức về tài nguyên. Ontology mẫu được tạo và cập nhật bởi con người, sử dụng Protégé do chưa có một cơ chế tự động để cập nhật nó. Khi đã có ontology mẫu, mỗi tài nguyên được mô tả bằng một thể hiện và lưu ở trong cơ sở tri thức. 4.2 Giải pháp lưu trữ cơ sở tri thức Đặc tính của tài nguyên trong môi trường tính toán thông lượng cao là số lượng lớn và tính động cao. Số lượng tài nguyên trong môi trường này có thể lên tới cỡ hàng nghìn. Tính động của môi trường thể hiện ở chỗ các tài nguyên này không cố định mà có thể vào ra môi trường hay tính sẵn sàng thay đổi liên tục. Chính vì điều này, ta cần phải có một phương pháp quản lý cơ sở tri thức cho phù hợp. Cách lưu trữ thông thường nhất là lưu toàn bộ cơ sở tri thức vào một tệp .owl sau đó lợi dụng khả năng của máy suy diễn làm việc trên tệp này. Cách này tuy đơn giản nhưng hạn chế là bộ nhớ của máy suy diễn là có hạn, và có khả năng không quản lý được cơ sở tri thức lớn. Hơn nữa, khi có các tình huống tương tranh hay truy cập đồng thời, cách làm này có thể dẫn đến hỏng cơ sở tri thức. Nói cách khác, giải pháp này chỉ thích hợp cho số lượng cá thể nhỏ và không thay đổi nhiều. Ứng dụng này áp dụng cách tiếp cận khác trong việc lưu trữ cơ sở tri thức, đó là lưu các thể hiện vào trong cơ sở dữ liệu quan hệ. Theo cách này, chúng ta vừa lợi dụng được khả năng lưu trữ của cơ sở dữ liệu 5 cũng như chống các tình huống tương tranh của chúng. Trong ứng dụng này, ngôn ngữ biểu diễn tri thức cũng như câu truy vấn được viết ở dạng AOWL do ngôn ngữ này tương đương với OWL, nhưng nó súc tích và dễ đọc hơn với con người, do vậy thuận tiện choviệc lưu trữ cũng như dò lỗi khi phát sinh. Ví dụ để mô tả một tài nguyên có RAM = 1024MB, ta có biểu diễn AOWL sau: intersectionOf( <http://hpcc.hut.edu.vn/semgrid#LinuxHost> restriction( <http://hpcc.hut.edu.vn/semgrid#hasRAM> value("1024"^^<http://www.w3.org/2001/XMLSchema #integer>) ) ) Biểu diễn AOWL này là tương đương với dạng biểu diễn OWL: <?xml version="1.0"?> <rdf:RDF xmlns="http://hpcc.hut.edu.vn/semgrid#" xml:base="http://hpcc.hut.edu.vn/semgrid"> <LinuxHost rdf:ID="Host1"> <hasRAM rdf:datatype="http://www.w3.org/2001/XMLSchema# int">1024</hasRAM> </LinuxHost> </rdf:RDF> 4.3 Về vấn đề suy diễn Trong ứng dụng này, quá trình suy diễn thay thế quá trình so khớp chính xác, nhờ đó, yêu cầu của người sử dụng trở nên mềm dẻo hơn. Ví dụ: • Resource là tập các tài nguyên tính toán. OperatingSystem là tập các hệ điều hành. • Unix là tập các hệ điều hành tương thích với Unix. • Unix, Solaris, Linux là các phần tử của lớp Unix. • UnixHost và LinuxHost là các phần tử của lớp Resource. • Thuộc tính hasUnixOS là thuộc tính mô tả mối quan hệ giữa các phần tử thuộc lớp Resource lớp Unix. Hình 2. Taxonomy khi chưa suy diễn Hình 3. Taxonomy sau khi suy diễn Khi chưa suy diễn (Hình 2), ta thấy hai nút LinuxHost và UnixHost là đồng cấp. Tuy nhiên sau khi suy diễn (Hình 3), nút LinuxHost được phân loại là một nút UnixHost. Khi người dùng đưa côngviệc đến một nút UnixHost, côngviệc sẽ được đưa đến một nút LinuxHost nếu có. Do suy diễn trên một số lượng cá thể lớn là rất tốn kém, do vậy, giả thiết của ứng dụng là các cá thể không có liên hệ với nhau. Điều này phù hợp với thực tế của môi trường tính toán thông lượng cao hiện nay. Với giả thiết này, suy diễn trên các cá thể được quy về suy diễn trên các khái niệm kết hợp với các phép truy vấn cơ sở dữ liệu. 6 Mà suy diễn trên các khái niệm thông thường có chi phí nhỏ hơn nhiều [10]. Các thành phần ở tầng tri thức được cài đặt ở dạng dịch vụ Web để giúp cho nhiều ứng dụng khác nhau có thể khai thác tính năng của chúng. Theo đó, ứng dụngđệtrìnhcôngviệccó thể coi đơn thuần là một ví dụ về việc khai thác khả năng của dịch vụ web này. 4.4 Quá trình thu thập thông tin và đệtrìnhcôngviệc qua dịch vụ web Birdbath 3 là một dự án mở phát triển cung cấp giao diện dịch vụ web cho các dịch vụ của Condor (Hình 4). Trong các tiến trình ngầm của Condor, hai dịch vụ là Collector và Scheduler cung cấp đầy đủ các tính năng cần thiết cho ứng dụng của đối tác thứ ba cũng như các cổng thông tin (portal) để liên lạc với Condor thông qua mô hình ủy nhiệm công việc. Với hai dịch vụ này thì những ứng dụng bên ngoài có thể truy cập Collector để xác định kiểu và tài nguyên sẵn có trong tập máy, sau đó đệtrìnhcôngviệc lên thông qua giao diện của bộ Scheduler. Hình 4. Dịch vụ Web của Condor Quá trìnhđệtrìnhcôngviệc bao gồm các thao tác sau: • Tạo mới giao tác 3 http://www.cs.wisc.edu/condor/birdbath/ • Tạo mới một mã côngviệc • Xác định các tệp sẽ truyền • Tạo mô tả côngviệc • Đệtrìnhcôngviệc • Xác nhận giao tác Đối với hệ thống tính toán thông lượng cao thì việc đòi hỏi về xác nhận hay giấy ủy quyền đuợc đơn giản hóa hơn rất nhiều so với các hệ thống tính toán khác. Với phần mềm Condor thì ta chỉ cần chỉ ra tên của người dùng thực thi tài nguyên. 4.5 Hoạt động của chương trình Thiết lập các thông số: Để cấu hình cho dịch vụ Web của bộ đệtrìnhcông việc, chúng ta có thể thực hiện thông qua giao diện như Hình 5. Hình 5. Giao diện cấu hình Người dùng trước hết đưa vào địa chỉ dịch vụ Web sau đó nhấn Initialize để lấy các thông số từ dịch vụ web. Các thông số người dùng thay đổi được gồm: • URI của dịch vụ Collector và Scheduler của nút trung tâm • URI của tệp chứa ontology mẫu • URI của máy suy diễn (Chú ý máy suy diễn phải cài đặt giao diện DIG) 7 • Namespace của các khái niệm định nghĩa trong Ontology mẫu. • Các thông số truy cập cơ sở dữ liệu: tên cơ sở dữ liệu, tên người dùng, mật khẩu. Sau khi đã thiết lập, người dùng nhấn Set Config để thiết lập thông số hoặc Store Config để thiết lập và lưu lại thông số ra tệp. Đệtrìnhcông việc: Quá trìnhđệtrìnhcôngviệc được thực hiện thông qua giao diện đệtrìnhcôngviệc (Hình 6). Trong đó, người dùng cần chỉ định địa chỉ của dịch vụ web đệtrìnhcôngviệc sau đó nhấn Initialize để tạo phiên làm việc. Cây ngữnghĩa được dịch vụ Web sinh ra và gửi lại cho ứng dụng. Người dùngcó thể chọn trên cây bằng cách nhấn các nút chọn bên phải. Cách bố trí này đảm bảo chúng ta dễ dàng bổ sung các tiêu chí khác vào cây ngữ nghĩa. Hình 6. Giao diện đệtrìnhcôngviệc Người dùngcó thể chỉ định các tiêu chí khác của ClassAd trong ô Other Criteria. Sau khi chọn loại công việc, dòng lệnh, các tham số của lệnh, người dùng ấn nút Submit đểđệtrìnhcôngviệc và ấn View Job Status để xem trạng thái côngviệc thực hiện. 5 ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN Bài báo này đã trình bày hướng tiếp cận ngữnghĩa hóa tài nguyên của hệ thống tính toán thông lượng cao trên cơ sở đó xâydựngcôngcụđệtrìnhcôngviệccóngữ nghĩa. Bài báo cũng mô tả cách biểu diễn ontology trong miền ứng dụng về tài nguyên hệ thống và việc sử dụng ontology này trong quá trình trao đổi, tương tác giữa các thành phần của hệ thống. Dù những kết quả thử nghiệm chỉ mới thực thi trên phạm vi nhỏ hẹp trên hệ thống Condor nhưng mô hình xâydựng bài toán có thể áp dụngcho các hệ thống tính toán thông lượng cao khác. Các ontology mẫu được xâydựng cũng cho phép dễ dàng tổng hợp, phát triển và sử dụng lại để tích hợp thông tin. LỜI CẢM ƠN Chúng tôi chân thành cảm ơn Trung tâm tính toán hiệu năng cao trường Đại học Bách Khoa Hà Nội đã tạo điều kiện vật chất, kỹ thuật trong quá trình thực hiện đềtài này. TÀILIỆU THAM KHẢO [1] M. Livny, J. Basney, R. Raman and T. Tannenbaum: “Mechanisms for High Throughput Computing”, SPEEDUP Journal, Vol. 11, No. 1, June 1997. [2] T. Tannenbaum, D. Wright, K. Miller and M. Livny: “Condor - A Distributed Job Scheduler”', in Thomas Sterling, editor, Beowulf Cluster Computing with Linux, The MIT Press, 2002. ISBN: 0-262-69274-0. [3] T.S. Somasundaram, R.A. Balachandar, V. Kandasamy, R. Buyya, R. Raman, N. Mohanram and S. Varun: “Semantic-based Grid Resource Discovery and its Integration with the Grid Service Broker,” ADCOM 2006. [4] R. Raman, M. Livny and M. Solomon: “Resource Management through Multilateral Matchmaking'”, HPDC9 2000. [5] A.C.T. Vidal, and S.T. Kofuji: Semantics-Based Grid Resource Management, 2007. [6] A. Harth, S. Decker Y. He H. Tangmunarunkit and C. Kesselman}: “A semantic matchmaker service on the Grid”, WWW 2004. [7] J. Brooke, D. Fellows, K. L. Garwood and C. A. Goble: “Semantic Matching of Grid Resource Descriptions” EAGC 2004. [8] H. Tangmunarunkit, S. Decker and C.Kesselman: “Ontology-Based Resource Matching in the Grid - The Grid Meets the Semantic Web”, ISWC 2003. 8 [9] O. Caprotti, M. Dewar and D. Turi: Mathematical service matching using Description Logic and OWL. MKM 2004. KS. Thành đang theo học Tiến sỹ tại Department of Computer Science, Wayne State University, USA. Hiện tại KS.Thành đang quan tâm tới các lĩnh vực như: Data Intensive Computing, Cloud Computing, Fault Tolerance. [10] F. Baader, D. Calvanese, D. L. McGuinness, D. Nardi and P. F. Patel-Schneider: “The description logic handbook: theory, implementation, and applications”, Cambridge University Press, 2003. ISBN: 0-521-78176-0. E-mail: thanh@wayne.edu Trang web cá nhân: http://is.hut.vn/~thanhdd Về các tác giả- Kỹ sư Lê Ngọc Sơn tốt nghiệp đại học Bách khoa Hà nội ngành Công nghệ thông tin năm 2008. Từ năm 2006 – 2008 Ks Sơn làm cộng tác viên tại Trung tâm tính toán hiệu năng cao – Trường ĐHBKHN. Các vấn đề quan tâm của KS Sơn bao gồm trí tuệ nhân tạo, logic mô tả, web ngữ nghĩa, tính toán hiệu năng cao. PGS. TS. Nguyễn Thanh Thuỷ. Sinh ngày 14 tháng 8 năm 1960, tại Thường Tín, Hà Tây Tốt nghiệp Đại học Bách Khoa Hà Nội, 1982 chuyên ngành Toán máy tính. Bảo vệ luận án Tiến sỹ chuyên ngành Tin học năm 1987 tại ĐHBK Hà Nội. E-mail: lns.gmt@gmail.com Được phong hàm PGS năm 2001. Hiện đang là Viện trưởng Viện Đào Tạo Sau Đại Học, Giám đốc Trung tâm Tính Toán Hiệu Năng Cao, Đại Học Bách Khoa Hà Nội Kỹ sư Đinh Tuấn Việt tốt nghiệp đại học Bách khoa Hà nội năm 2008. KS Việt hiện đang công tác tạicông ty Oracle Việt Nam. KS Việt đang nghiên cứu các vấn đề về lý thuyết CSDL, các hệ truy vấn thông tin, tính toán hiệu năng cao. Hướng nghiên cứu chính: Suy diễn, Học máy, Trí tuệ tính toán, Tính toán hiệu năng cao, Tính toán lưới. Email: thuynt@it-hut.edu.vn Kỹ sư Đỗ Đức Thành tốt nghiệp Đại học Bách Khoa Hà Nội chuyên ngành Hệ thống Thông tin năm 2006. KS. Thành là Giảng viên bộ môn Hệ thống Thông tin, khoa Công nghệ Thông tin, Đại học Bách Khoa Hà Nội. E-mail: dinhtuanviet@gmail.com 9 . đã trình bày hướng tiếp cận ngữ nghĩa hóa tài nguyên của hệ thống tính toán thông lượng cao trên cơ sở đó xây dựng công cụ đệ trình công việc có ngữ nghĩa. . của công việc cho người dùng. Trong ứng dụng này, tầng ứng dụng bao gồm một công cụ đệ trình công việc giúp ích cho người dùng dễ dàng đệ trình công việc