GIỚI THIỆU CHUNG
Tích hợp dữ liệu
Tích hợp dữ liệu là một trong những lĩnh vực nghiên cứu của cơ sở dữ liệu, ngay từ khi cơ sở dữ liệu được đưa vào sử dụng cho các ứng dụng phục vụ cho nhu cầu quản lý kinh doanh của các doanh nghiệp thì vấn đề tích hợp dữ liệu đã được nghiên cứu Mục đích của việc tích hợp các hệ thống thông tin là nhằm kết hợp các hệ thống được lựa chọn để tạo thành một hệ thống thông tin đầy đủ, thống nhất đối với người sử dụng Qua đó người dùng được cung cấp một khung nhìn đồng nhất về mặt dữ liệu (dữ liệu có thể phân tán và nguồn dữ liệu có thể khác nhau về cấu trúc hoặc không đồng nhất về mặt công nghệ)
Vậy tích hợp dữ liệu là sự kết hợp của các quy trình kỹ thuật và kinh doanh sử dụng để kết hợp dữ liệu từ các nguồn khác nhau nhằm tạo ra thông tin có ý nghĩa và có giá trị Đứng ở góc độ giải pháp thì tích hợp dữ liệu là một ứng dụng nền tảng, một sản phẩm hoặc các kỹ thuật và các công nghệ để cung cấp một khung nhìn thống nhất cho nhiều nguồn dữ liệu khác nhau
1.1.2 Các mức độ tích hợp dữ liệu
Dựa trên kiến trúc tầng của một hệ thống thông tin chúng ta sẽ có các mức độ tích hợp dữ liệu khác nhau như hình vẽ dưới đây:
Hình 1.1: Kiến trúc ứng dụng và mức độ tích hợp dữ liệu
Từ hình vẽ trên, chúng ta có thể thấy được về lý thuyết sẽ có các cách tiếp cập sau:
Tích hợp thủ công: Cách tiếp cận này sẽ đặt người sử dụng làm trung tâm
Người sử dụng phải thực hiện lấy các dữ liệu từ các hệ thống thông tin khác nhau, từ đó tổng hợp lại để có được thông tin mà mình mong muốn Với cách làm này, người sử dụng cần phải nắm vững được các nơi để lấy được các thông tin cũng như quan hệ giữa các thông tin này
Tích hợp giao diện dùng chung: Người sử dụng sẽ được cung cấp một giao diện dùng chung cho tất cả các hệ thống Ở cách tiếp cận này, các dữ liệu vẫn được đặt riêng rẽ, người dùng vẫn cần phải kết hợp các dữ liệu riêng lẻ có được bằn cách sử dụng giao diện dùng chung này
Tích hợp ứng dụng: Cách tiếp cận này sử dụng các ứng dụng tích hợp cho phép việc truy cập đến nhiều nguồn dữ liệu khác nhau Các dữ liệu này sẽ được kết hợp lại và trả về cho ngưởi sử dụng Tuy nhiên, nếu có nhiều ứng dụng thì việc tích hợp sẽ trở lên khó khăn do ứng dụng phải duy trì quá nhiều các interface, các kết nối đến các nguồn dữ liệu có định dạng không đồng nhất khiến ứng dụng tích hợp trở nên cồng kềnh
Tích hợp bằng phần mềm lớp giữa: Cách tiếp cận này sử dụng một phần mềm lớp giữa Phần mềm lớp giữa sẽ cung cấp những chức năng mà có thể dễ dàng sử dụng lại bởi các ứng dụng Như vậy với cách tiếp cận này thì chi phí cho việc xây dựng các ứng dụng tích hợp sẽ được giảm thiểu do có thể sử dụng được các chức năng tích hợp chung mà không cần phải xây dựng lại
Tích hợp tầng truy xuất dữ liệu: Các dữ liệu tích hợp logic được tạo ra ở tầng truy xuất dữ liệu bằng cách cung cấp các khung nhìn (view) Các khung nhìn này là các dữ liệu ảo được tạo ra bằng cách liên kết các dữ liệu từ các nguồn dữ liệu khác nhau, khi các ứng dụng lấy dữ liệu từ khung nhìn này, tầng truy xuất dữ liệu sẽ thực hiện việc truy xuất đến các nguồn dữ liệu thật, kết hợp chúng lại và trả về cho người dùng Việc kết hợp dữ liệu từ các nguồn khác nhau có thể mất thời gian xử lý vì thế cần phải cân nhắc đến vấn đề hiệu năng của hệ thống khi tiếp cận theo hướng này
Tích hợp ở tầng lưu trữ dữ liệu: Đây là mức độ tích hợp ở tầng vật lý, các dữ liệu từ các nguồn khác nhau sẽ được chuyển đổi đến nơi lưu trữ mới Với cách tiếp cận này thì việc truy cập dữ liệu sẽ trở lên dễ dàng và tốc độ truy vấn được đảm bảo Tuy nhiên, các ứng dụng sẽ cần phải sửa đổi để sử dụng dữ liệu tích hợp mới này và cần phải duy trì cơ chế để đồng bộ dữ liệu từ các nguồn dữ liệu về nơi lưu trữ mới điều này có thể dẫn đến việc lãng phí bộ nhớ lưu trữ
1.1.3 Vấn đề của tích hợp dữ liệu
Như đã nói ở trên, việc tích hợp các hệ thống thông tin nhằm mục đích kết hợp các hệ thống thông tin được lựa chọn thành một hệ thống thông tin đầy đủ, thống nhất đối với người sử dụng Để đáp ứng được yêu cầu này, tất cả các dữ liệu cần phải được biểu diễn dựa trên một mô hình dữ liệu toàn cục thống nhất về nguyên tắc và ngữ
Vấn đề này sinh khi các hệ thống được lựa chọn để tích hợp không được thiết kế để tích hợp với các hệ thống khác Các hệ thống này được viết trên các nền tảng công nghệ khác nhau, sử dụng các kiểu dữ liệu khác nhau dẫn đến không thể tích hợp trực tiếp và cần phải tạo ra các bộ tích hợp để chuyển đổi các dữ liệu giúp các hệ thống có thể tích hợp với nhau cũng như việc loại bỏ các xung đột khi kết hợp chúng lại, chính vì vậy giải pháp tích hợp dữ liệu của các hệ thống thông tin được lựa chọn phụ thuộc vào các yếu tố chính sau:
Kiến trúc của hệ thống thông tin
Nội dung và chức năng của các hệ thống được tích hợp
Kiểu thông tin được quản lý bởi từng hệ thống (dữ liệu có cấu trúc hay phi cấu trúc)
Mức độ hoạt động độc lập của các hệ thống
Mục đích sử dụng của hệ thống thông tin đã được tích hợp (OLTP hay OLAP)
Hiệu năng của hệ thống
Nguồn lực dành cho dự án (Thời gian, nhân lực, kinh phí, các kinh nghiệm đã có…)
Ngoài ra các yếu tố sau cũng cần phải được cân nhắc khi xem xét đến vấn đề tích hợp dữ liệu:
Phần cứng và hệ điều hành chạy ứng dụng
Hệ quản trị cơ sở dữ liệu
Mô hình dữ liệu, lược đồ dữ liệu và ngữ nghĩa dữ liệu
Các rằng buộc toàn vẹn dữ liệu
1.1.4 Vai trò của tích hợp dữ liệu trong các tổ chức
Tích hợp dữ liệu có vai trò đặc biệt quan trọng trong các tổ chức và doanh nghiệp Nó cho phép dữ liệu được chia sẻ một cách đầy đủ, xuyên suốt và dễ dàng giữa các bộ phận trong cùng một tổ chức Nếu như doanh nghiệp có nhiều nguồn thông tin được lưu trữ và quản lý bởi các hệ thống khác nhau mà các thông tin này có liên quan đến nhau ở cấp độ quản lý tổ chức doanh nghiệp thì nhu cầu tích hợp dữ liệu sẽ rất lớn vì các khó khăn sau:
Khó khăn trong việc chia sẻ dữ liệu: Các dữ liệu sẽ do từng bộ phận phụ trách ứng dụng quản lý việc chia sẻ dữ liệu sẽ phải thực hiện thủ công thông qua các chức năng kết xuất dữ liệu của từng hệ thống riêng lẻ, nếu hệ thống không có chức năng kết xuất dữ liệu thì việc này không thể thực hiện được Các dữ liệu chia sẻ sẽ cần phải lưu trữ ở nơi lưu trữ chung và sẽ rất khó khăn trong việc tìm kiếm, kiểm soát truy cập Dữ liệu chia sẻ không phản ánh kịp thời đến tình hình hoạt động thực tế (dữ liệu cũ, không phải là mới nhất)
Khó khăn trong việc tạo báo cáo tổng hợp: Các báo cáo ảnh hưởng đến việc ra các quyết định hoạt động của các tổ chức đòi hỏi phải tổng hợp dữ liệu từ nhiều nguồn dữ liệu từ các hệ thống khác nhau, người làm báo cáo tổng hợp đòi hỏi phải am hiểu cách kết xuất dữ liệu từ các hệ thống riêng lẻ cũng như mối quan hệ giữa các dữ liệu kết xuất được từ các hệ thống này Sau khi có được dữ liệu từ các hệ thống riêng lẻ, việc làm báo cáo tổng hợp buộc phải làm bằng phương pháp thủ công điều này tốn nhiều thời gian, công sức và có thể có những sai sót
Khó khăn trong việc vận hành các hệ thống thông tin: Bất kỳ hệ thống thông tin nào cũng đều phải duy trì một đội ngũ cán bộ kỹ thuật để đảm bảo được hệ thống được vận hành an toàn, liên tục; đội ngũ cán bộ này sẽ cần phải kiểm tra, phát hiện và giải quyết các sự cố cho các hệ thống Chi phí vận hanh, bảo dưỡng chắc chắn sẽ không nhỏ và có xu hướng tăng nhanh trong tương lai khi có các hệ thống khác được phát triển và đi vào sử dụng Ngoài ra, các hệ thống này có thể đòi hỏi nhiều tài nguyên nếu không có chính sách quản lý, chia sẻ tài nguyên phù hợp khi chúng hoạt động riêng lẻ
Nếu việc tích hợp dữ liệu thành công thì toàn bộ những khó khăn trên có thể được giải quyết, chính vì vậy vai trò của tích hợp dữ liệu trong doanh nghiệp và các tổ chức là vô cùng quan trọng
1.1.5 Các yếu tố quyết định đến việc lựa chọn giải pháp tích hợp dữ liệu
Cơ sở dữ liệu trong hệ thống OLTP và OLAP
Một trong những yếu tố quyết định đến thiết kế ứng dụng tích hợp là mục đích sử dụng cơ sở dữ liệu tích hơp Chúng ta có thể chia hệ thống thông tin thành hai loại đó là hệ thống xử lý giao dịch trực tuyến (hệ thống OLTP) và hệ thống phân tích dữ liệu trực tuyến(hệ thống OLAP) Hình vẽ dưới đây cho thấy sự khác nhau cũng như quan hệ giữa hệ thống OLAP và hệ thống OLTP
Thông thường hệ thống OLTP sẽ là nguồn cung cấp dữ liệu cho hệ thống OLAP để phân tích các dữ liệu chi tiết có được từ hệ thống OLTP thành các thông tin có giá trị
Hệ thống xử lý giao dịch trực tuyến: Là một hệ thống xử lý dữ liệu phổ biến trong các tổ chức, doanh nghiệp ngày nay, được thiết kế nhằm mục đích thu thập dữ liệu Đặc trưng của hệ thống này là xử lý một số lượng lớn các giao dịch trong thời gian ngắn (các giao dịch đơn giản: insert, update, delete) Yêu cầu đối với các hệ thống này là xử lý thật nhanh các truy vấn dữ liệu, duy trì tính toàn vẹn dữ liệu trong môi trường đa truy cập (đa người dùng) Hiệu năng của hệ thống OLTP có thể đo bằng số lượng giao dịch (transaction) trên mỗi giây Cơ sở dữ liệu trong hệ thống OLTP được sử dụng để lưu chi tiết các thông tin phục vụ cho các tác vụ, lược đồ dữ liệu thường ở chuẩn 3NF
Hệ thống phân tích dữ liệu trực tuyến: Trái ngược với hệ thống xử lý giao dịch trực tuyến, đặc chưng của OLAP system là có rất ít các giao dịch (transaction) hoạt động đồng thời Các truy vấn thường rất phức tạp, đòi hỏi phải kết hợp nhiều thông tin có trong cơ sở dữ liệu Thời gian phản hồi cho các truy vấn là thước đo đánh giá hiệu năng của các hệ thống OLAP Ứng dụng OLAP được sử dụng rộng rãi bởi các kỹ thuật khai phá dữ liệu Dữ liệu được lưu trữ trong cơ sở dữ liệu của hệ thống OLAP là các dữ liệu đã được tổng hợp lại, có tính lịch sử được lưu trữ trong các lược đồ đa chiều (thường là lược đồ hình sao hoặc bông tuyết) Điểm khác biệt giữa hệ thống OLTP và OLAP được tóm tắt lại ở bản so sánh dưới đây:
Tiêu chí Hệ thống OLTP Hệ thống OLAP
Dữ liệu hoạt động của tổ chức, là dữ liệu gốc ban đầu do người dùng đầu cuối nhập vào
Dữ liệu hợp nhất Dữ liệu OLAP đến từ nhiều nguồn khác nhau của hệ thống OLTP
Mục đích của dữ liệu Để kiểm soát và chạy các nghiệp vụ cơ bản, thiết yếu xảy ra hàng ngày Phục vụ người dùng ở cấp hoạt động trong tổ chức, doanh nghiệp
Phục vụ mục đích lập kế hoạch, giải quyết vấn đề, hỗ trợ ra quyết định Phục vụ cho các cấp bậc quản lý chiến lược của tổ chức, doanh nghiệp
Phản ánh dữ liệu nào
Cho thấy một ảnh chụp nhanh của các quá trình vận hành, kinh doanh liên tục của tổ chức, doanh nghiệp
Số liệu cung cấp góc nhìn đa chiều các hoạt động vận hành, kinh doanh trong tổ chức, doanh nghiệp
Thêm và sửa dữ liệu
Thêm, sửa nhanh chóng và được tạo bởi người dùng cuối ở cấp hoạt động
Chạy theo chu kỳ, theo lô lớn các giao dịch, như vào một giờ nhất định để tập hợp, tính toán và làm mới dữ liệu
Truy vấn Các truy vấn cơ bản, số lượng dòng dữ liệu trả về ít
Thường truy vấn với các câu truy vấn tính toán phức tạp dựa trên khối lượng dữ liệu rất lớn
Thường rất nhanh trong một vài giây
Phụ thuộc vào khối lượng dữ liệu cần xử lý và một lần xử lý một lô các truy vấn để tập hợp và tính toán dữ liệu có thể kéo dài hàng giờ đồng hồ
Tương đối nhỏ nếu dữ liệu lịch sử được cắt giảm và lưu trữ thích hợp
Thường rất lớn, do sự tồn tại của dữ liệu tổng hợp mang tính lịch sử, cần nhiều index hơn so với OLTP
Chuẩn hóa ở mức cao, cần nhiều table
Thường không cần chuẩn hóa, ít table hơn Dữ liệu thường theo 2 mô hình là sao (Star) hoặc bông tuyết (Snowflake)
Backup và phục hồi dữ liệu
Thường xuyên phải backup Dữ liệu hoạt động là cực kỳ quan trọng với hoạt động kinh doanh nên phải bảo trì backup cẩn thận, việc mất mát dữ liệu cũng đồng nghĩa với việc mất mát thời gian, tiền bạc và công sức nhập liệu cũng như liên quan đến trách nhiệm pháp lý
Thay vì phải backup đều đặn, khi mất mát dữ liệu xảy ra, nhiều hệ thống OLAP thường chọn một phương pháp đơn giản là load lại dữ liệu từ các nguồn dữ liệu gốc ở các hệ thống OLTP như là một giải pháp phục hồi dữ liệu.
Kho dữ liệu (Datawarehouse)
Khi kinh tế trở lên khó khăn, các đối thủ trong kinh doanh của các doanh nghiệp ngày càng nhiều thì việc phân tích dữ liệu càng trở lên quan trọng đối với các doanh nghiệp vì nó ảnh hưởng đến việc ra các quyết sách điều hành đường hướng phát triển của doanh nghiệp nhằm gia tăng lợi thế cạnh tranh Hệ thống OLAP ra đời nhằm giải quyết nhu cầu trên (Do hệ thống OLTP không thể đáp ứng được như đã nói ở trên)
Thuật ngữ Datawarehouse ra đời để ám chỉ những cơ sở dữ liệu phục vụ cho hệ thống OLAP
1.3.1 Định nghĩa kho dữ liệu Kho dữ liệu là một tập hợp dữ liệu hướng chủ đề, tích hợp, có tính thời gian và không thay đổi để hỗ trợ quá trình tạo quyết định quản lý - W H Inmon [4]
Kho dữ liệu là một cơ sở dữ liệu quan hệ hay một cơ sở dữ liệu đa chiều được thiết kế cho mục đích truy vấn và phân tích hơn là xử lý các giao dịch Kho dữ liệu tập hợp các dữ liệu lịch sử và dữ liệu đã phân tích lấy được từ nhiều nguồn Kho dữ liệu tách riêng việc phân tích với việc xử lý giao dịch, và cho phép hợp nhất dữ liệu từ nhiều nguồn dữ liệu khác nhau Kho dữ liệu thường lưu trữ dữ liệu của nhiều tháng hay nhiều năm để hỗ trợ phân tích Dữ liệu trong một kho dữ liệu thường được đưa vào thông qua một quá trình trích xuất dữ liệu, chuyển đổi, và tải vào (Extract Transform Load - ETL) từ một hay nhiều nguồn dữ liệu như các ứng dụng On-Line Transaction Processing – OLTP hay các nhà cung cấp dữ liệu bên ngoài Người sử dụng kho dữ liệu sẽ thực hiện các phân tích dữ liệu thường có liên quan đến thời gian
Các phân tích phức tạp hơn bao gồm phân tích xu hướng và khai thác dữ liệu, sử dụng các dữ liệu tồn tại để dự báo các xu hướng hay dự báo tương lai Kho dữ liệu cung cấp cơ sở cho một môi trường kinh doanh thông minh
1.3.2 Các đặc trƣng của kho dữ liệu Hướng chủ đề: Dữ liệu trong kho dữ liệu được tổ chức xung quanh các chủ đề chính như khách hàng, sản phẩm, sản xuất Nó tập trung vào việc mô hình hóa và phân tích dữ liệu cho các nhà ra quyết định mà không tập trung vào các xử lý nghiệp vụ thông thường, tức là các dữ liệu không hữu ích cho hệ thống hỗ trợ ra quyết định sẽ được loại bỏ Cung cấp cho người dùng một khung nhìn toàn vẹn, đơn giản và đầy đủ về các sự kiện quanh các chủ đề
Tính tích hợp: Là đặc tính quan trọng nhất của kho dữ liệu Dữ liệu trong kho dữ liệu được xây dựng bằng cách tổng hợp dữ liệu từ nhiều nguồn khác nhau và các nguồn có tổ chức khác nhau như: Cơ sở dữ liệu, các file excel, các flat file hoặc các raw file Các kỹ thuật làm sạch, sắp xếp, rút gọn dữ liệu sẽ được áp dụng nhằm đảm bảo tính nhất quán của dữ liệu
Tính ổn định: Dữ liệu trong kho dữ liệu được chuyển đổi từ môi trường tác nghiệp và được lưu trữ trong một thời gian dài, khi dữ liệu được chuyển đổi vào đây thì các thao tác cập nhật và xóa dữ liệu thường không xảy ra Dữ liệu trong kho dữ liệu chỉ có hai thao tác: Chèn mới và đọc dữ liệu
Biến đổi theo thời gian: Dữ liệu trong kho dữ liệu thường có tính lịch sử và gắn với thời gian Phạm vi về thời gian của dữ liệu được lưu trữ trong kho dữ liệu dài hơn so với các hệ thống tác nghiệp, nếu như dữ liệu tác nghiệp chỉ có giá trị hiện thời thì kho dữ liệu cung cấp thông tin lịch sử lâu dài vì thế nó cung cấp một cái nhìn đầy đủ và nhiều thông tin hơn Trong kho dữ liệu, thời gian được lưu trữ như một thành phần của khóa chính để đảm bảo tính duy nhất của dữ liệu và cung cấp một đặc trưng thời gian của dữ liệu Dữ liệu trong kho luôn gắn với một giá trị thời gian nhất định
1.3.3 Kiến trúc của kho dữ liệu
Về cơ bản kho dữ liệu sẽ bao gồm 04 thành phần:
Nguồn dữ liệu (Data Sources)
Khu vực xử lý (Staging Area)
Công cụ truy cập dữ liệu hay người khai thác dữ liệu(Users) Các thành phần này được mô tả ở hình vẽ dưới đây:
Hình 1.4: Kiến trúc kho dữ liệu
Dữ liệu trong kho dữ liệu đươc tổng hợp từ rất nhiều nguồn dữ liệu khác nhau và có cấu trúc dữ liệu khác nhau:
- Dữ liệu từ hệ thống OLTP: Đây là nguồn dữ liệu chính để xây dựng kho dữ liệu, chứa các dữ liệu chi tiết hiện tại của hệ thống tác nghiệp
- Dữ liệu từ hệ thống OLAP: Đây là dữ liệu đã được tổng hợp từ các nguồn dữ liệu của các hệ thống phân tích dữ liệu khác và được tổ chức lại theo nhiều phương pháp khác nhau
Khu vực xử lý (Staging Area): Ở khu vực này, các kỹ thuật làm sạch và chuyển đổi sẽ được thực thi nhằm đảm bảo tính nhất quán dữ liệu trước khi đưa vào kho dữ liệu Thông thường người ta sử dụng các công cụ trích xuất, chuyển đổi và nạp dữ liệu (ETL) Đúng như tên gọi công cụ này thực hiện các thao tác trích xuất dữ liệu, chuyển đổi dữ liệu, tải dữ liệu vào kho dữ liệu
Kho dữ liệu là cơ sở dữ liệu được tổ chức lại theo mô hình hình sao hay mô hình bông tuyết Mô hình được phi chuẩn hóa, chấp nhận sự dư thừa dữ liệu trong lưu trữ dữ liệu, chính vì mô hình dữ liệu đơn giản hơn nên việc truy vấn dễ dàng hơn và tốc độ xử lý cũng nhanh hơn mô hình dữ liệu được chuẩn hóa Ngoài ra kho dữ liệu còn chứa các dữ liệu khác như:
Siêu dữ liệu: Đây là dữ liệu mô tả các dữ liệu được lưu trữ trong kho dữ liệu
Siêu dữ liệu định nghĩa nên các thành phần của kho dữ liệu, cách thức dữ liệu được tải vào kho dữ liệu, lưu lại quá trình hoạt động của kho dữ liệu Siêu dữ liệu gồm có các dạng sau:
- Dữ liệu định nghĩa và cách thức ánh xạ dữ liệu vào các bảng trong kho dữ liệu
- Dữ liệu định nghĩa và giải thích cấu trúc của các bảng bên trong kho dữ liệu
- Dữ liệu định nghĩa cấu trúc dữ liệu ở hệ thống nguồn
- Dữ liệu định nghĩa và chú thích về tiến trình ETL
- Dữ liệu định nghĩa các luật (quy định) về chất lượng dữ liệu, các mức độ sai lệch của dữ liệu và cách thức xử lý
- Dữ liệu theo dõi tiến trình xử lý các bản ghi trong kho dữ liệu
- Dữ liệu chứa các sự kiện hoạt động của các ứng dụng
Bảng sự kiện tổng hợp: Các bảng tổng hợp này lưu giữ các dữ liệu tính toán được nhằm trả lời một cách nhanh nhất các câu hỏi của người dùng đưa ra Đây là dữ liệu có thể tính toán được từ các bảng khác tuy nhiên để tăng tốc độ xử lý, dữ liệu này được lưu trữ để không phải tính toán lại mỗi khi có truy vấn lặp lại
Là các công cụ khai thác dữ liệu trong kho dữ liệu được cung cấp cho người dùng Ở mức thấp nhất, đó có thể là một công cụ hỗ trợ truy vấn SQL đơn giản Ở mức cao hơn, đó có thể là các bộ công cụ chuyên về báo cáo như Business Objects, Microsoft Business Intelligent, Oracle Business Intelligent…
1.3.4 Mô hình dữ liệu sử dụng trong kho dữ liệu
Hiện trạng mô hình dữ liệu ngành hải quan
Trong quá trình tin học hóa các hoạt động quản lý hành chính của mình, ngành Hải quan cũng không tránh khỏi vấn đề về tình trạng phân tán dữ liệu bởi việc vận hành các hệ thống rời rạc được đặt riêng lẻ ở tổng cục, cục và chi cục Hàng loạt các hệ thống ra đời với mục tiêu ban đầu là giải quyết một phần nghiệp vụ trong từng đơn vị bộ phận của hải quan theo mô hình phân tán mà không tính đến các yêu cầu tổng thể như: Hệ thống thông tin quản lý tờ khai XNK; Hệ thống thông tin quản lý kế toán thuế XNK; Hệ thống thông tin quản lý thông tin giá tính thuế; Hệ thống thông tin quản lý thông tin vi phạm; Hệ thống thông tin thống kê tập trung; Hệ thống thống kê thuế theo từng dòng hàng; Hệ thống thông tin quản lý hàng gia công; Hệ thống tiếp nhận khai báo từ xa đối với các loại hình XNK; Chương trình quản lý loại hình nhập SXXK;
Chương trình giám sát container cảng biển; Chương trình NetOffice; Hệ thống thông quan điện tử
Quy trình thủ tục Hải quan hiện nay đang áp dụng theo các văn bản hướng dẫn như sau:
- Nghị định 154/2005/NĐ-CP ngày 15/12/2005
- Thông tư 112/2005/TT-BTC ngày 15/12/2005
- Thông tư 113/2005/TT-BTC ngày 15/12/2005
- Thông tư 40/2008/TT-BTC ngày 21/05/2008
- Quyết định 874/QĐ-TCHQ ngày 15/05/2006
Các khâu chính như sau:
Bước 1: Tiếp nhận hồ sơ đăng ký tờ khai
1 - SLXNK: Nhập các thông tin đăng ký tờ khai, tra cứu thông tin phân loại doanh nghiệp, kiểm tra phân luồng tờ khai
2 - GTT22: Nhập thông tin tờ khai trị giá (nếu có)
3 - KT559: Nhập thông tin số thuế phải nộp của tờ khai
4 - KT559: Tra cứu tình trạng nợ thuế của doanh nghiệp (trong hạn, quá hạn, cưỡng chế),
5 - ViCum: Tra cứu thông tin vi phạm của doanh nghiệp
6 - Tra cứu thông tin doanh nghiệp đã từng nợ thuế quá hạn 90 ngày (cưỡng chế) trong thời hạn 365 ngày kể từ ngày đăng ký tờ khai
(Cục Hải quan TP HCM quy định thêm các bước tra cứu 4,5,6)
Bước 2: Kiểm tra chi tiết hồ sơ
1 - GTT22: Tra cứu thông tin, xác định giá tính thuế
2 - KT559: Tính lại thuế, ra quyết định điều chỉnh thuế (nếu có)
3 - SLXNK: Cập nhật lại những thay đổi thông tin tờ khai phát sinh tại bước này Cập nhật kết quả kiểm tra hồ sơ
Bước 3: Kiểm tra thực tế hàng hóa
1 - SLXNK: Nhập thông tin kết quả kiểm hoá
2 - GTT22: Nhập thông tin chi tiết hàng hoá Bước 4: Phúc tập hồ sơ
1 - GTT22: Xác nhận thông tin tờ khai đã phúc tập
1.4.3 Những tồn tại và nhu cầu bổ sung Tồn tại:
- Các chương trình ứng dụng mới chỉ đáp ứng được các yêu cầu về nghiệp vụ hải quan đơn lẻ, vì vậy thực hiện một quy trình nghiệp vụ thông quan phải thực hiện thông qua rất nhiều chương trình
- Đa số các hệ thống được xây dựng theo mô hình phân tán nên phải đầu tư nhiều, dàn trải Mỗi chi cục đều phải đầu tư các thiết bị phần cứng, có cán bộ chuyên trách để vận hành các hệ thống Phải đầu tư thiết bị lưu trữ rất tốn kém cho từng Chi cục Dữ liệu truyền nhận hàng ngày lớn chiếm dụng hết đường truyền, ảnh hưởng đến việc truyền tải các thông tin khác
- Không đảm bảo an ninh an toàn dữ liệu Không kiểm soát được việc hiệu chỉnh, sửa đổi, xóa dữ liệu, bổ sung danh mục chuẩn Không đảm bảo được việc sao lưu dữ liệu tại các Chi cục và khả năng vận hành liên tục của hệ thống
- Người sử dụng phải có trình độ cao Công chức hải quan phải có nhiều kinh nghiệm, kỹ năng trong thao tác nghiệp vụ để sử dụng nhiều ứng dụng khác nhau cho việc hoàn thành một quy trình thủ tục
- Các hệ thống không có tính nhất quán Việc quản lý phiên bản, cập nhật và bảo trì các ứng dụng và cơ sở dữ liệu ứng dụng tại Chi cục có nhiều khó khăn Khả năng trao đổi dữ liệu giữa các hệ thống có hạn chế
- Hệ thống CNTT tại Trung tâm dữ liệu chưa thể đáp ứng làm “Trung tâm dữ liệu tập trung” theo đúng nghĩa, chưa được xây dựng theo đúng mô hình “Data Center”
Nhu cầu cần bổ sung:
- Xây dựng thành một hệ thống thống nhất đáp ứng được đầy đủ các khâu trong quy trình thông quan
- Hệ thống xử lý tập trung tại cấp Cục, Tổng Cục
- Đảm bảo an ninh, an toàn dữ liệu tính sẵn sàng của hệ thống
- Xây dựng trung tâm dữ liệu theo mô hình “Data center”.
Hiện trạng ứng dụng CNTT tại cục Hải quan TP HCM
Do chiếm tới gần 50% dữ liệu xuất nhập khẩu của toàn ngành hải quan nên cục Hải quan TP Hồ Chí Minh là địa điểm lựa chọn cho việc thử nghiệm giải pháp tích hợp dữ liệu được đề xuất trong luận văn Chi tiết hiện trạng ứng dụng CNTT tại cục Hải quan TP Hồ Chí Minh được mô tả như ở dưới đây
Toàn bộ các Chi cục trực thuộc đều có đường kết nối MPLS, UTP hoặc Leaseline tới TTDL Cục Hải quan TP HCM, các Chi cục nói trên đều đã được triển khai hệ thống mạng nội bộ (LAN) Mỗi chi cục đều đã được trang bị máy chủ PC Server, máy trạm phục vụ xử lý thông tin, quy trình nghiệp vụ
Bảng và hình sau mô tả hiện trạng kết nối mạng của Cục hải quan TP Hồ Chí Minh
Số lƣợng đuờng kêt nối
Cục Hải quan Hồ Chí Minh 16 16
1 Trụ sở Cục Hải quan HCM 1
2 Chi cục HQ cảng KV1 - Tâng Cảng 2 256 MPLS
3 Chi cục HQ cảng KV2 2 256 MPLS
4 Chi cục HQ cảng KV3 - Bến Nghé 2 256 MPLS
5 Chi cục HQ KCX Tân Thuận 2 256 MPLS
Hình 1.5: Mô hình hạ tầng mạng Cục Hải quan TP Hồ Chí Minh
6 Chi cục HQ KCX Linh Trung 1 2 256 MPLS
7 Chi cục HQ KV4 - ICD1 2 256 MPLS
8 Chi cục HQ KV3 - VICT 2 256 MPLS
9 Chi cục HQ Sân bay Tân Sơn Nhất 2 256 MPLS
10 Chi cục HQ Bưu Điện 2 256 MPLS
11 Chi cục HQ KV4 - ICD4 2 256 MPLS
12 Chi cục HQ KVI - Cát Lái 2 256 MPLS
13 Chi cục HQ KCX Linh Trung 2 2 256 MPLS
14 Chi cục HQ Gòn - KV4 - ICD2 2 256 MPLS
17 KCX Linh Trung - KCN cao 2 256 MPLS
18 Chi cục Hải quan Đầu tư 1 100M UTP
19 Chi cục Hải quan Gia công 1 100M UTP
20 Chi cục Hải quan Điện tử 1 100M UTP
21 Chi cục Kiểm tra sau thông quan 1 512 Leaseline
Danh sách thiết bị được sử dụng trong cục:
STT Tên thiết bị Chủng loại Nơi lắp đặt
1 Modem Dialup Trung tâm dữ liệu
2 Modem Leaseline Trung tâm dữ liệu
Trung tâm dữ liệu Các Chi cục
Cisco 4506 Cisco 2950 Cisco 3750 Loại khác
Trung tâm dữ liệu Các Chi cục
IBM232 IBM235 IBM236 IBM346 IBM365
Trung tâm dữ liệu Các Chi cục
6 Total Storage IBM DS4300 Trung tâm dữ liệu
7 SAN Switch IBM Trung tâm dữ liệu
8 Tape Backup IBM Trung tâm dữ liệu
1.5.3 Các ứng dụng đã triển khai
Hiện nay các khâu nghiệp vụ chính tại các Chi cục và đơn vị nghiệp vụ của Hải quan TP Hồ Chí Minh đều đã có phần mềm ứng dụng phục vụ, bao gồm toàn bộ các ứng dụng đã liệt kê trong Chương I phần 1.4.1 đã nói ở trên Chi tiết thực trạng triển khai được liệt kê ở bảng dưới đây:
STT Tên ứng dụng Chức năng Công nghệ Mô hình triển khai
1 Hệ thống thông tin quản lý tờ khai XNK – SLXNK
Cập nhật thông tin khai báo tờ khai, C/O hàng hoá XNK của doanh nghiệp, giao diện với hệ thống QLRR để phân luồng tờ khai, quản lý thông tin kết quả kiểm hoá và tính thuế Ứng dụng dạng Windows form viết bằng
VB 6.0 với CSDL SQL Server
Triển khai tại tất cả chi cục, Trung tâm Truyền nhận dữ liệu (dạng file) hàng ngày với Trung tâm DL&CNTT
2 Hệ thống thông tin quản kế toán thuế XNK (KT559)
Quản lý theo dõi tình hình nợ thuế, nộp thuế, phạt chậm nộp thuế, hoàn thuế, truy thu thu thuế của doanh nghiệp; kế toán thuế ngành Hải quan Ứng dụng dạng windows form viết bằng
VB 6.0 với CSDL SQL Server
Triển khai tại tất cả chi cục, Phòng nghiệp vụ Truyền nhận dữ liệu (dạng file) hàng ngày với phòng nghiệp vụ qua Trung tâm Trung tâm DL&CNTT
3 Hệ thống thông tin quản lý thông tin giá tính thuế - GTT22
Cập nhật thông tin tờ khai trị giá, kết quả xác định, kiểm tra, phúc tập trị giá của các lô hàng nhập khẩu Tra cứu xác định giá cho các lô hàng nhập khẩu của doanh nghiệp; Cập nhật dữ liệu giá Ứng dụng dạng windows form viết bằng
VB 6.0 với CSDL SQL Server
Triển khai tại tất cả chi cục, Phòng trị giá tính thuế Truyền nhận dữ liệu (dạng file) hàng ngày với Phòng trị giá tính thuế qua Trung tâm Trung tâm DL&CNTT
4 Hệ thống thông tin quản lý thông tin vi phạm - VICUM
Cập nhật và quản lý thông tin kết quả xử lý các vi phạm của doanh nghiệp, phục vụ việc đánh giá doanh nghiệp và hỗ trợ quyết định phân luồng xử lý các tờ khai của doanh nghiệp Ứng dụng dạng windows form viết bằng
VB 6.0 với CSDL SQL Server
Triển khai tại tất cả chi cục, Phòng TMXL- CBL Truyền nhận dữ liệu (dạng file) hàng ngày với Phòng TMXL- CBL qua Trung tâm Trung tâm DL&CNTT
5 Hệ thống thông tin Thống kê tập trung
- Cập nhật thông tin PMD, C/O, hành khách XNC
- Khai thác dữ liệu của Ứng dụng dạng Web viết bằng VB.Net với CSDL
Triển khai tập trung tại cấp Cục, tất cả chi cục sử dụng
STT Tên ứng dụng Chức năng Công nghệ Mô hình triển khai
6 Hệ thống thông tin quản Thống kê thuế theo từng dòng hàng - TKT
Báo cáo thống kê định kỳ và bất thường chi tiết theo thông tin của từng loại hàng hoá XNK dựa trên dữ liệu của SLXNK và KT559 Ứng dụng dạng form viết bằng VB 6.0 với CSDL SQL Server
Triển khai tại tất cả chi cục Truyền nhận dạng file dữ liệu hàng ngày với Trung tâm
7 Chương trình quản lý hàng gia công
Cập nhật và quản lý thông tin tờ khai hàng gia công, hợp đồng, phụ kiện, nguyên phụ liệu, sản phẩm và thanh lý nguyên phụ liệu hàng gia công Ứng dụng dạng form viết bằng VB 6.0 với CSDL SQL Server
Triển khai tại Chi cục
HQ quản lý hàng đầu tư và Chi cục HQ quản lý hàng gia công và các khu chế xuất
8 Hệ thống Tiếp nhận khai báo từ xa đối với các loại hình XNK
Cho phép các doanh nghiệp khai báo thông tin tờ khai gia công thông qua kết nối từ xa đến Cục Hải quan TP
Hồ Chí Minh Chương trình này chỉ phục vụ số liệu đầu vào cho hệ thống Quản lý hàng Gia công, SXXK Ứng dụng dạng web với CSDL SQL Server
Triển khai tập trung tại Trung tâm và các Chi cục
9 Trang web Quản lý rủi ro (RISK- MAN)
Tra cứu thông tin liên quan đến phân loại doanh nghiệp, thang điểm rủi ro và hỗ trợ quyết định phân luồng tờ khai, xác định ân hạn nợ thuế của doanh nghiệp Ứng dụng dạng web viết bằng
ASP.NET với CSDL SQL Server
Triển khai tập trung tại Tổng cục Các chi cục truy xuất qua mạng WAN
10 Chương trình quản lý loại hình nhập sản xuất hàng xuất khẩu
Cập nhật thông tin nguyên phụ liệu, sản phẩm tờ khai loại hình nhập, xuất hàng sản xuất xuất khẩu Hỗ trợ cho thanh khoản các tờ Ứng dụng dạng web viết bằng
ASP.NET với CSDL SQL Server
Triển khai tại 2 chi cục: Đầu tư và Gia công Tuy nhiên chưa được sử dụng và vận hành chính thức
STT Tên ứng dụng Chức năng Công nghệ Mô hình triển khai khai nhập nguyên phụ liệu sản xuất hàng xuất khẩu
11 Chương trình Giám sát container cảng biển
Quản lý thông tin tàu biển, container xuất nhập khẩu hàng hoá Ứng dụng dạng form viết bằng VB 6.0 với CSDL SQL Server
Triển khai tại Chi cục Hải quan KV3 - Cảng VICT
Quản lý thông tin văn bản đi, đến và hồ sơ công việc Ứng dụng dạng web viết bằng ASP với CSDL SQL Server
Triển khai tập trung tại văn phòng Cục, các đơn vị khai thác thông qua mạng WAN
13 Hệ thống Thông quan điện tử
Phục vụ quy trình thông quan điện tử đối với loại hình kinh doanh, hiện nay đang triển khai mở rộng tiếp để quản lý được các loại hình gia công, sản xuất xuất khẩu Ứng dụng dạng web viết bằng
Triển khai tại Chi cục
HQ điện tử, Trung tâm DL&CNTT Doanh nghiệp kết nối thông qua hệ thống VAN để khai báo thông tin và tiếp nhận các thông tin phản hồi từ cơ quan Hải quan
MỘT SỐ KỸ THUẬT, CÔNG NGHỆ TÍCH HỢP DỮ LIỆU31
Các kỹ thuật tích hợp dữ liệu
Hiện nay trên thế giới có ba kỹ thuật chính được sử dụng để tích hợp dữ liệu đó là : Kỹ thuật Hợp nhất (consolidation), kỹ thuật liên hiệp (federation) và kỹ thuật lan truyền (propagation) Hầu hết các giải pháp tích hợp dữ liệu hiên tại đều sử dụng đến các kỹ thuật này Chúng ta sẽ phân tích chi tiết từng kỹ thuật này
2.1.1 Kỹ thuật hợp nhất dữ liệu
Kỹ thuật hợp nhất dữ liệu là kỹ thuật lấy dữ liệu từ nhiều nguồn khác nhau và kết hợp chúng lại thành một cơ sở dữ liệu Cơ sở dữ liệu này có thể được sử dụng để phục vụ việc báo cáo, phân tích như trong kho dữ liệu (data warehouse) hoặc có thể được sử dụng như một cơ sở dữ liệu xử lý giao dịch trực tuyến
Hình 2.1: Kỹ thuật hợp nhất dữ liệu
Do phải kết hợp dữ liệu từ nhiều nguồn khác nhau thành vào một cơ sở dữ liệu mới nên thường có độ trễ (latency) khi cập nhật dữ liệu ở cơ sở dữ liệu gốc nếu dữ liệu nguồn bị thay đổi Tùy thuộc vào từng yêu cầu nghiệp vụ mà độ trễ này có thể chỉ là vài giây, hoặc vài giờ hoặc thậm chí là vài ngày Thuật ngữ "gần thời gian thực" được sử dụng nếu như độ trễ của việc cập nhật dữ liệu thấp Nếu độ trễ việc cập nhật dữ liệu từ nguồn đến đích là bằng không, chúng ta có hệ thống thời gian thực, tuy nhiên rất khó để đạt được điều này
Có hai cơ chế của việc lấy dữ liệu từ cơ sở dữ liệu nguồn sang cơ sở dữ liệu đích là Pull (kéo) và Push (đẩy) Đối với những hệ thống có độ trễ cao (không yêu cầu cần phải cập nhật ngay) thì cơ chế pull được sử dụng, thông thường việc thực hiện sẽ được xử lý trong các ứng dụng tích hợp chạy ngầm xử lý theo lô (batch services) Cứ đến khoảng thời gian nhất địch hoặc sau những khoảng thời gian nhất định, ứng dụng này sẽ thực hiện việc lấy dữ liệu từ các cơ sở dữ liệu nguồn về xử lý và đưa nó vào cơ sở dữ liệu gốc Đối với những hệ thống yêu cầu thời gian cập nhật thay đổi ở mức thấp (gần thời gian thực) thì cơ chế push thường được sử dụng Việc cập nhật dữ liệu sẽ được diễn ra một cách liên tục bởi các ứng dụng tích hợp Để đáp ứng được yêu cầu này thì các ứng dựng tích hợp cần phải có cơ chế phát hiện ra những thay đổi ở dữ liệu nguồn và ngay lập tức lấy được dữ liệu thay đổi này để đưa vào cơ sở dữ liệu đích Kỹ thuật CDC (change data capture) thường được sử dụng để lấy được những dữ liệu bị thay đổi trong các ứng dụng tích hợp mà hỗ trợ kỹ thuật hợp nhất dữ liệu
Ngoài ra, chúng ta có thể kết hợp cơ chế pull và push trong một số trường hợp thực tế Dưới đây là một mô hình kết hợp pull và push:
Hình 2.2: Mô hình kết hợp cơ chế pull và push
Cơ sở dữ liệu được tích hợp bằng cách sử dụng kỹ thuật hợp nhất dữ liệu có thể được sử dụng cho các truy vấn, cho các báo cáo thống kê, chúng it khi được sử dụng cho việc cập nhật vì vấn đề đồng bộ dữ liệu từ cơ sơ sở dữ liệu đích vào cơ sở dữ liệu nguồn Ưu điểm của kỹ thuật này là cho phép chúng ta có thể chuyển đổi (tổ chức lại dữ liệu, làm cho phù hợp, làm sạch và kết hợp dữ liệu) một số lượng lớn dữ liệu từ các cơ sở dữ liệu nguồn sang cơ sở dữ liệu đích Tuy nhiên, chúng lại có nhược điểm là lãng phí các tài nguyên sử dụng dùng để tính toán, và lưu trữ lại dữ liệu đã được hợp nhất
Kỹ thuật hợp nhất dữ liệu là kỹ thuật chính được sử dụng trong việc xây dựng kho dữ liệu Trong môi trường của kho dữ liệu công nghệ ETL (extract, transform, and load) là một trong những công nghệ phổ biến dùng để hỗ trợ việc hợp nhất dữ liệu, ngoài ra còn một công nghệ khác là ECM (enterprise content management) Hầu hết các công nghệ ECM đều tập trung vào việc hợp nhất và quản lý dữ liệu phi cấu trúc chẳng hạn như các báo cáo, các webpages…
2.1.2 Kỹ thuật liên hợp dữ liệu
Kỹ thuật liên hợp dữ liệu là kỹ thuật tạo ra một khung nhìn ảo (virtual view) của một hoặc nhiều nguồn dữ liệu Khi một ứng dụng nghiệp vụ thực hiện truy vấn vào khung nhìn ảo, cỗ máy liên hợp dữ liệu (data federation engine) sẽ lấy dữ liệu từ các nguồn dữ liệu tương ứng (được định nghĩa trong khung nhìn) để kết hợp lại và trả kết quả về cho ứng dụng nghiệp vụ Hình dưới đây mô tả kỹ thuật liên hợp dữ liệu
Hình 2.3: Kỹ thuật liên hợp dữ liệu
Từ định nghĩa trên, chúng ta có thể thấy kỹ thuật liên hợp dữ liệu sử dụng cơ chế pull để lấy dữ liệu từ các nguồn dữ liệu khi có có yêu cầu EII (Enterprise Information Integration) là một trong những công nghệ hỗ trợ kỹ thuật này
Một trong những thành phần chính của hệ thống liên hợp là dữ liệu metadata, cỗ máy liên hợp dữ liệu sẽ sử dụng dữ liệu metadata này để truy cập vào cơ sở dữ liệu nguồn Trong một số trường hợp đơn giản, dữ liệu metadata chỉ bao gồm duy nhất một khung nhìn ảo định nghĩa các ánh xạ đến các file dữ liệu nguồn Trong giải pháp cao hơn, dữ liệu metadata có thể còn chứa thêm các thông tin chi tiết của các nguồn dữ liệu như số lượng các bản ghi ở các nguồn dữ liệu, đường dẫn để có thể truy cập đến nó, những thông tin này sẽ giúp ích cho việc tối ưu hóa tốc độ truy cập đến các nguồn dữ liệu cho ứng dụng sử dụng giải pháp liên hợp dữ liệu
Một vài giải pháp sử dụng kỹ thuật liên hợp dữ liệu còn cung cấp thêm chức năng để người dùng đưa vào các dữ liệu metadata dùng để mô tả mối quan hệ ngữ nghĩa giữa các dữ liệu nguồn Ưu điểm của kỹ liên hợp dữ liệu là nó không lãng phí tài nguyên để lưu trữ dữ liệu hợp nhất từ các nguồn dữ liệu khác như kỹ thuật hợp nhất dữ liệu đã nói ở trên
Nhược điểm của kỹ thuật này là khi số lượng nguồn dữ liệu tăng lên thì việc kết hợp các dữ liệu này là khá phức tạp, đặc biệt nếu có một lượng lớn dữ liệu trong mỗi nguồn thì tốc độ xử lý sẽ là nhược điểm lớn của nó
Từ những phân tích trên chúng ta có thể thấy giải pháp này có thể được cân nhắc sử dụng nếu chi phí dành cho việc áp dụng kỹ thuật hợp nhất dữ liệu lớn hơn giá trị kinh tế mà hệ thống hợp nhất đem lại hoặc do vấn đề bản quyền dẫn đến không được phép tạo ra các bản lưu khác
2.1.3 Kỹ thuật lan truyền dữ liệu
Kỹ thuật lan truyền dữ liệu là kỹ thuật sao chép dữ liệu từ vị trí này đến vị trí khác Hình vẽ dưới đây mô tả kỹ thuật lan truyền dữ liệu :
Hình 2.4: Kỹ thuật lan truyền dữ liệu
Các ứng dụng triển khai kỹ thuật này thường hoạt động trực tuyến và sử dụng cơ chế push để đưa dữ liệu đến đích Quá trình lan truyền dữ liệu có thể được sử dụng bằng phương thức truyền dữ liệu đồng bộ hoặc truyền dữ liệu bất đồng bộ Phương thức truyền dữ liệu đồng bộ yêu cầu quá trình cập nhật dữ liệu nguồn và dữ liệu đích phải được tiến hành trong cùng một phiên giao dịch Phương pháp truyền dữ liệu bất đồng bộ cho phép việc cập nhật dữ liệu đích có thể tiến hành ở một thời điểm khác không nằm trong giao dịch cập nhật dữ liệu nguồn điều này giúp đảm bảo tốc độ đối với những hệ thống OLTP Yêu cầu đối với cả hai phương thức truyền dữ liệu này là cần phải đảm bảo được dữ liệu phải được cập nhật đến đích Hiện nay, hầu hết các công nghệ lan truyền dữ liệu đều hỗ trợ đồng bộ dữ liệu theo cả hai chiều Các công nghệ EAI (Enterprise Application Integration) và EDR (Enterprise Data Replication) là những ví dụ về công nghệ hỗ trợ kỹ thuật lan truyền dữ liệu Ưu điểm lớn nhất của việc sử dụng kỹ thuật lan truyền dữ liệu đó là dữ liệu có thể cập nhật theo cơ chế thời gian thực hoặc gần thời gian thực, dữ liệu được đảm bảo được cập nhật đến đích (có thể theo cả 2 chiều) Kỹ thuật lan truyền dữ liệu có thể được sử dụng cho việc cân bằng tải, lưu trữ và phục hồi hoặc được sử dụng trong hệ thống phòng chống thảm họa Tuy nhiên, việc chuyển đổi dữ liệu có hạn chế hơn so với kỹ thuật hợp nhất dữ liệu
Các công nghệ tích hợp dữ liệu
Hiện nay có rất nhiều công nghệ được sử dụng để triển khai cho các kỹ thuật tích hợp dữ liệu đã nói ở trên Các công nghệ chính thường được sử dụng hiện nay là ETL (Extract, Transform, Load); EII (Enterprise Information Integration); EAI (Enterprise Application Integration) ; EDR (Enterprise Data Replication) ; ECM (Enterprise Content Management)
Công nghệ ETL là công nghệ cho phép kết xuất dữ liệu từ cơ sở dữ liệu nguồn, chuyển đổi dữ liệu đó thành dữ liệu phù hợp với yêu cầu nghiệp vụ từ đó đưa dữ liệu này vào cơ sở dữ liệu gốc
Dữ liệu có thể được kết xuất theo cơ chế pull và push Chế độ pull thường được sử dụng trong các ứng dụng chạy ngầm (batch application) và thực hiện theo thời gian đã ấn định trước Chế độ push thường được sử dụng trong các ứng dụng tích hợp trực tuyến và thực hiện khi có các sự kiện thay đổi dữ liệu phát sinh
Công việc thực hiện trong ETL được mô tả trong ba bước chính sau:
Bước 1 : Kết xuất dữ liệu Kết xuất dữ liệu từ các nguồn dữ liệu Các nguồn dữ liệu thường khác nhau cả về cấu trúc và thường không đồng nhất nên cần chú ý chọn sản phẩm tích hợp có hỗ trợ nguồn dữ liệu mong muốn
Bước 2: Chuyển đổi dữ liệu Tại bước này các công đoạn sau có thể được sử dụng:
Làm sạch dữ liệu (Ví dụ: đổi giá trị bị thiếu null thành giá trị mặc định, chuẩn hóa dữ liệu Nam là 0 và Nữ là 1…)
Lọc dữ liệu : Lựa chọn các trường dữ liệu để xử lý, các bản ghi dữ liệu sẽ xử lý
Chia nhỏ dữ liệu : Chia một trường dữ liệu trong dữ liệu nguồn ra các trường nhỏ hơn
Hợp nhất dữ liệu từ các dữ liệu đã lấy ở bước 1
Loại bỏ những dữ liệu không đủ điều kiện để đưa vào dữ liệu đích
Bước 3 Đưa dữ liệu đã được xử lý vào cơ sở dữ liệu đích
Các bước xử lý thể hiện qua hình vẽ dưới đây :
Hình 2.5: Tiến trình trong ETL
Công nghệ EII là công nghệ cung cấp một khung nhìn ảo của các dữ liệu phân tán Khung nhìn ảo này có thể sử dụng cho các truy vấn lấy dữ liệu phục vụ cho các chức năng của hệ thống trong tổ chức, doanh nghiệp hoặc dữ liệu phục vụ phân tích, báo cáo Công nghệ EII hỗ trợ kỹ thuật liên hợp dữ liệu đã nói ở trên để tích hợp dữ liệu
Mục đích của EII là cho phép các ứng dụng có thể nhìn truy cập đến các cơ sở dữ liệu phân tán như là đang làm việc với một cơ sở dữ liệu duy nhất
Thông thường ứng dụng EII sẽ xử lý các truy vấn đến dữ liệu bằng cách chia câu truy vấn thành các thành phần riêng biệt (tương ứng với mỗi nơi đặt dữ liệu nguồn được yêu cầu trong truy vấn) và gửi các thành phần này đến dữ liệu nguồn tương ứng để thực thi truy vấn EII sẽ nhận kết quả trả về, kết hợp các dữ liệu này thành một và
Các sản phẩm công nghệ EII được phát triển dựa trên hai nền tảng công nghệ khác biệt (dựa vào loại dữ liệu mà chúng tương tác) đó là hệ quản trị cơ sở dữ liệu quan hệ và XML Tuy nhiên, theo xu hướng, hầu hết các sản phẩm EII hiện nay đều hỗ trợ cả hai nền tảng dữ liệu này (SQL cho DBMS và Xpath,XQuery cho XML)
Hầu hết các sản phẩm EII hiện nay đều được phát triển dựa trên công nghệ java
Tốc độ xử lý truy vấn và khả năng tối ưu hóa các truy vấn là những nhân tố quan trọng trong việc lựa chọn sản phẩm EII Một số sản phẩm EII còn cung cấp tính năng lưu trữ kết quả truy vấn vào bộ nhớ đệm và cho phép người quản trị có thể cấu hình được các quy tắc để quyết định dữ liệu trong bộ nhớ đệm khi nào hợp lệ và khi nào cần phải làm mới lại
EAI là công nghệ tích hợp các ứng dụng hệ thống bằng cách cho phép chúng giao tiếp và trao đổi dữ liệu (các giao dịch, các thông điệp, dữ liệu) với nhau thông qua một chuẩn giao diện (standard interfaces) EAI cho phép ứng dụng truy cập dữ liệu một cách thông suốt mà không cần phải biết nơi lưu dữ liệu, định dạng của dữ liệu
EAI thường được sử dụng trong các hệ thống xử lý thời gian thực, nó hỗ trợ kỹ thuật lan truyền dữ liệu trong tích hợp dữ liệu
EAI thường sử dụng một trục tích hợp (ESB- Enterprise Service Bus) Mục đích của ESB là làm cho việc tích hợp các ứng dụng và quy trình trở nên thuận tiện hơn bằng cách cung cấp một quy trình phân tán, điều hướng thông minh, bảo mật và có thể tự động chuyển đổi dữ liệu Trong hệ thống ESB những dịch vụ nền tảng sẽ được cung cấp sẵn do đó các ứng dụng không cần phải thi hành riêng biệt những yêu cầu trao đổi dữ liệu theo một cách thức riêng biệt của chúng ESB tập trung vào giải quyết những điểm yếu của những giải pháp có sẵn bằng cách tạo ra một nền tảng chuẩn cho việc tích hợp Giải pháp point to point, yêu cầu cứ n thành phần tham gia hệ thống thì phải có n-1 interface để có thể giao tiếp được với các thành phần còn lại, được thay thế bằng giải pháp bus, mỗi thành phần chỉ yêu cầu có 1 interface để giao tiếp với bus và thông qua bus để giao tiếp với các thành phần còn lại Một hệ thống ESB cung cấp việc giao tiếp phân tán, chuyển hướng, xử lý nghiệp vụ, ổn định và bảo mật Nó cũng cung cấp các dịch vụ có khả năng plug-and-play bởi vì nó dựa trên chuẩn nên những dịch vụ plug-and-play này có thể được cung cấp bởi các công ty khác và hoạt động trên bus
Hình 2.8: Công nghệ EAI với ESB
Về khía cạnh tích hợp dữ liệu, EAI có thể được sử dụng để truyền dữ liệu giữa các ứng dụng, hoặc có tạo ra các sự kiện thời gian thực để kích hoạt các xử lý ETL của các ứng dụng tích hợp dữ liệu khác Việc truy cập đến ứng dụng nguồn và ứng dụng
JMS… EAI được thiết kế để cho phép lan truyền dữ liệu có kích thước nhỏ từ ứng dụng này sang ứng dụng khác Ngoài ra, việc chuyển đổi dữ liệu và các metadata trong EAI chỉ được thiết kế để làm việc với những tác vụ đơn giản, các thông điệp có cấu trúc vì thế chúng không được sử dụng cho các dữ liệu phức tạp vốn thường được xử lý bởi các ứng dụng ETL
EDR là một trong những công nghệ tích hợp dữ liệu quan trọng thường hay được sử dụng để tích hợp dữ liệu trong các hệ quản trị cơ sở dữ liệu EDR hỗ trợ kỹ thuật lan truyền dữ liệu và tất nhiên sẽ hỗ trợ cả kỹ thuật CDC EDR được sử dụng rộng rãi, không chỉ dành trong lĩnh vực tích hợp dữ liệu mà còn được sử dụng cho các hoạt động sao lưu và phục hồi, cân bằng tải Chính vì thế đây là công nghệ rất quan trọng và thường được tích hợp thành các gói sản phẩm đi kèm với các hệ quản trị cơ sở dữ liệu
Các công cụ EDR thường sử dụng các trigger trong database hoặc các recovery logs để ghi nhận những thay đổi trên cơ sở dữ liệu nguồn, từ đó lan truyền dữ liệu này đến các cơ sở dữ liệu đích Các công cụ sử dụng recovery logs sẽ có ít ảnh hưởng đến cơ sở dữ liệu nguồn hơn Hầu hết các công cụ EDR đều sử dụng cơ chế lan truyền dữ liệu không đồng bộ, ngoài ra một số công cụ EDR cũng cho phép chúng ta chuyển đổi các dữ liệu trước khi được đưa vào cơ sở dữ liệu nguồn
Nhận xét đánh giá
Chúng ta có thể thấy bức tranh tổng thể của các kỹ thuật và các công nghệ được sử dụng trong vấn đề tích hợp dữ liệu qua hình ảnh sau :
Hình 2.9: Các kỹ thuật và công nghệ tích hợp dữ liệu
2.3.2 So sánh sự khác biệt
Sự khác biệt của các công nghệ có thể được thể hiện thông qua bản so sánh dưới đây
Tiêu chí ETL EII EAI EDR
Luồng dữ liệu Một chiều từ đích đến nguồn Hỗ trợ hai chiều Hỗ trợ hai chiều Hỗ trợ hai chiều
Chế độ thực hiện Thực hiện theo lịch Bất kỳ thời gian nào, tùy thuộc vào yêu cầu của ứng dụng.
Thực hiện theo sự kiện phát sinh.
Theo lịch hoặc theo sự kiện. Độ trễ Theo ngày, theo tháng Thời gian thực Gần thời gian thực Gần thời gian thực
Chuyển đổi dữ liệu, tái cấu trúc, làm sạch.
Phù hợp nhất cho chuyển đổi dữ liệu, cấu trúc lại dữ liệu.
Khả năng chuyển đổi ở mức độ trung bình Việc chuyển đôi chỉ trong các view nên có giới hạn
Khả năng chuyển đổi, tái cấu trúc dữ liệu kém.
Khả năng chuyển đổi, tái cấu trúc dữ liệu ở mức độ trung bình.
Vận chuyển Đa dạng qua: HTTP,FTP,SOAP, các kết nối trực tiếp đến nguồn dữ liệu.
Kết nối trực tiếp đến nguồn dữ liệu
Qua các chuẩn thông điệp Kết nối trực tiếp đến nguồn dữ liệu Khả năng xử lý dữ liệu
Khả năng xử lý dữ liệu lớn Xử lý dữ liệu kích cỡ dữ liệu trung bình (vài triệu bản ghi)
Xử lý dữ liệu kích thước nhỏ
Có khả năng xử lý xong xong.
Khả năng xử lý dữ liệu lớn. Độ phức tạp chuyển đổi dữ liệu
Không giới hạn Dữ liệu chuyển đổi thông qua
Các quy tắc chuyển đổi đơn giản Dữ liệu chuyển đổi thông qua
Hỗ trợ giám sát sự kiện
Giới hạn với độ trễ cao Giới hạn phụ thuộc vào các trigger của dữ liệu nguồn.
Hỗ trợ tốt Hỗ trợ tốt.
2.3.3 Kết hợp các công nghệ
Các công nghệ trên có thể được kết hợp để sử dụng cùng nhau trong một số các bài toán tích hợp cụ thế nhằm sử dụng những tính năng ưu việt của từng công nghệ
Mô hình tổ chức dưới đây là một ví dụ :
Hình 2.10: Mô hình kết hợp nhiều công nghệ.
GIẢI PHÁP TÍCH HỢP DỮ LIỆU BẰNG SQL SERVER
Tổng quan về SQL Server Replication
Hình vẽ dưới đây cho thấy các thành phần trong giải pháp SQL Server Replication Ở mức cao, chúng ta có thể thấy nó bao gồm các thành phần sau:
Publisher chứa cơ sở dữ liệu nguồn mà ta sẽ gọi là publication database
Publication database bao gồm các đối tượng mà ta gọi là các article sẽ được đưa (lan truyền) đến cơ sở dữ liệu đích
Distributor thành phần trung gian bao gồm các thành phần distribution database, các agents giúp cho việc đưa dữ liệu từ cơ sở dữ liệu nguồn đến cơ sở dữ liệu đích
Subscriber thành phần chứa cơ sở dữ liệu đích mà ta gọi là subscription database
Chúng ta sẽ đi vào chi tiết của từng thành phần để thấy rõ hơn nhiệm vụ và chức năng của chúng
Hình 3.1: Kiến trúc công nghệ SQL Server Replication
Articles Ứng với đối tượng trong cơ sở dữ liệu SQL Server cần được đồng bộ, chúng ta cần phải định nghĩa một article Trong hình 3.1 chúng ta có thể thấy các dbo.tbl_3 và dbo.tbl_4 là các articles
Các đối tượng được đồng bộ thường là các bảng dữ liệu, các view (khung nhìn) và các stored procedures (thủ tục nội trú) Article của một đối tượng sẽ cho phép lưu thông tin dữ liệu mà sẽ được đồng bộ sang cơ sở dữ liệu đích như các trường dữ liệu sẽ được đưa sang, các bản ghi thỏa mãn điều kiện nào đó,…
Là một tập hợp bao gồm một hoặc nhiều các articles được nhóm lại cùng nhau thành một đơn vị Trong hình 3.1, các article dbo.tbl_3 và dbo_tbl_4 được nhóm lại thành một publication
Cơ sở dữ liệu chứa các thiết kế (định nghĩa) của các articles được gọi là publication database
Là ứng dụng cơ sở dữ liệu SQL Servers cho phép tạo ra các publication sử dụng trong đồng bộ dữ liệu Các xử lý cho việc đồng bộ sẽ không nằm ở publisher mà sẽ được thực hiện ở Distributor hoặc Subscriber nhằm đảm bảo quá trình đồng bộ không bị ảnh hưởng đến việc vận hành bình thường của nguồn dữ liệu
Mỗi một publisher sẽ được liên kết đến một Distributor Distributor là một ứng dụng SQL Server mà sẽ xác định những thay đổi trên articles trong publisher Những thông tin thay đổi sẽ đươc lưu trữ trong distribution database cho đến khi tất cả các subscriber nhận được thông tin thay đổi
Mỗi một distributor sẽ có ít nhất một distribution database, nó được sử dụng để lưu trữ các thông tin metadata cũng như dữ liệu sử dụng trong việc đồng bộ dữ liệu
Tuy mỗi một distributor có thể bao gồm nhiều distribution database nhưng tất cả các publication trong publisher chỉ được định nghĩa và sử dụng trong cùng một distribution database
Subscriber Ứng dụng SQL server được đăng ký để nhận các publication được gọi là Subscriber Subscriber sẽ nhận những thay đổi của article trong publication để phản anh những thay đổi này vào cơ sở dữ liệu đích (chúng ta gọi là Subscription databases)
Là một bản sao của publication Mỗi một subscription sẽ tạo một link hay một bản hợp đồng giữa publication và Subscriber Có hai loại subscription đó là:
Push subscriptions : Distributor sẽ trực tiếp update dữ liệu trong Subscription database
Pull subscriptions : Subscriber sẽ thực hiện truy vấn đến Distributor theo lịch để nhận những thay đổi
Là cơ sở dữ liệu đích nhận những thay đổi từ dữ liệu nguồn
Quá trình lan truyền dữ liệu được thực hiện bởi các replication agents Mỗi một agent là một thành phần độc lập có thể thực hiện một tác vụ nào đó trong quá trình lan truyền dữ liệu, mặc định các agent sẽ được thực hiện trong dịch vụ SQL Server Agent của SQL Server Hầu hết các agent thực hiện trong phạm vi của Distributor, trong một số trường hợp nó được chạy ở Subscriber
Replication Agents bao gồm các loại agent sau :
Snapshot Agent: Được sử dụng trong Snapshot replication Nó thực hiện việc sao chép toàn bộ dữ liệu từ cơ sở dữ liệu nguồn đến cơ sở dữ liệu đích
Snapshot agent còn được sử dụng nhằm khời tạo dữ liệu trong các kiểu replication khác, sau đó chúng dùng các agent khác để lan truyền dữ liệu
Log Reader Agent: Sử dụng để đọc các transaction log của cơ sở dữ liệu nguồn (publication database) Nếu chúng tìm thấy bất kỳ sự thay đổi nào, chúng sẽ ghi lại những thay đổi này vào distribution database Agent này chỉ được sử dụng trong Transactional replication
Distribution Agent: Thực hiện cập dữ liệu thay đổi vào cơ sở dữ liệu đích
Giống như Log reader agent, Distribution agent chỉ được sử dụng trong transactional replication
Merge Agent : Thực hiện việc đồng bộ những thay đổi dữ liệu trong cơ sở dữ liệu nguồn publication database và cơ sở dữ liệu đích subscription database Nó có thể xử lý đồng bộ những thay đổi theo cả hai chiều Merge agent chỉ được sử dụng trong Merge replication
Queue Reader Agent: Được sử dụng trong trường hợp transactional replication được thiết lập đồng bộ trong cả hai chiều Nó đọc các các thông điệp được lưu trong hàng đợi Microsoft SQL Server và thực thi các thông điệp đó ở publisher
SQL Server hỗ trợ ba kiểu replication đó là snapshot replication, transactional replication, và merge replication.
Snapshot replication
Loại hình này sao chép chính xác toàn bộ dữ liệu từ nguồn đến đích tại một thời điểm xác định (thường được cấu hình có tính chu kì) Snapshot replication thích hợp với việc sao chép các dữ liệu có tính chất dùng chung, quan trọng như danh mục, cấu hình, …
Chúng ta thường dùng loại hình này trong các trường hợp sau:
Dữ liệu không được thay đổi thường xuyên
Cập nhật lại dữ liệu từ Publisher sau một khoảng thời gian nhất định
Khởi tạo lại dữ liệu
Dữ liệu tại Publisher thay đổi rất nhiều trong một khoảng thời gian ngắn.
Transactional replication
Loại hình này thường được sử dụng để sao chép dữ liệu từ nguồn đến đích chính xác và tuần tự đến từng thao tác trong một khoảng thời gian rất ngắn gần mức thời gian thực, do đó mọi giao dịch sẽ được phản ánh trên Subscriber sẽ tương tự như trên Publisher gần như ngay lập tức Transactional replication thường được sử dụng trong kết nối server – to – server do kết nối thường xuyên được đảm bảo Tuy nhiên, chúng ta vẫn có thể thiết lập được cơ chế đồng bộ cả hai chiều cho loại hình này hoặc có thể sử dụng cơ chế pull để cập nhật dữ liệu theo chu kỳ
Chúng ta thường dùng loại hình này trong các trường hợp sau:
Trình tự các thao tác với dữ liệu trên Subscriber được thực hiện giống như trên Publisher
Ứng dụng có tính thời gian thực và dữ liệu thay đổi trên Publisher ngay lập tức sẽ sẵn sàng trên Subscriber
Ứng dụng cân bằng tải hoặc hệ thống dự phòng yêu cầu sao lưu theo chế độ thời gian thực
Publisher có rất nhiều thao tác insert/update/delete mà cần phải đưa dữ liệu này thay đổi này đến Subscriber ngay.
Merge replication
Loại hình này đồng bộ dữ liệu cả ở Publisher và Subscriber nhằm làm tạo ra các bản sao y hệt nhau khi có bất kì thay đổi dữ liệu nào ở nguồn hay ở đích Khi có nhiều hơn một Subscriber cùng cập nhật dữ liệu thì có thể xảy ra xung đột, SQL Server Replication cho phép chúng ta thiết lập sẵn các quy tắc để giải quyết các xung đột có thể xảy ra Đặc biệt loại hình này cho phép các ứng dụng cập nhật ngay cả khi chúng hoạt động offline (ngoại tuyến), dữ liệu sẽ được đồng bộ tự động ngay khi chúng được kết nối lại (online) Các đặc trưng của loại hình sao chép này:
Có nhiều Subscriber cùng cập nhật cùng một đối tượng dữ liệu tại các thời điểm khác nhau và chuyển các thay đổi này về Publisher cũng như đến các Subscriber khác
Các Subscriber cần lấy dữ liệu, thay đổi off-line rồi chuyển các thay đổi này trở lại Publisher cũng như các Subscriber khác
Các phương pháp triển khai replication
Chúng ta có các phương pháp để triển khai cài đặt replication như sau:
Sử dụng SQL Server Management Studio: đây là cách triển khai dễ nhất khi sử dụng các công cụ trực quan được cung cấp bởi SQL Server Management Studio thông qua các Wizard
Hình 3.5: Tạo replication trong Management Studtio
Khi thiết lập xong, chúng ta có thể lưu lại script để sử dụng cho các lần sau hoặc sử dụng cho các điểm triển khai khác mà không cần phải chạy lại Wizard
Sử dụng T-SQL Script: Phù hợp với việc phải triển khai tại nhiều điểm khác nhau với cùng một cách cấu hình, thích hợp với các quản trị viên CSDL(high end user) Các script có thể được tạo ra bằng cách sử dụng Management Studio như đã nói ở trên
Sử dụng Net Application: Được cung cấp thông qua thư viện Replication Management Objects (RMO) giúp các LTV có thể xây dựng các ứng dụng giúp cho người sử dụng có thể thực hiện các thao tác để can thiệp vào quá trình Replication (low end user).
Lựa chọn mô hình và cách tiếp cận
Về cơ bản cách tiếp cận sẽ dựa trên 2 kịch bản chính là : Server – to – Server và Server – to – Client
Kịch bản Server – to – Server: Các điều kiện thích hợp cho việc sử dụng kịch bản này được mô tả dưới đây:
Tăng cường tính khả mở và sẵn sàng của hệ thống
Các ứng dụng DW(data warehouse) hay báo cáo
Tích hợp dữ liệu từ nhiều nguồn khác nhau
Tích hợp các dữ liệu phân tán
Chia tải cho các ứng dụng xử lý dữ liệu
Kịch bản Server – to – Client: Các điều kiện thích hợp để thực hiện theo kịch bản này là:
Luân chuyển dữ liệu giữa các người dùng di động
Các ứng dụng POS (Point Of Sale)
Tích hợp dữ liệu từ nhiều nguồn khác nhau
Tuy nhiên trong một mô hình có thể sử dụng nhiều kịch bản khác nhau nhằm mục đích cuối cùng là dữ liệu được sao chép phù hợp với yêu cầu thực tế.
Nhận xét đánh giá
SQL Server Replication là một giải pháp công nghệ cho phép chúng ta có thể dễ dàng, nhanh chóng xây dựng một cơ sở dữ liệu tích hợp Nó không chỉ được sử dụng trong bài toán tích hợp dữ liệu mà còn được sử dụng để sao lưu, cân bằng tải đảm bảo hiệu năng, đảm bảo an toàn cho dữ liệu, đặc biệt nó còn được sử dụng trong các bài toán xây dựng hệ thống phòng chống thảm họa (DR-Disaster recovery) là một trong những bài toán được quan tâm nhất tại thời điểm hiện nay đối với hệ thống tập trung
Một trong những vấn đề quan trọng khi triển khai giải pháp tích hợp không chỉ gặp ở SQL Server replication mà còn gặp phải ở những giải pháp khác đố là hiệu năng của hệ thống Để đảm bảo hiệu năng của hệ thống chúng ta cần chú ý những điểm sau khi sử dụng giải pháp SQL Server replication:
Distributor cần phải đặt riêng biệt với Publisher nhằm không làm ảnh hưởng đến hiệu năng của cơ sở dữ liệu nguồn
Các snapshop folder, distribution database file cần phải đặt ở nơi có tốc độ đọc ghi nhanh và nên để ở trong các phân vùng đĩa riêng biệt do các hoạt động ghi log sẽ diễn ra rất thường xuyên nhất là trên CSDL Distribution do phải thường xuyên xác nhận và lưu vết về thay đổi dữ liệu
Đảm bảo dung lượng trống của ổ đĩa (Không được dùng quá 80%) do nếu có sự có các recovery log file sẽ bị đầy ra vì dữ liệu không được chuyển đến cơ sở dữ liệu đích
Phân vùng dữ liệu ở cơ sở dữ liệu nguồn và đích ra các data file để tận dụng khả năng xử lý song song của hệ quản trị cơ sở dữ liệu cũng như tránh các xử lý tương tranh trên các file dữ liệu
Thiết lập cơ chế push hay pull phù hợp với yêu cầu của hệ thống
Không nên đồng bộ các dữ liệu dạng TEXT, NTEXT hay IMAGE do các dữ liệu này bản thân rất lớn
Tắt các output log không cần thiết
ỨNG DỤNG XÂY DỰNG CƠ SỞ DỮ LIỆU TÍCH HỢP TOÀN NGÀNH HẢI QUAN
Giới thiệu bài toán
Bài toán xây dựng phần mềm tích hợp hải quan (CIS – Customs Integrated System) nằm trong đề án “Nâng cấp hạ tầng công nghệ thông tin tại Cục Hải quan TP
Hồ Chí Minh (Theo quyết định số 125/QĐ-BTC ngày 18/01/2008 của Bộ trưởng Bộ Tài chính)” nhằm khắc phục những khó khăn gặp phải của cục Hải Quan TP Hồ Chí
Minh cũng là vấn đề chung của ngành hải quan:
Đa số các hệ thống được xây dựng theo mô hình phân tán nên dẫn đến hệ thống dữ liệu bị phân tán tại rất nhiều nơi Hàng ngày, dữ liệu phát sinh từ các hệ thống khác nhau đều phải truyền về Trung tâm dữ liệu và ngược lại Trung tâm dữ liệu phải truyền các danh mục chuẩn, các thông tin chia sẻ từ Hải quan cấp trên xuống từng Chi cục Việc này gây ách tắc hệ thống mạng, đồng thời không đảm bảo tính nhất quán và đồng bộ dữ liệu ở các đơn vị
Dự liệu phân tán tại các Chi cục dẫn đến việc phải đầu tư hệ thống thiết bị tại nhiều nơi Ngoài ra, hệ thống tại các Chi cục không có được các biện pháp an ninh, an toàn đảm bảo
Dữ liệu phát sinh ngày càng lớn dẫn đến việc quá tải đối với hệ thống ở Chi cục gây ách tắc trong quá trình khai thác dẫn đến chậm thực hiện thủ tục hải quan;
Tại một khâu nghiệp vụ, các cán bộ hải quan phải khai thác 1 lúc nhiều ứng dụng mới có thể hoàn thành được nhiệm vụ dẫn đến ách tắc trong xử lý nghiệp vụ;
Các hệ thống ứng dụng được xây dựng theo mô hình phân tán dẫn đến việc quản lý phiên bản, cập nhật và bảo trì các ứng dụng và cơ sở dữ liệu ứng dụng gặp rất nhiều khó khăn Việc này cũng làm ảnh hưởng đến khả năng trao đổi dữ liệu giữa các hệ thống và đồng bộ dữ liệu giữa các cấp hải quan;
Việc quản lý dữ liệu tại các chi cục chưa chặt chẽ (không kiểm soát được việc hiệu chỉnh, sửa đổi, xoá dữ liệu, bổ sung danh mục chuẩn) dẫn đến phát sinh lỗi trong quá trình đồng bộ dữ liệu và vi phạm các quy trình về an toàn, bảo mật dữ liệu
Không có cơ chế sao lưu dữ liệu tại các chi cục, nhằm đáp ứng yêu cầu về đảm bảo an toàn dữ liệu và khả năng vận hành liên tục của hệ thống Tuy nhiên việc đầu tư thiết bị lưu trữ cho từng Chi cục rất tốn kém và đòi hỏi phải có các chuyên viên quản trị hệ thống tại mỗi Chi cục
Mục tiêu của bài toán là xây dựng một hệ thống ứng dụng nghiệp vụ hải quan tích hợp, xử lý tập trung tại Trung tâm dữ liệu của Cục Hải Quan TP Hồ Chí Minh với những nội dung cụ thể như sau:
- Thiết kế hệ thống CNTT của Cục Hải quan TP Hồ Chí Minh theo mô hình đáp ứng qui trình nghiệp vụ hải quan hiện tại và có khả năng kết nối, giao tiếp với phần mềm Hải quan điện tử đến mức có thể triển khai xây dựng ứng dụng Thiết kế cần hướng đến các mục tiêu sau:
+ Nâng cấp các ứng dụng hiện có và xây dựng mới một số ứng dụng khác thành một ứng dụng duy nhất, xử lý thông tin theo từng khâu nghiệp vụ trong qui trình nghiệp vụ Hải quan trên cổng thông tin được thiết kế trên nền Sharepoint 2007 Đảm bảo đồng nhất các giao diện ứng dụng tại từng khâu nghiệp vụ để phục vụ tốt cho công tác, tăng khả năng vận hành của cán bộ Hải quan
+ Tập trung hóa dữ liệu hiện có để tăng khả năng xử lý, khai thác và đảm bảo đầy đủ, nhất quán nội dung thông tin trong toàn bộ Cục Hải quan TP Hồ Chí Minh;
+ Nâng cao tốc độ xử lý thông tin, tăng tốc độ truyền nhận, trao đổi thông tin giữa các cấp;
+ Để đảm bảo các tiêu chuẩn về an toàn, an ninh, độ sẵn sàng của toàn hệ thống;
+ Mô hình thiết kế phần mềm tích hợp khi xây dựng phải đảm bảo có khả năng tập trung hóa (bao gồm ứng dụng và cơ sở dữ liệu) tại cấp trung tâm của Tổng cục Hải quan để xử lý tập trung cho Cục Hải quan các tỉnh, thành phố
- Trên cơ sở thiết kế tiến hành xây dựng phần mềm Nghiệp vụ hải quan tích hợp đáp ứng được các yêu cầu sau:
+ Tích hợp tất cả các quy trình và loại hình nghiệp vụ;
+ Giao diện Web đơn giản, thân thiện với người sử dụng và đồng nhất tại các công đoạn nghiệp vụ trên cổng thông tin Giảm các thao tác nghiệp vụ cho công chức hải quan thực hiện;
+ Xây dựng ứng dụng nghiệp vụ xử lý tập trung trên nền tảng thiết kế và công nghệ mới;
Yêu cầu về kỹ thuật
Với những mô tả ở trên chúng ta có thể thấy cần phải giải quyết hai yêu cầu chính sau của bài toán:
Tập trung dữ liệu từ các chi cục về cục
Xây dựng hệ thống tích hợp nghiệp vụ hải quan bằng cách nâng cấp các hệ thống hiện có và sử dụng cơ sở dữ liệu tích hợp đã được xây dựng ở bước trên
Hình 4.1: Mô hình tập trung dữ liệu giai đoạn 1
Kiến trúc tổng thể của hệ thống
Hệ thống Nghiệp vụ hải quan tích hợp triển khai cho Cục Hải quan thành phố Hồ Chí Minh được đề xuất xây dựng với kiến trúc hệ thống như sau:
CSDL tích hợp nghiệp vụ Workstation Workstation
Hình 4.3: Mô hình tổng thể hệ thống tích hợp nghiệp vụ hải quan 4.3.2 Mô hình phân lớp của hệ thống
Giải pháp xây dựng hệ thống Nghiệp vụ hải quan tích hợp được đề xuất sẽ được thiết kế theo kiến trúc đa lớp:
Hình 4.4: Mô hình phân lớp hệ thống tích hợp nghiệp vụ hải quan
Lớp trình diễn/giao diện: Bao gồm trình duyệt Web tại máy trạm làm việc của người sử dụng, giao diện để giao tiếp với hệ thống khác Lớp trình diễn tiếp nhận, hiển thị và kiểm tra thông tin cho phép người sử dụng thực hiện các thao tác nghiệp vụ, đưa ra các quyết định như nhập, sửa, xóa, tổng hợp,
Dữ liệu Giao diện Tích hợp Logic nghiệp vụ khác Sử dụng công nghệ Portal trên nền công nghệ Microsoft Sharepoint Server 2007
Lớp tích hợp nghiệp vụ: Định hướng, phân tải các yêu cầu nghiệp vụ từ lớp trình diễn về lớp xử lý nghiệp vụ Lớp này được xây dựng dựa trên sản phẩm Biztalk server
Lớp xử lý nghiệp vụ: Xử lý các qui tắc nghiệp vụ Hải quan, các qui tắc logic Lớp xử lý nghiệp vụ cũng bao gồm các thao tác truy xuất dữ liệu trực tiếp Sử dụng môi trường công nghệ Microsoft Visual Studio.Net 2008
Lớp dữ liệu: Lưu trữ, xử lý thông tin dưới dạng cơ sở dữ liệu với các phương thức đọc, chỉnh sửa, xóa bỏ và cập nhật dữ liệu Sử dụng hệ quản trị cơ sở dữ liệu Microsoft SQL Server 2008
4.3.3 Mô hình kiến trúc ứng dụng và dữ liệu
Duyệt dữ liệu, phân luồng Quản lý tờ khai Giá tính thuế Gia công Sản xuất xuất khẩu
Kế toán thuế Khu chế xuất Phương tiện xuất nhập cảnh
Q u ản t rị h ệ th ố n g G ia o t iế p v ớ i h ệ th ố n g k h ác
Gia công SXXK Chế xuất
Hình 4.5: Mô hình kiến trúc úng dụng và dữ liệu
Hệ thống Nghiệp vụ hải quan tích hợp sẽ được thiết kế và xây dựng với các module chính sau đây:
Module duyệt dữ liệu, xử lý sơ bộ, phân luồng tờ khai
Cung cấp các chức năng tiếp nhận, kiểm tra sơ bộ tờ khai doanh nghiệp khai qua mạng Thực hiện phân luồng tờ khai, lưu trữ thông tin tờ khai, kết quả phân luồng phục vụ các chức năng tiếp theo
Module quản lý tờ khai
Cung cấp các chức năng quản lý quá trình thông quan tờ khai Cung cấp chức năng cập nhật, khai thác, quản lý các chứng từ kèm theo tờ khai hải quan Cung cấp chức năng tra cứu thông tin về doanh nghiệp tại các khâu nghiệp vụ Cho phép nhân viên hải quan ghi nhận ý kiến tại các khâu trong quy trình thủ tục đối với tờ khai, lô hàng để thông báo đến khâu sau thông quan Cho phép hiển thị thông tin Manifest được chuyển sang từ hệ thống tiếp nhận thông tin Manifest
Module quản lý thông tin giá tính thuế
Cung cấp các chức năng tra cứu thông tin giá, cập nhật thông tin tờ khai trị giá Cung cấp các chức năng về xác định giá, kiểm tra giá, phúc tập giá…
Module quản lý loại hình nhập nguyên liệu để gia công
Cung cấp các chức năng quản lý hợp đồng, thông quan tờ khai, thanh khoản đối với loại hình nhâp nguyên liệu để gia công
Module quản lý loại hình nhập nguyên liệu để sản xuất hàng xuất khẩu
Cung cấp các chức năng quản lý hợp đồng, thông quan tờ khai, thanh khoản đối với loại hình nhâp nguyên liệu để sản xuất hàng xuất khẩu
Module kế toán thuế xuất, nhập khẩu
Cung cấp các chức năng quản lý kế toán về thuế xuất khẩu, nhập khẩu
Module quản lý khu chế xuất
Cung cấp các chức năng quản lý dành riêng cho khu chế xuất
Module quản lý phương tiện tạm nhập tái xuất, tạm xuất tái nhập tại các cửa khẩu đường bộ
Cung cấp các chức năng quản lý, giám sát, tra cứu về các phương tiện tạm nhập tái xuất, tạm xuất tái nhập tại các cửa khẩu đường bộ
Module giao tiếp với hệ thống quản lý rủi ro
Cung cấp các chức năng giao tiếp với hệ thống quản lý rủi ro Cho phép thực hiện phân luồng tờ khai trên hệ thống quản lý rủi ro Cho phép tra cứu các thông tin rủi ro về doanh nghiệp, tờ khai, mặt hàng xuất nhập khẩu…
Cung cấp thông tin phản hồi về hệ thống quản lý rủi ro
Module giao tiếp với hệ thống thống kê tập trung
Cung cấp các chức năng cho phép trao đổi dữ liệu với hệ thống thống kê tập trung Cung cấp dữ liệu về tờ khai, C/O, phương tiện xuất nhập cảnh… cho hệ thống thống kê tập trung
Module giao tiếp với hệ thống thông quan điện tử
Cung cấp các chức năng cho phép trao đổi dữ liệu với hệ thống thông quan điện tử
Module quản trị hệ thống
Cung cấp các chức năng đăng nhập hệ thống, quản lý phân quyền sử dụng hệ thống, thiết lập tham số hệ thống, có khả năng đồng bộ thông tin với Active Directory, ghi / theo dõi nhật ký giao dịch,
Hệ thống Nghiệp vụ hải quan tích hợp sẽ được thiết kế và xây dựng với các thành phần cơ sở dữ liệu chính sau đây:
Cơ sở dữ liệu danh mục, tham số hệ thống, nhật ký hệ thống
Chứa hệ thống danh mục chuẩn, các tham số hệ thống Lưu trữ nhật ký hệ thống
Cơ sở dữ liệu tờ khai tạm
Chứa thông tin tạm về tờ khai do doanh nghiệp khai qua mạng đẻ chờ duyệt
Cơ sở dữ liệu tờ khai
Chứa thông tin tờ khai và các chứng từ đi kèm cùng các thông tin ghi nhận, các thông tin phục vụ quy trình thủ tục đối với tờ khai, lô hàng
Cơ sở dữ liệu giá tính thuế
Chứa thông tin về tờ khai trị giá, các thông tin khác phục vụ quy trình nghiệp vụ giá tính thuế
Cơ sở dữ liệu kế toán thuế
Chứa các thông tin phục vụ quy trình nghiệp vụ kế toán thuế
Cơ sở dữ liệu gia công
Chứa các thông tin hợp đồng, nguyên liệu, sản phẩm, thông tin thanh khoản… phục vụ quy trình đối với loại hình nhập nguyên liệu để gia công
Cơ sở dữ liệu SXXK
Chứa các thông tin hợp đồng, nguyên liệu, sản phẩm, thông tin thanh khoản… phục vụ quy trình đối với loại hình nhập nguyên liệu để sản xuất hàng xuất khẩu
Cơ sở dữ liệu khu chế xuất
Chứa các thông tờ khai, chứng từ, thanh khoản… phục vụ quy trình đối với khu chế xuất
Cơ sở dữ liệu phương tiện xuất nhập cảnh đường bộ
Chứa thông tin phương tiện tạm nhập tái xuất, tạm xuất tái nhập qua cửa khẩu đường bộ
4.3.4 Mô hình trao đổi dữ liệu với hệ thống khác
Mô hình trao đổi với các hệ thống khác được mô tả ở hình vẽ dưới đây:
Nghiệp vụ hải quan tích hợp
Hình 4.6: Mô hình trao đổi dữ liệu
Từ mô hình trên chúng ta thấy:
Hệ thống Nghiệp vụ hải quan tích hợp giao tiếp với các hệ thống khác thông qua trục tích hợp
Việc giao tiếp giữa hệ thống Nghiệp vụ hải quan tích hợp và các hệ thống trong nội bộ ngành Hải quan gồm Quản lý rủi ro, Thống kê tập trung, Thông quan điện tử được thực hiện thông qua các Web service của các hệ thống trên
Các hệ thống khai báo qua mạng của doanh nghiệp giao tiếp với Nghiệp vụ hải quan tích hợp thông qua web service trên internet của trục tích hợp
Giải pháp công nghệ sử dụng
4.4.1 Giải pháp tích hợp dữ liệu
Qua khảo sát, hầu hết các cơ sở đữ liệu đều được xây dựng dựa trên cơ sở dữ liệu SQL Server, một số cơ sở dữ liệu được xây dựng bằng cơ sở dữ liệu Oracle vì thế giải pháp tích hợp dữ liệu được cân nhắc là sử dụng Microsoft SQL Server replication để tích hợp các cơ sở dữ liệu thành một cơ sở dữ liệu tập trung
Cơ sở dữ liệu chi cục A
Cơ sở dữ liệu chi cục B
Cơ sở dữ liệu chi cục C
Cơ sở dữ liệu tích hợp
Hình 4.7: Mô hình tích hợp dữ liệu thử nghiệm
Tuy nhiên, sau khi tích hợp thử dữ liệu ở một số chi cục, thì tác giả phát hiện ra cấu trúc dữ liệu ở các chi cục này đã bị thay đổi, xuất hiện tình trạng dữ liệu đã bị sửa đổi dẫn đến việc triển khai giải pháp tích hợp nếu chỉ sử dụng Microsoft SQL Server replication gặp khó khăn
Do cơ sở dữ liệu tích hợp này sẽ cần phải chuyển đổi để phù hợp với ứng dụng tích hợp nghiệp vụ hải quan nên mô hình được này đã được điều chỉnh như sau:
Dữ liệu tại mỗi chi cục sẽ được đồng bộ lên cục thành một bản sao dữ liệu của chi cục bằng giải pháp Microsoft SQL Server Replication
Một ứng dụng chuyển đổi số liệu dựa trên công nghệ ETL sẽ được xây dựng để thực hiện đọc dữ liệu từ các cơ sở dữ liệu có được ở bước trên và đưa chúng vào cơ sở dữ liệu tích hợp
Mô hình tích hợp dữ liệu sửa đổi được thể hiện trong hình vẽ dưới đây:
Cơ sở dữ liệu chi cục A
Cơ sở dữ liệu chi cục B
Cơ sở dữ liệu chi cục C
Cơ sở dữ liệu chi cục A
Cơ sở dữ liệu chi cục B
Cơ sở dữ liệu chi cục C
Cơ sở dữ liệu tích hợp
Hình 4.8: Mô hình tích hợp dữ liệu thực tế triển khai Ứng dụng chuyển đổi số liệu dựa trên công nghệ ETL được xây dựng trên nền tảng công nghệ Microsoft.NET cho phép dễ dàng cấu hình và lựa chọn nguồn dữ liệu Để làm được điều này, ứng dụng sẽ sử dụng các file cấu hình XML cho phép người dùng có thể đưa các câu lệnh SQL và các hàm chuyển đổi dữ liệu trước khi đưa nó vào cơ sở dữ liệu nguồn Luồng hoạt đồng của ứng dụng chuyển đổi số liệu được mô tả ở hình vẽ dưới đây: Đọc file cấu hình XML
Lấy dữ liệu vào reader = SqlDataReader
Lấy dữ liệu vào reader = OracleReader
Lấy dữ liệu vào reader = OleDbDataReader Đọc dữ liệu trong reader r = reader.Read
Dưa dữ liệu r và CSDL đích
Tăng số lượng records = records + 1
Khởi tạo lại số lượng records = 0
Chưa đủ block commit Đã đủ số lượng bản ghi
FPT.CIS.Tools.PushData.F unction.StandardFunctio n.ConvertToUnicode
KT_S53DTL_G OC
Hình 4.9: Luồng hoạt động của ứng dụng chuyển đổi số liệu
Lưu ý rằng các hàm chuyển đổi dữ liệu có thể được cấu hình lặp lại nhiều lần trong file Xml Đoạn code xử lý sau sẽ thực hiện đọc các hàm chuyển đổi và thực hiện nó: foreach (Function func in instruction.EditFunctions) {
EditFunction editFunc = new EditFunction(func); editFunc.Invoke(item);
Việc gọi sẽ được thực hiện động như sau: public object Invoke(Item inputData) {
String typeName = System.IO.Path.GetFileNameWithoutExtension(FunctionName);
String functionName = System.IO.Path.GetExtension(FunctionName).Substring(1);
Type type = Type.GetType(typeName); return type.InvokeMember(functionName, BindingFlags.InvokeMethod | BindingFlags.Public | BindingFlags.Static, null, null, new object[] { inputData, this.Parameters });
Với việc thực hiện này, chúng ta có thể dễ dàng bổ sung các hàm chuyển đổi dữ liệu mà không cần phải thay đổi lại mã nguồn của chương trình từ đó cho phép sử dụng được ở nhiều dự án khác nhau Trên thực tế, ứng dụng này ngoài việc được sử dụng để chuyển đổi thử nghiệm số liệu của Cục Hải quan TP Hồ Chí Minh còn được sử dụng để chuyển đổi số liệu bảo hiểm xã hội của các tỉnh thành trên cả nước
Hình 4.10: Giao diện chương trình chuyển đổi số liệu
4.4.2 Giải pháp xây dựng ứng dụng tích hợp nghiệp vụ hải quan
Một trong những yêu cầu của bài toán là cần phải xây dựng một ứng dụng nghiệp vụ hoạt động dựa trên cơ sở dữ liệu tích hợp đã được xây dựng nhằm giải quyết những vướng mắc của Cục Hải quan TP Hồ Chí Minh đó là cán bộ công chức phải thao tác quá nhiều chương trình liền một lúc để hoàn thành một công việc Vấn đề này có thể giải quyết được bằng cách xây dựng lại một ứng dụng có đầy đủ các chức năng của các ứng dụng cần tích hợp Tuy nhiên nếu tiếp cận theo hướng này thì chỉ giải quyết được vấn đề trước mắt, nếu như trong tương lai một hệ thống mới được xây dựng đáp ứng một quy trình mới được ban hành thì người sử dụng sẽ lại gặp phải vấn đề hiện tại đó là vẫn phải thao tác quá nhiều ứng dụng để hoàn thành công việc Để giải quyết triệt để vấn đề, giải pháp xây dựng ứng dụng tích hợp nghiệp vụ hải quan đã được xây dựng dựa trên giải pháp Microsoft Sharepoint Portal Ngoài những tính năng ưu việt trong việc quản lý luồng công việc, công nghệ cổng thông tin cũng như khả năng dễ dàng tạo mới các website (do trong khuôn khổ giới hạn của luận văn nên sẽ không trình bày ở đây) thì Microsoft Sharpoint Portal cung cấp một tính năng rất quan trọng đó là các Webpart Webpart có thể hiểu là một thành phần để tạo nên một trang web trong sharepoint Một cách hình dung đơn giản nếu coi việc xây dựng một ứng dụng web như là việc xây dựng một tòa nhà thì có hiểu các webpart nhưng là những viên gạch, những vật dụng để xây dựng lên tòa nhà Mô hình dưới đây mô tả kiến trúc của ứng dụng khi sử dụng các Webpart:
Hình 4.11: Mô hình ứng dụng trên sharepoint
Với cách tiếp cận này, chúng ta sẽ xây dựng các chức năng cho ứng dụng như là những webpart từ đó cấu hình để đưa những chức năng này vào ứng dụng tích hợp
Như vậy khi có thêm chức năng mới, chúng ta chỉ đơn giản là lắp chức năng này vào ứng dụng tích hợp trên nền tảng Sharepoint mà không cần phải quan tâm đến vấn đề tích hợp chúng
Hình 4.12: Đưa thêm webpart và sharepoint Để tận dụng những control có sẵn trong các ứng dụng cũ, một Webpart được xây dựng để load các control này vào Webpart như đoạn code sau:
If bAccessRight Then 'User have right & active
If UserControlFileName = "" Then Dim lbl As New Label lbl.Text = "Chức năng này chưa được cấu hình để vận hành, hãy liên hệ với quản trị để được xử lý "
Me.Controls.Add(lbl) Else
If UserControlFileName.StartsWith(".") Or UserControlFileName.StartsWith("/") Or UserControlFileName.StartsWith("~") Then _control =
CType(Me.Page.LoadControl(UserControlFileName), System.Web.UI.UserControl) Else
_control = CType(Me.Page.LoadControl(UserControlPath + UserControlFileName), System.Web.UI.UserControl)
End If Me.Controls.Add(_control) End If
Webpart được xây dựng ở trên sẽ cung cấp hai thuộc tính cho người quản trị dễ dàng cấu hình được nơi lưu trữ ascx file và mã phân quyền của của chức năng
Như vậy, với việc sử dụng webpart này việc lập trình chỉ đơn giản là tạo các control ascx trong ASP.NET thông thường Và thực hiện cấu hình đường dẫn đến control cũng như mã quyền sử dụng để phân quyền đến người sử dụng:
Hình 4.13: Cấu hình sử dụng các control ascx
Sau khi cấu hình chúng ta có thể thấy chức năng mới đã được tích hợp lên ứng dụng tích hợp
Hình 4.14: Giao diện sau khi cấu hình
Sau khi lắp đặt toàn bộ các webpart vào hệ thống chúng ta có được một ứng dụng tích hợp đầy đủ:
Với cách thực hiện này, các webpart có thể được phát triển từ các bên thứ 3, các chức năng được xây dựng đựa trên webpart này có thể hiểu như là các chức năng
4.4.3 Giải pháp xây dựng ứng dụng dự phòng, phòng chống thảm họa
Kết quả thực hiện
Theo kế hoạch bài toán thử nghiệm sẽ được triển khai trong một năm, tuy nhiên trên thực tế nó đã kéo dài đến hơn bốn năm mới hoàn thành vì những khó khăn trong một số vấn đề về kỹ thuật và con người Nguyên nhân chủ yếu là người dùng chưa sẵn sàng cho một hệ thống tập trung vì những lý do sau:
Dữ liệu ở các chi cục đã bị thay đổi dẫn đến một số ý kiến phản đối việc triển khai hệ thống cũng như khó khăn cho việc tích hợp dữ liệu
Người sử dụng lớn tuổi ngại sử dụng chương trình mới do đã quen với cách làm việc cũ
Việc tập trung dữ liệu tại trung tâm dữ liệu, dẫn đến cán bộ công nghệ thông tin tại chi cục bị cắt giảm công việc và quyền hạn
Dữ liệu tập trung làm phát hiện nhiều sai sót trong quá trình vận hành hệ thống ở các chi cục
Sau bốn năm triển khai, hệ thống đã đi vào hoạt động tốt, ổn định đến thời điểm hiện nay Đây là mô hình thí điểm kiểm nghiệm, chứng minh tính khả thi cho việc triển khai tích hợp dữ liệu toàn quốc tại Tổng cục Hải quan để phục vụ dự án VNACCS-VCIS (Phát triển thử nghiệm hai tháng tại Tokyo-Nhật Bản và hai năm tại Việt Nam mà tác giả làm quản trị dự án) do chính phủ Nhật Bản tài trợ sau đó phụ vụ cho việc thông quan tờ khai tập trung tại trung tâm dữ liệu của Tổng cục Hải quan.
Đánh giá kết quả
Giải pháp được xây dựng dựa trên những công nghệ mới nhất (vào thời điểm triển khai) của Microsoft Giải pháp đã giải quyết được trọng vẹn một vấn đề quan trọng nhất và nóng nhất của các hệ thống thông tin ngày nay Thông qua việc triển khai một giải pháp tích hợp ở môi trường thực tế, tác giả học được rất nhiều kinh nghiệm cũng như được kiểm nghiệm thực tế những công nghệ mới nhất được Microsoft công bố trong lĩnh vực tích hợp dữ liệu Hệ thống được triển khai cũng đã giúp Hải quan phát hiện nhiều sai sót trong quá trình vận hành trước khi có hệ thống tập trung, chứng minh được tính khả thi cũng như những ưu điểm của việc quản lý dữ liệu tập trung mở đường cho việc tập trung dữ liệu toàn quốc tại trung tâm dữ liệu của Tổng cục Hải quan
Những giải pháp và bài học kinh nghiệm có được từ việc triển khai thử nghiệm này hoàn toàn có thể áp dụng được cho những bài toán khác không chỉ trong ngành hải quan mà còn ở các bộ ngành khác, đơn vị khác trong hiện tại và tương lai.