1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Tạo 3 bản sao cho 1 CSDL SQL (có 2 table, mỗi table gồm 5 trường dữ liệu với các kiểu dữ liệu khác nhau ) trên cùng 1 instance viết ứng dụng lan truyền cập nhật từ CSDL đến bản sao 1

15 44 0

Đ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ông tin cơ bản

Tiêu đề Tạo 3 bản sao cho 1 CSDL SQL (có 2 bảng, mỗi bảng gồm 5 trường dữ liệu với các kiểu dữ liệu khác nhau) trên cùng 1 instance viết ứng dụng lan truyền cập nhật từ CSDL đến bản sao 1
Tác giả Lê Ngọc Bảo
Người hướng dẫn Sinh viên thực hiện: Lê Ngọc Bảo
Trường học Đại Học Quốc Gia TP Hồ Chí Minh
Chuyên ngành Cơ sở dữ liệu và Phân tán hệ thống
Thể loại Đề án thực tập
Năm xuất bản 2021
Thành phố TP Hồ Chí Minh
Định dạng
Số trang 15
Dung lượng 2,44 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Miêu tả các vấn đề mỗi khía cạnh của 5 khía cạnh không đồng nhất cần phải giải quyết để cho một đối tượng client có thể dẫn xuất một phương thức trên server.. Nhưng những máy tính có thể

Trang 1

BÁO CÁO CÁ NHÂN MÔN HỌC: CÁC HỆ THỐNG PHÂN TÁN

ĐỀ TÀI 14: Tạo 3 bản sao cho 1 CSDL SQL (Có 2 table, mỗi table gồm 5 trường dữ liệu với các

kiểu dữ liệu khác nhau ) trên cùng 1 Instance Viết ứng dụng lan truyền cập nhật từ CSDL

đến Bản sao 1, bản sao 1 đến bản sao 2 và bản sao 3.

TIEU LUAN MOI download : skknchat123@gmail.com moi nhat

Trang 2

TP Hồ Chí Minh, ngày 30 tháng 10 năm 2021

Trang 3

MỤC LỤC

Phần I: Câu hỏi cá nhân 3

Phần II: Đồ án Nhóm 4

1.Cơ sở dữ liệu 5

2.Thư viện Dotmim 5

3.Sản phẩm 7

3.1 Công cụ sử dụng 7

3.2 Giới thiệu sản phẩm 7

3.3 Demo Sản phẩm 10

TIEU LUAN MOI download : skknchat123@gmail.com moi nhat

Trang 4

Phần I: Câu hỏi cá nhân

Câu 7: Một chương trình server viết trên một ngôn ngữ(ví dụ C++) cung cấp ứng

dụng cho một đối tượng BLOB mà đối tượng đó có ý định kết nối với những clients

viết bởi một ngôn ngữ khác(ví dụ như Java) Máy client và server có thể khác phần

cứng nhưng đều cùng kết nối đến một mạng internet Miêu tả các vấn đề mỗi khía

cạnh của 5 khía cạnh không đồng nhất cần phải giải quyết để cho một đối tượng

client có thể dẫn xuất một phương thức trên server

Trả lời:

Vì những máy tính được kết nối tới cùng một mạng internet, chúng ta có thể giả

định rằng các giao thức Internet xử lý những khác biệt trong mạng lưới

Nhưng những máy tính có thể có phần cứng khác nhau – Do đó chúng ta phải xử lý

với những sự khác biệt của cách trình bày mục dữ liệu(data items) trong quá trình

yêu cầu và hồi đáp tin nhắn từ các máy client đến các đối tượng Một tiêu chuẩn

chung sẽ cần được định nghĩa cho mỗi loại mục dữ liệu cần được truyền đi giữa đối

tượng và client của nó

Những máy tính để thể chạy trên hệ điều hành khác nhau, vì thế chúng ta cần phải giải

quyết sự khác biệt giữa các hệ điều hành trong việc gửi nhận tin nhắn hay thể hiện lời

gọi hàm Do đó tại cấp độ Java/C++ một hệ điều hành chung sẽ được dùng để dịch ra

hệ điều hành riêng biệt hệ thống đó đang dùng

Chúng ta có 2 ngôn ngữ khác nhau là C++ và Java, chúng sử dụng cách trình bày

khác nhau cho những cấu trúc dữ liệu như chuỗi, hàm, bản ghi Một tiêu chuẩn chung

sẽ được dùng để định nghĩa cho mỗi loại cách trúc dữ liệu cần được truyền đi giữa

đối tượng và những client của nó Và một cách để biên dịch cấu trúc dữ liệu đó giữa

những ngôn ngữ khác nhau

Chúng ta có thể có 2 người thực hiện khác nhau ví dụ như một cho C++ và một cho

Java Họ sẽ cần phải thống nhất một tiêu chuẩn chung được đề cập ở trên và ghi

chép lại chúng

Trang 5

Câu 116 Giải thích những điều kiện liên kết chương trình phải được đáp ứng nếu

một server được tải động lên một không gian địa chỉ kernel, và bằng cách nào để

phân biệt những trường hợp thực thi một server dưới cấp độ người dùng

Trả lời:

Một phần của không gian địa chỉ kernel phải được cấp phát cho phần code và dữ

liệu mới Những kí hiệu trong code và dữ liệu mới phải được phân giải thành những

mục(item) trong không gian địa chỉ kernel Ví dụ, nó sẽ sử dụng hàm xử lý tin nhắn

của kernel

Ngược lại, nếu server được thực thi bằng một tiến trình riêng biệt thì nó sẽ chạy

một địa chỉ tiêu chuẩn trên không gian địa chỉ của nó và tách biệt với những liên kết

tới những thư viện được chia sẻ, hình ảnh liên kết của nó sẽ là độc lập

Cấu 225 Giải thích bằng cách nào mà giao thức xác nhận hai pha cho những giao

tác lồng nhau đảm bảo rằng nếu giao tác cấp cao thực thi, tất cả thành phần con đúng

được xác nhận hoặc hủy bỏ

Trả lời:

-Giao thức xác nhận 2 pha đảm bảo rằng giao tác phải được xác nhận hết hoặc sẽ hủy

bỏ toàn bộ

-Mỗi khi một giao tác lồng nhau được thực thi, nó báo về trạng thái của nó và trạng thái

của thành phần con về cha Vì thế nếu một giao tác đến trạng thái xác nhận, nó có một

danh sách đúng cho những thành phần con đã xác nhận Do đó mỗi khi giao tác cấp cao

bắt đầu giao thức xác nhận hai pha, nó liệt kê những thành phần con đã xác nhận là đúng

Nó kiểm tra những thành phần con và đảm bảo rằng chúng vẫn có thể xác nhận hoặc

phải hủy bỏ Ở đó có thể tồn tài những node chạy những thành phần con không thành

công không được bao gồm trong giao thức xác nhận 2 pha Ta sẽ biết được kết quả của

chúng bằng cách chạy truy vấn giao tác cấp cao

TIEU LUAN MOI download : skknchat123@gmail.com moi nhat

Trang 6

Phần II: Đồ án Nhóm

NHÓM 14 Tên thành viên:

Nguyễn Phạm Nhật Minh-N17DCCN095

1.Cơ sở dữ liệu

-CSDL gốc sẽ lấy tên là Demo và bản sao sẽ là Demo1,Demo2,Demo3

Table_1

Table_2

2.Thư viện Dotmim

-Dotmim.Sync(DMS) là một trong những thư viện thuận tiện nhất để thực hiện đồng bộ

dữ liệu giữa cái CSDL trên cùng 1 server trên nhiều nền tảng quản trị sql khác nhau

như MySQL, SQL Server, SQLite và MariaDB Trong bài này chúng ta sẽ sử dụng

SQL server của Microsoft

-Cấu trúc của DMS gồm 3 thành phần chính:

Trang 7

-Providers: một provider có trách nhiệm giao tiếp với CSDL local Mỗi provider có thể

hoạt động ở cả 2 bên: Server và Client

-Orchestrators: Để có thể chuyển đổi giữa các nền tảng quản trị CSDL Provider là

luôn cần thiết để tạo ra 1 Orchestrator

-SyncAgent: SyncAgent sẽ chịu trách nhiệm chuyển đổi dữ liệu giữa 2

Orchestrator Remote và Local Công việc của SyncAgent bao gồm:

+Tạo ra một local Orchestrator với một client provider nhập trước

+ Tạo ra một remote Orchestrator với một server provider nhập trước

+Đồng bộ dữ liệu giữa client và server bằng các giao thức có trong Orchestrator

Ví dụ:

var serverProvider = new

MySqlSyncProvider(serverConnectionString); var clientProvider =

new SqliteSyncProvider(clientConnectionString);

var tables = new string[] {"<TableName1> ", "<TableName2>" };

var agent = new SyncAgent(clientProvider, serverProvider, tables); var result = await agent.SynchronizeAsync();

Console.WriteLine(result);

Trang 8

TIEU LUAN MOI download : skknchat123@gmail.com moi nhat

Trang 9

-Trong code ví dụ trên không tồn tại Orchestrator vì thư viện Dotmim đã tạo sẵn

cho người dùng để giúp cho mọi thứ đơn giản hóa hơn

3.Sản phẩm

3.1 Công cụ sử dụng

-Ngôn ngữ: C#

-IDE: Visual Studio

-Nutget Packages cài đặt:

+Dotmim.Sync.SqlServer

+Dotmim.Sync.SqlServer.ChangeTracking

+Dotmim.Sync.Sqlite

3.2 Giới thiệu sản phẩm

-Main Form

+Nút làm mới sẽ cập nhập dữ liệu từ SQL Server

+Nút Synchronize tại tab Demo sẽ đẩy dữ liệu từ Demo -> Demo1

+Nút Synchronize tại tab Demo1 sẽ đẩy dữ liệu từ Demo1 -> Demo2, Demo3

TIEU LUAN MOI download : skknchat123@gmail.com moi nhat

Trang 10

+Các nút Table 1,2 sẽ tạo Sub Form giúp chỉnh sửa dữ liệu

SubForm để chỉnh sửa dữ liệu khi nhấn các nút Table1,Table2

Trang 11

-Tab Demo1

-Tab Demo2

-Tab Demo 3 sẽ tương tự Tab Demo2

TIEU LUAN MOI download : skknchat123@gmail.com moi nhat

Trang 12

3.3 Demo Sản phẩm

-Trước tiên ta sẽ xóa hết dữ liệu trên Demo1, Demo2, Demo3

Trang 13

-Thực hiện đẩy dữ liệu từ Demo -> Demo1

-Dữ liệu đã được đẩy xuống Demo1

TIEU LUAN MOI download : skknchat123@gmail.com moi nhat

Trang 14

-Thực hiện đẩy dữ liệu từ Demo1 -> Demo2,Demo3

Trang 15

-Dữ liệu đã được đẩy đến Demo2, Demo3

TIEU LUAN MOI download : skknchat123@gmail.com moi nhat

Ngày đăng: 08/11/2022, 16:03

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w