Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng

100 295 0
Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng Thực hiện song song các câu vắn tin trong CSDL phân tán bằng cách sử dụng luồng

B GIO DC V O TO TRNG I HC S PHM H NI NGUYN NGC THU THC HIN SONG SONG CC CU VN TIN TRONG CSDL PHN TN BNG CCH S DNG LUNG LUN VN THC S MY TNH H NI, 2014 B GIO DC V O TO TRNG I HC S PHM H NI NGUYN NGC THU THC HIN SONG SONG CC CU VN TIN TRONG CSDL PHN TN BNG CCH S DNG LUNG Chuyờn ngnh: Khoa hc mỏy tớnh Mó s: 60 48 01 01 LUN VN THC S MY TNH Ngi hng dn khoa hc: PGS.TS Lờ Huy Thp H NI, 2014 Lời cảm ơn Tôi xin bày tỏ lòng biết ơn sâu sắc đến thầy giáo PGS.TS Lờ Huy Thp, ng-ời tận tình h-ớng dẫn, giúp đỡ động viên suốt trình làm luận văn. Xin cám ơn tất thầy giáo, cô giáo Tr-ờng Đại học S- phạm Hà Nội tạo điều kiện để đ-ợc học tập hoàn thành khóa học đ-ợc thuận lợi. Xin chân thành cảm ơn thầy giáo, cô giáo trực tiếp giảng dạy mang đến cho niềm say mê nghiên cứu khoa học. Tôi xin gửi lời biết ơn chân thành tới đồng nghiệp, bạn bè, gia đình tạo điều kiện, ủng hộ mặt để hoàn thành luận văn. Hà Nội, tháng 12 năm 2014 Tác giả luận văn Nguyn Ngc Thu LờI cam đoan Tụi xin cam oan lun ny l bn thõn t nghiờn cu v thc hin theo s hng dn khoa hc ca thy PGS. TS. Lờ Huy Thp Tụi hon ton chu trỏch nhim v tớnh phỏp lý quỏ trỡnh nghiờn cu khoa hc ca lun ny. Tác giả luận văn Nguyn Ngc Thu MC LC M U . Chng 1: TNG QUAN . 1.1. Khỏi nim tin trỡnh v lung 1.1.1 Tin trỡnh 1.1.2. Lung 1.2. Khỏi quỏt v c s d liu phõn tỏn . 1.2.1. H c s d liu phõn tỏn 1.2.2. Phõn mnh . 1.3. Khỏi quỏt v x lớ song song v phõn tỏn 11 1.3.1. Cỏc phng phỏp x lý song song 11 1.3.2. Cỏc phộp toỏn song song . 14 1.4. Kt lun chng 1: . 19 Chng 2: THC HIN SONG SONG CC CU VN TIN TRONG C S D LIU PHN TN BNG PHNG PHP LUNG 20 2.1. Cỏc cu trỳc tin trỡnh v lung song song 20 2.1.1. Cu trỳc tin trỡnh song song 21 2.1.2. Cu trỳc lung song song 27 2.2. Mt s phng phỏp phõn ró v rỳt gn cõu truy tin: . 30 2.2.1. Phõn ró tin . 30 2.2.2. Cc b hoỏ d liu phõn tỏn v cỏc phng phỏp rỳt gn cõu tin . 38 2.2.2.1. Rỳt gn cho phõn mnh ngang nguyờn thu 39 2.2.2.2. Rỳt gn cho phõn mnh dc . 43 2.2.2.3. Rỳt gn cho phõn mnh ngang dn xut 45 2.2.3.4. Rỳt gn cho phõn mnh hn hp . 49 2.3. Cỏc phng phỏp song song húa cỏc cõu tin da vo tin trỡnhlung vo chc nng v vo d liu 54 2.3.1. Cỏc phng phỏp song song húa cỏc cõu tin da vo tin trỡnh-lung 54 2.3.2. Cỏc phng phỏp song song húa cỏc cõu tin da vo chc nng 55 2.3.3. Cỏc phng phỏp song song húa cỏc cõu tin da vo d liu 55 2.4. Kt lun chng 57 Chng 3: LP TRèNH NG DNG. 58 3.1. Cỏc giao din demo ng dng ti HSP H Ni 58 3.1.1. Rỳt gn cho phõn mnh ngang nguyờn thy . 58 3.1.2. Rỳt gn cho phõn mnh dc 58 3.1.3. Rỳt gn cho phõn mnh ngang dn xut . 59 3.1.4. Rỳt gn cho phõn mnh hn hp 59 3.2. Chng trỡnh demo ng dng ti HSP H Ni 60 3.2.1. Mụ t c s d liu 60 3.2.2. Phỏt biu, phõn tớch ng dng . 61 3.2.3. Mó ngun chng trỡnh 72 3.3. Kt lun chng 386 KT LUN . 87 TI LIU THAM KHO . 88 BNG CC T VIT TT T vit tt Gii thớch CSDL C s d liu CPU B x lý trung tõm DDBS H c s d liu phõn tỏn DANH MC CC BNG Tờn bng Trang Bng 2.2-1. Quan h EMP 50 Bng 2.2-2. Mnh hn hp EMPHH1 50 Bng 2.2-4. Mnh hn hp EMPHH3 50 Bng 2.2-3. Mnh hn hp EMPHH2 51 DANH MC CC HèNH V Tờn hỡnh Trang Hỡnh 1.1-1. Ba tin trỡnh tun t Hỡnh 1.1-2. S thc hin ng thi ca cỏc tin trỡnh h thng uniprocessor (a) v h thng multiprocessor (b). Hỡnh 1.1-3. Mụ hỡnh nhiu-mt Hỡnh 1.1-4. Mụ hỡnh mt-mt Hỡnh 1.1-5. Mụ hỡnh lung nhiu nhiu Hỡnh 1.3-1. Kt qu trn trung 16 Hỡnh 1.3-2. S lng sinh viờn cỏc khoa ti cỏc a im 17 Hỡnh 1.3-3. Gp nhúm theo phng phỏp trn phõn tỏn 18 Hỡnh 1.3-4. Gp nhúm theo thut toỏn ReF 19 Hỡnh 2.1-1. Tin trỡnh v lung song song 21 Hỡnh 2.1-2. Cu trỳc chng trỡnh (tin trỡnh) lng 24 Hỡnh 2.1-3. Hot ng ca lung Pthread 27 Hỡnh 2.2-1a. th tin 33 Hỡnh 2.2-1b. th ni ca 2.2-1a 34 Hỡnh 2.2-2. th tin khụng liờn thụng 34 Hỡnh 2.2-3. Vớ d v cõy toỏn t 38 Hỡnh 2.2-4. Rỳt gn cho phõn mnh ngang (vi phộp chn) 40 Hỡnh 2.2-5a. Vn tin gc 42 Hỡnh 2.2-5b. Vn tin ó rỳt gn 42 Hỡnh 2.2-6a. Phộp chiu vụ dng 44 Hỡnh 2.2-6b,c,d. Rỳt gn cho phõn mnh dc 44 Hỡnh 2.2-7. Vn tin gc ca vớ d 2.2-13 47 Hỡnh 2.2-8. Vn tin gc ó c giao hoỏn 47 73 Me.Close() End Sub End Class - Mó ngun form chớnh: Imports System.Windows.Forms Public Class frmMain Sub New() ' This call is required by the Windows Form Designer. InitializeComponent() ' Add any initialization after the InitializeComponent() call. BackGround() End Sub Private Sub BackGround() Dim filebackground As String = Application.StartupPath + "\bg.jpg" Dim ximage As Image = Image.FromFile(filebackground) Dim width, height As Integer width = Screen.PrimaryScreen.Bounds.Width height = Screen.PrimaryScreen.Bounds.Height Me.BackgroundImage = ResizeImage(ximage, New Size(width, height)) End Sub Private Sub CloseAllForm() ' Close all child forms of the parent. For Each ChildForm As Form In Me.MdiChildren ChildForm.Close() Next End Sub 74 Private Sub ShowForm(ByVal frm As Form) CloseAllForm() frm.WindowState = FormWindowState.Maximized frm.MdiParent = Me frm.Show() End Sub Private Sub mnuTruyVanDuLieu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuTruyVanDuLieu.Click Dim frm As New frmChonThamSo frm.ShowDialog() End Sub End Class - Mó ngun form phõn mnh dc: Imports System.Data.Common Imports Microsoft.Practices.EnterpriseLibrary.Data Imports Microsoft.Practices.EnterpriseLibrary.Data.Database Public Class frmPhanManhDoc Private TABLE_SINHVIEN As DataTable = CauTrucBangDuLieu() Sub New() ' This call is required by the Windows Form Designer. InitializeComponent() ' Add any initialization after the InitializeComponent() call. Me.MainView.DataSource = TABLE_SINHVIEN LuongLayDuLieu() End Sub 75 Private Sub CustomDrawRowIndicator(ByVal sender As Object, ByVal e As DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs) Handles GridView.CustomDrawRowIndicator If (e.Info.IsRowIndicator And e.RowHandle >= 0) Then e.Info.DisplayText = e.RowHandle + e.Info.ImageIndex = -1 End If End Sub Friend Function CauTrucBangDuLieu() As DataTable Dim table As New DataTable table.Columns.Add("MaSV", Type.GetType("System.String")) table.Columns.Add("HoTenSV", Type.GetType("System.String")) table.Columns.Add("NgaySinh", Type.GetType("System.DateTime")) table.Columns.Add("DienThoai", Type.GetType("System.String")) table.Columns.Add("Email", Type.GetType("System.String")) Return table End Function Private Sub LoadDuLieu() Dim db As Database Dim objCmd As DbCommand Dim objDs As DataSet db = DatabaseFactory.CreateDatabase() objCmd = db.GetStoredProcCommand("[dbo].[SinhVien_Page]") objDs = db.ExecuteDataSet(objCmd) TABLE_SINHVIEN = objDs.Tables(0) End Sub 76 Private Sub LuongLayDuLieu() Handles btnRun.Click Dim thread As New Threading.Thread(AddressOf LoadDuLieu) thread.Start() thread.Priority = Threading.ThreadPriority.Highest thread.IsBackground = True thread.Join() Me.MainView.DataSource = TABLE_SINHVIEN Me.GridView.BestFitColumns() End Sub End Class - Mó ngun form phõn mnh hn hp: Imports System.Data.Common Imports Microsoft.Practices.EnterpriseLibrary.Data Imports Microsoft.Practices.EnterpriseLibrary.Data.Database Public Class frmPhanManhHonHop Public MaGioiTinh As Boolean Private TABLE_SINHVIEN As DataTable = CauTrucBangDuLieu() Sub New() ' This call is required by the Windows Form Designer. InitializeComponent() ' Add any initialization after the InitializeComponent() call. Me.MainView.DataSource = TABLE_SINHVIEN Dim FILE_NAME_NAMSINH As String = Application.StartupPath + "\NamSinh.ini" If System.IO.File.Exists(FILE_NAME_NAMSINH) = True Then Dim objReader As New System.IO.StreamReader(FILE_NAME_NAMSINH) 77 MaGioiTinh = IIf(objReader.ReadToEnd = 0, False, True) objReader.Close() LuongLayDuLieu() End If End Sub Private Sub CustomDrawRowIndicator(ByVal sender As Object, ByVal e As DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs) Handles GridView.CustomDrawRowIndicator If (e.Info.IsRowIndicator And e.RowHandle >= 0) Then e.Info.DisplayText = e.RowHandle + e.Info.ImageIndex = -1 End If End Sub Friend Function CauTrucBangDuLieu() As DataTable Dim table As New DataTable table.Columns.Add("MaSV", Type.GetType("System.String")) table.Columns.Add("HoTenSV", Type.GetType("System.String")) table.Columns.Add("NgaySinh", Type.GetType("System.DateTime")) table.Columns.Add("DienThoai", Type.GetType("System.String")) table.Columns.Add("Email", Type.GetType("System.String")) Return table End Function Private Sub LoadDuLieu() Dim db As Database Dim objCmd As DbCommand Dim objDs As DataSet db = DatabaseFactory.CreateDatabase() 78 objCmd = db.GetStoredProcCommand("[dbo].[SinhVien_Page]") db.AddInParameter(objCmd, "@GioiTinh", DbType.Boolean, MaGioiTinh) objDs = db.ExecuteDataSet(objCmd) TABLE_SINHVIEN = objDs.Tables(0) End Sub Private Sub LuongLayDuLieu() Handles btnRun.Click 'MaGioiTinh = IIf(Me.txtGioiTinh.SelectedIndex = 0, False, True) Dim thread As New Threading.Thread(AddressOf LoadDuLieu) thread.Start() thread.Priority = Threading.ThreadPriority.Highest thread.IsBackground = True thread.Join() Me.MainView.DataSource = TABLE_SINHVIEN Me.GridView.BestFitColumns() End Sub End Class - Mó ngun form phõn mnh ngang dn xut: Imports System.Data.Common Imports Microsoft.Practices.EnterpriseLibrary.Data Imports Microsoft.Practices.EnterpriseLibrary.Data.Database Public Class frmPhanManhNgangDanXuat Public MaGioiTinh As Boolean Private TABLE_SINHVIEN As DataTable = CauTrucBangDuLieu() Sub New() ' This call is required by the Windows Form Designer. InitializeComponent() 79 ' Add any initialization after the InitializeComponent() call. Me.MainView.DataSource = TABLE_SINHVIEN Dim FILE_NAME_NAMSINH As String = Application.StartupPath + "\NamSinh.ini" If System.IO.File.Exists(FILE_NAME_NAMSINH) = True Then Dim objReader As New System.IO.StreamReader(FILE_NAME_NAMSINH) MaGioiTinh = IIf(objReader.ReadToEnd = 0, False, True) objReader.Close() LuongLayDuLieu() End If End Sub Private Sub CustomDrawRowIndicator(ByVal sender As Object, ByVal e As DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs) Handles GridView.CustomDrawRowIndicator If (e.Info.IsRowIndicator And e.RowHandle >= 0) Then e.Info.DisplayText = e.RowHandle + e.Info.ImageIndex = -1 End If End Sub Friend Function CauTrucBangDuLieu() As DataTable Dim table As New DataTable table.Columns.Add("MaSV", Type.GetType("System.String")) table.Columns.Add("HoTenSV", Type.GetType("System.String")) table.Columns.Add("NgaySinh", Type.GetType("System.DateTime")) table.Columns.Add("GioiTinh", Type.GetType("System.Boolean")) table.Columns.Add("DienThoai", Type.GetType("System.String")) 80 table.Columns.Add("DanToc", Type.GetType("System.String")) table.Columns.Add("MaTinhThanh", Type.GetType("System.String")) table.Columns.Add("DiaChi", Type.GetType("System.String")) table.Columns.Add("Email", Type.GetType("System.String")) Return table End Function Private Sub LoadDuLieu() Dim db As Database Dim objCmd As DbCommand Dim objDs As DataSet db = DatabaseFactory.CreateDatabase() objCmd = db.GetStoredProcCommand("[dbo].[SinhVien_Page]") db.AddInParameter(objCmd, "@GioiTinh", DbType.Boolean, MaGioiTinh) objDs = db.ExecuteDataSet(objCmd) TABLE_SINHVIEN = objDs.Tables(0) End Sub Private Sub LuongLayDuLieu() Handles btnRun.Click 'MaGioiTinh = IIf(Me.txtGioiTinh.SelectedIndex = 0, False, True) Dim thread As New Threading.Thread(AddressOf LoadDuLieu) thread.Start() thread.Priority = Threading.ThreadPriority.Highest thread.IsBackground = True thread.Join() Me.MainView.DataSource = TABLE_SINHVIEN Me.GridView.BestFitColumns() End Sub 81 End Class - Mó ngun form phõn mnh ngang: Imports System.Data.Common Imports Microsoft.Practices.EnterpriseLibrary.Data Imports Microsoft.Practices.EnterpriseLibrary.Data.Database Public Class frmPhanManhNgangTheoKhoang Public MaGioiTinh As Boolean Private TABLE_SINHVIEN As DataTable = CauTrucBangDuLieu() Sub New() ' This call is required by the Windows Form Designer. InitializeComponent() ' Add any initialization after the InitializeComponent() call. Me.MainView.DataSource = TABLE_SINHVIEN Dim FILE_NAME_NAMSINH As String = Application.StartupPath + "\NamSinh.ini" If System.IO.File.Exists(FILE_NAME_NAMSINH) = True Then Dim objReader As New System.IO.StreamReader(FILE_NAME_NAMSINH) MaGioiTinh = IIf(objReader.ReadToEnd = 0, False, True) objReader.Close() LuongLayDuLieu() End If End Sub Private Sub CustomDrawRowIndicator(ByVal sender As Object, ByVal e As DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs) Handles GridView.CustomDrawRowIndicator 'Tao so thu tu 82 If (e.Info.IsRowIndicator And e.RowHandle >= 0) Then e.Info.DisplayText = e.RowHandle + e.Info.ImageIndex = -1 End If End Sub Friend Function CauTrucBangDuLieu() As DataTable Dim table As New DataTable table.Columns.Add("MaSV", Type.GetType("System.String")) table.Columns.Add("HoTenSV", Type.GetType("System.String")) table.Columns.Add("NgaySinh", Type.GetType("System.DateTime")) table.Columns.Add("GioiTinh", Type.GetType("System.Boolean")) table.Columns.Add("DienThoai", Type.GetType("System.String")) table.Columns.Add("DanToc", Type.GetType("System.String")) table.Columns.Add("MaTinhThanh", Type.GetType("System.String")) table.Columns.Add("DiaChi", Type.GetType("System.String")) table.Columns.Add("Email", Type.GetType("System.String")) Return table End Function Private Sub LoadDuLieu() Dim db As Database Dim objCmd As DbCommand Dim objDs As DataSet db = DatabaseFactory.CreateDatabase() objCmd = db.GetStoredProcCommand("[dbo].[SinhVien_PageTinhThanh]") db.AddInParameter(objCmd, "@GioiTinh", DbType.Boolean, MaGioiTinh) 83 objDs = db.ExecuteDataSet(objCmd) TABLE_SINHVIEN = objDs.Tables(0) End Sub Private Sub LuongLayDuLieu() Handles btnRun.Click 'MaGioiTinh = IIf(Me.txtGioiTinh.SelectedIndex = 0, False, True) Dim thread As New Threading.Thread(AddressOf LoadDuLieu) thread.Start() thread.Priority = Threading.ThreadPriority.Highest thread.IsBackground = True thread.Join() Me.MainView.DataSource = TABLE_SINHVIEN Me.GridView.BestFitColumns() End Sub End Class - Mó ngun to lung phõn mnh ngang theo gii tớnh: Private Sub LuongLayDuLieu() Handles btnRun.Click 'MaGioiTinh = IIf(Me.txtGioiTinh.SelectedIndex = 0, False, True) Dim thread As New Threading.Thread(AddressOf LoadDuLieu) // Khai bỏo lung thread.Start() // Khi ng thc thi lung thread.Priority = Threading.ThreadPriority.Highest thread.IsBackground = True thread.Join() Me.MainView.DataSource = TABLE_SINHVIEN Me.GridView.BestFitColumns() End Sub 84 - Mó ngun to lung phõn mnh dc theo danh sỏch (gm h tờn, ngy sinh, s in thoi, email): Private Sub LuongLayDuLieu() Handles btnRun.Click Dim thread As New Threading.Thread(AddressOf LoadDuLieu) // Khai bỏo lung thread.Start()// Khi ng thc thi lung thread.Priority = Threading.ThreadPriority.Highest thread.IsBackground = True thread.Join() Me.MainView.DataSource = TABLE_SINHVIEN Me.GridView.BestFitColumns() End Sub - Mó ngun to lung phõn mnh ngang dn xut theo gii tớnh v mó tnh thnh: Private Sub LuongLayDuLieu() Handles btnRun.Click 'MaGioiTinh = IIf(Me.txtGioiTinh.SelectedIndex = 0, False, True) Dim thread As New Threading.Thread(AddressOf LoadDuLieu) // Khai bỏo lung thread.Start()// Khi ng thc thi lung thread.Priority = Threading.ThreadPriority.Highest thread.IsBackground = True thread.Join() Me.MainView.DataSource = TABLE_SINHVIEN Me.GridView.BestFitColumns() End Sub - Mó ngun to lung phõn mnh hn hp theo dc theo danh sỏch (gm h tờn, ngy sinh, s in thoi, email) v gii tớnh: 85 Private Sub LuongLayDuLieu() Handles btnRun.Click 'MaGioiTinh = IIf(Me.txtGioiTinh.SelectedIndex = 0, False, True) Dim thread As New Threading.Thread(AddressOf LoadDuLieu) // Khai bỏo lung thread.Start()// Khi ng thc thi lung thread.Priority = Threading.ThreadPriority.Highest thread.IsBackground = True thread.Join() Me.MainView.DataSource = TABLE_SINHVIEN Me.GridView.BestFitColumns() End Sub - Mó ngun thc hin chy a lung b vi x lý: Private Sub ShowNewForm() Handles btnRun.Click Dim FILE_NAME_NAMSINH As String = Application.StartupPath + "\NamSinh.ini" If System.IO.File.Exists(FILE_NAME_NAMSINH) = True Then Dim objWriter As New System.IO.StreamWriter(FILE_NAME_NAMSINH) objWriter.WriteLine(Me.txtGioiTinh.SelectedIndex) objWriter.Close() End If Shell(Application.StartupPath + "\PhanManhDoc.exe", AppWinStyle.NormalFocus) Shell(Application.StartupPath + "\PhanManhHonHop.exe", AppWinStyle.NormalFocus) Shell(Application.StartupPath + "\PhanManhNgangDanXuat.exe", AppWinStyle.NormalFocus) 86 Shell(Application.StartupPath + "\PhanManhNgangTheoKhoang.exe", AppWinStyle.NormalFocus) End Sub 3.3. Kt lun chng Trong chng ny tỏc gi ó ỏp dng lý thuyt ca chng vo c s d liu ca trng i hc s phm H Ni (dng demo) thụng qua vic phỏt biu v phõn tớch cỏc bi toỏn. Mi bo toỏn th hin kt qu rỳt gn cõu tin cho phõn mnh ngang, phõn mnh doc, phõn mnh ngang dn xut, phõn mnh hn hp. 87 KT LUN Mt m tt c cỏc H qun tr CSDL phi gii quyt l c s d liu phõn tỏn, x lý song song. Cỏc phng phỏp thc hin song song cõu tin da vo lung-tin trỡnh, vo chc nng v vo d liu ó c nhiu nh tin hc quan tõm phỏt trin. Lun ny ó dnh phn ln trỡnh by cỏc phng phỏp thc hin song song cỏc cõu tin c s d liu phõn tỏn da vo lung-tin trỡnh. Cỏc thut toỏn c trỡnh by, da trờn cu trỳc lung song song rỳt gn cõu tin. Lun ó ỏp dng cỏc phng phỏp thc hin song song cỏc cõu tin c s d liu phõn tỏn da vo lung vo ng dng ti Trng i hc s phm H Ni 2. Do thi gian v kin thc cũn nhiu hn ch nờn lun khụng trỏnh nhng thiu sút vỡ vy em rt mong nhn c s gúp ý chõn thnh t quý thy cụ v cỏc bn ng nghip lun ny c hon thin hn. Em xin chõn thnh cm n! 88 TI LIU THAM KHO [1] on Vn Ban, Nguyn Mu Hõn, X lý song song v phõn tỏn, NXB Khoa hc v K thut, 2006. [2] Xuõn Lụi, Cu trỳc d liu v gii thut, NXB Khoa hc v K thut, 1996 [3] Lờ Huy Thp, C s lý thuyt song song, NXB Thụng tin v Truyn thụng, 8-2010 [4] Lờ Huy Thp, Giỏo trỡnh k thut lp trỡnh, Tp 1, NXB Khoa hc T nhiờn v Cụng ngh, 2008 [5] Lờ Huy Thp, Phõn mnh trờn giỏ tr lp ca cỏc thuc tớnh C S D Liu quan h, Tp tin hc v iu khin hc, Tp 23, S 1, 86 98, 2007 [6] Lờ Huy Thp, Nguyờn lý H iu Hnh, Bi ging ti Hc Vin Cnh Sỏt Nhõn Dõn [7] M.Tamer Ozsu, Patrick Valduriez. Nguyờn lý cỏc h c d liu phõn tỏn. Trn c Quang biờn dch. NXB Thng kờ, 1999 [8] Seyed H. Roo, Parallel processing and Parallel Algorithms, Theory and Coputation, Springer 1999 [9] Robert Sedgewick, Cm nang thut toỏn Vol.1 and Vol.2. NXB Khoa hc v K thut, 2001 [...]... phân mảnh theo hàm băm, phân mảnh theo khoảng, phân mảnh theo chiều dọc, Song song hóa các câu vấn tin trong cơ sở dữ liệu phân tán bằng cách cục bộ hóa và sử dụng luồng và một số thuật toán thực hiện song song nhằm giải quyết vấn đề chậm trễ thường gặp trong các hệ cơ sở dữ liệu phân tán 2 Mục đích nghiên cứu Nghiên cứu về các loại luồng, phân mảnh và tái cấu trúc, cục bộ hóa cơ sở dữ liệu phân tán. .. song Có hai loại dòng dữ liệu song song: song song đường ống và song song phân mảnh Có thể sử dụng các thủ tục tuần tự sẵn có để thực hiện các phép toán đã có một cách song song mà không phải xây dựng các phép toán song song mới Có 3 cơ chế xử lý song song cơ bản: - Song song liên truy vấn (inter - query parallelism) - Song song nội truy vấn (intra - query parallelism) - Song song nội toán tử (intra- operator... trình để thể hiện song song liên truy vấn toán tử và nội toán tử 3 Nhiệm vụ nghiên cứu  Nghiên cứu về các tiến trình và các loại luồng  Phân mảnh và tái cấu trúc, cục bộ hóa cơ sở dữ liệu phân tán  Nghiên cứu cách thực hiện song song câu vấn tin trong cơ sở dữ liệu phân tán khi sử dụng luồng  Lập trình demo 4 Đối tượng và phạm vi nghiên cứu - Cơ sở dữ liệu phân tán 2 - Cơ sở lý thuyết song song - Ngôn... loại phân mảnh 11 1.3 Khái quát về xử lí song song và phân tán 1.3.1 Các phương pháp xử lý song song Các phép truy vấn trong mô hình quan hệ rất thích hợp cho việc thực hiện song song Truy vấn quan hệ thực chất là các phép toán quan hệ thực hiện trên các dòng dữ liệu có cùng cấu trúc Hơn nữa, kết quả của mỗi phép toán là một quan hệ nên ta có thể kết hợp các phép toán thành các dòng dữ liệu song song... quả khi tất cả các đầu vào của nó chưa được duyệt 1.3.1.3 Song song nội toán tử Song song nội toán tử thực hiện một phép toán quan hệ bằng cách dùng nhiều bộ xử lý Điều này có thể thực hiện bằng cách phân chia các toán hạng cho nhiều bộ xử lý Một phép toán quan hệ được tách thành các phép toán độc lập, mỗi phép toán này thực hiện một phần dữ liệu bằng một bộ xử lý riêng biệt Cơ chế song song nội toán... chúng ta dùng các thuật ngữ đồng nghĩa như Hợp hoặc Ghép và Nối Ngoài việc xây dựng các phép toán song song, chúng ta còn có thể sử dụng các phép toán quan hệ truyền thống với các dòng dữ liệu song song Mỗi phép toán quan hệ có một tập các cổng vào chứa các mẫu tin và một cổng ra chứa dòng dữ liệu kết quả Dòng dữ liệu song song thực hiện bằng cách tách 15 và ghép các dòng dữ liệu thành các cổng tuần... hình tiến trình và luồng, các dạng phân mảnh ngang, phân mảnh dọc, phân mảnh ngang dẫn xuất, phân mảnh hỗn hợp, các phương pháp xử lý song song, các phương pháp xử lý các phép gộp nhóm trong các máy tính song song: thuật toán trộn tập trung, thuật toán trộn phân tán và thuật toán thực hiện phép nối tự nhiên, … Đây là những kiến thức cơ sở cần thiết cho việc mở rộng nghiên cứu trong các chương tiếp theo... thống, thì việc chọn ra một truy vấn trong số đó để thực hiện trước là một vấn đề 1.3.1.2 Song song nội truy vấn[1,3,4] Song song nội truy vấn là dạng song song hoá thi hành song song một truy vấn đơn trên nhiều bộ xử lý Nghĩa là, nó thực hiện từng truy vấn một và cho phép thực hiện đồng thời các phép toán trên truy vấn đó Có hai cơ chế song song nội truy vấn Song song độc lập Ký hiệu Opi là một phép... 1.3.2.2 Thuật toán trộn phân tán DM (Distributed Merging) Gồm hai bước: - Đầu tiên, mỗi nút thực hiện gộp nhóm các mẫu tin trên vùng của nó - Sau đó, các giá trị gộp nhóm riêng được phân mảnh theo hàm băm trên thuộc tính nhóm GROUP BY và các nút thực hiện trộn các giá trị gộp nhóm cục bộ này một cách đồng thời Ưu điểm: Các nút thực hiện trộn các giá trị gộp nhóm thành phần một cách đồng thời nên giai... một tập các quan hệ nhỏ hơn, để có nhiều ứng dụng chỉ cần chạy trên một mảnh Như vậy một cách phân mảnh tối ưu là phân mảnh sinh ra một lược đồ phân mảnh cho phép giảm tối đa thời gian thực thi các ứng dụng chạy trên các mảnh đó Các loại phân mảnh dọc đều có thể thực hiện bằng SQL như sau [1, 3, 5, 7]: Select From d/ Phân mảnh hỗn hợp Trong trường hợp phân mảnh . ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 NGUYỄN NGỌC THU THỰC HIỆN SONG SONG CÁC CÂU VẤN TIN TRONG CSDL PHÂN TÁN BẰNG CÁCH SỬ DỤNG LUỒNG LUẬN VĂN THẠC SĨ MÁY TÍNH . ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 NGUYỄN NGỌC THU THỰC HIỆN SONG SONG CÁC CÂU VẤN TIN TRONG CSDL PHÂN TÁN BẰNG CÁCH SỬ DỤNG LUỒNG  : 60 48. tiến trình và luồng 1.1.1 Tiến trình 1/ Tiến trình và các loại tiến trình:  Tiến trình (process): Tiến trình là một bộ phận của một chương trình đang thực hiện, đơn vị thực hiện tiến trình

Ngày đăng: 10/09/2015, 14:27

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan