Chắc hẳn đối với bộ phận phân tích và phát triển kinh doanh trong mỗi doanh nghiệp, khái niệm kho dữ liệu (data warehouse), dữ liệu lớn (big data) tại các công ty công nghệ, cơ sở dữ liệu (database) ở các công ty lập trình… không còn quá xa lạ nữa. Với nhu cầu tiếp nhận, phân tích và xử lý dữ liệu dưới góc nhìn đa chiều và tổng hợp hiện nay, việc thống kê dòng dữ liệu là vô cùng cần thiết, từ đó khái niệm kho dữ liệu ra đời nhằm đảm lưu trữ đầy đủ dữ liệu cho bước phân tích tiếp theo và nâng cao tốc độ của các kết quả trả về của hệ thống. Chúng ta hãy cùng tìm hiểu khái niệm data warehouse là gì và những tính năng, lợi ích về nó nhé!
Data warehouse là gì?
Kho dữ liệu (data warehouse) là khái niệm được giới thiệu lần đầu vào năm 1988 bởi 2 nhà nghiên cứu của IBM là Barry Devlin và Paul Murphy. Đây là nơi lưu trữ dữ liệu bằng thiết bị điện tử của một tổ chức, doanh nghiệp, nhằm hỗ trợ việc phân tích dữ liệu và lập báo cáo. Và theo công ty chuyên lập trình hệ thống / phần mềm cho doanh nghiệp Mona Media thì đó là cách hiểu theo truyền thống tại thời điểm khái niệm kho dữ liệu này ra đời và Data warehouse ngày nay đã khác.
Ngày nay, người ta hiểu “kho dữ liệu” theo ngữ cảnh rộng hơn, bao gồm tập các phương pháp, kỹ thuật và công nghệ có thể kết hợp, hỗ trợ nhau để thu thập và quản lý dữ liệu từ nhiều nguồn, môi trường khác nhau để cung cấp thông tin cho người sử dụng. Do đó, kho dữ liệu còn có thể được gọi bằng những cái tên sau: hệ thống hỗ trợ quyết định, hệ thống điều hành thông tin, hệ thống thông tin quản lý, ứng dụng phân tích. Kho dữ liệu thường có dung lượng lên đến hàng trăm GB thậm chí tính bằng đơn vị TB.
Ngôn ngữ được dùng cho kho dữ liệu là ngôn ngữ xử lý phân tích trực tuyến (OLAP – Online Analytical Processing). Đây là ngôn ngữ được tối ưu hóa cho việc truy vấn và báo cáo, tạo điều kiện cho truy vấn nghiệp vụ thông minh. Đây là cơ sở dữ liệu nhằm xử lý giao dịch trực tuyến (OLTP – On-line transactional processing). OLAP tạo điều kiện xử lý một tập dữ liệu lớn với thời gian tương tác được kéo dài hơn. OLAP cũng cho phép người sử dụng có cái nhìn bức tranh toàn cảnh, các con số khủng hoảng từ đó tìm ra xu hướng và nhìn ra bức tranh lớn hơn. Nhìn chung OLAP sẽ tập trung vào các lệnh dưới đây:
- Thu nhỏ (roll-up): chẳng hạn nhóm dữ liệu theo năm thay vì theo quý.
- Mở rộng (drill-down): chẳng hạn mở rộng dữ liệu, nhìn theo tháng thay vì theo quý.
- Cắt lát (slice): nhìn theo từng lớp một. Chẳng hạn từ danh mục bán hàng của Q1, Q2, Q3, Q4 chỉ xem của Q1.
- Rút ngắn (dice): bỏ bớt một phần của dữ liệu
Cấu trúc và đặc tính của data warehouse
Kho dữ liệu không phải là một sản phẩm mà là một môi trường, cung cấp một mô hình kiến trúc cho luồng thông tin hỗ trợ từ hệ thống vận hành đến các môi trường hỗ trợ quyết định. Do đó kho dữ liệu sẽ có những đặc tính sau:
- Dữ liệu toàn vẹn (Integration)
- Dữ liệu gắn thời gian và có tính lịch sử (Isolation)
- Dữ liệu vận hành ổn định (Nonvolatility)
- Dữ liệu cố định (Durable)
- Dữ liệu được hướng theo chủ đề (Subject orientation)
Kho dữ liệu có cấu trúc bao gồm ba tầng:
- Tầng đáy (Data Sources) : là nơi thu thập, tích hợp dữ liệu từ nhiều nguồn khác nhau sau đó chuẩn hóa về cùng định dạng, làm sạch xử lí dữ liệu để tìm lỗi và sửa và lưu trữ dữ liệu đã tổng hợp
- Tầng giữa (Warehouse) : cung cấp dịch vụ xử lý phân tích trực tuyến (OLAP – Online Analytical Processing) để thao tác với kho dữ liệu đã được tích hợp. Tầng giữa có thể được cài đặt bằng Relational OLAP, Multidimensional OLAP hay kết hợp cả hai mô hình trên Hybrid OLAP
- Tầng trên cùng (Users) : nơi thực hiện các thao tác truy vấn, báo cáo, phân tích để tìm ra xu hướng, trung bình, tổng hợp…
Lợi ích của data warehouse
Theo chia sẻ của mona host, sự ra đời của kho dữ liệu nhằm đáp ứng khối lượng dữ liệu cần được xử lý ngày càng nhiều, nhu cầu lưu trữ dữ liệu phát triển khi các hệ thống máy tính trở nên phức tạp hơn. Cụ thể, kho dữ liệu sẽ đem lại các lợi ích sau đây cho các doanh nghiệp:
- Tích hợp dữ liệu lại về một nguồn, cùng một định dạng, giải quyết tính phân mảnh và rời rạc của dữ liệu nhằm đáp ứng mọi yêu cầu về thông tin của người sử dụng
- Tiết kiệm thời gian và hiệu quả khi tìm thấy dữ liệu cần thiết
- Giúp việc sử dụng dữ liệu của doanh nghiệp trở nên hiệu quả hơn bằng tính năng xử lý và phân tích dữ liệu
- Hỗ trợ người sử dụng đưa ra những quyết định hợp lý, nhanh chóng, năng suất cao hơn, thu được lợi nhuận cao hơn…
- Giúp cho tổ chức, xác định, quản lý và điều hành những dự án, những nghiệp vụ một cách hiệu quả và chính xác.
- Giúp tăng cường khối lượng dữ liệu cần được tổng hợp, lưu trữ và xử lý lên đáng kể
Hiện kho dữ liệu đã được ứng dụng rộng rãi trong các doanh nghiệp thuộc nhiều lĩnh vực khác nhau, cụ thể ta có thể kể đến:
- Hàng không: Xây dựng hệ thống quản lý các công việc hàng không như quản lý tuyến bay, lịch bay, phân công phi hành đoàn, quản lý các chương trình ưu đãi dành cho khách hàng…
- Ngân hàng: quản lý dòng tiền, quản lý các quỹ đầu tư, cho vay, thời hạn thanh toán…
- Y – Dược: quản lý thông tin bệnh nhân, tình trạng bệnh án, phác đồ điều trị, đơn thuốc được kê cho họ, thời gian điều trị bệnh…
- Bảo hiểm: phân tích xu hướng của khách hàng và để theo dõi sự thay đổi của thị trường một cách nhanh chóng
- Bán lẻ: quản lý mặt hàng nhập vào – bán ra, quản lý chuỗi phân phối, xác định mô hình mua hàng của khách hàng, các chương trình khuyến mãi cũng như các chính sách giá
- Giáo dục: quản lý thông tin học sinh – giáo viên – công nhân viên của trường, quản lý quá trình học tập, giáo án, bài giảng, kết quả học tập của học sinh… Là nền tảng để xây dựng các phần mềm dạy học hiện nay.
- Quản lý quan hệ khách hàng: tổng hợp, xử lý, phân tích và giúp dự đoán insight của khách hàng và xu hướng thị trường trong tương lai
- Thương mại điện tử: là lĩnh vực có sự ứng dụng rõ rệt nhất của kho dữ liệu thông qua việc quản lý thông tin hàng hóa, người bán, người mua, tình trạng đơn hàng, các chương trình khuyến mãi…
Tiến trình xử lý trong data warehouse
Bước 1: Dữ liệu được tập hợp từ nhiều nguồn và đưa vào Data Sources để đồng bộ định dạng, biên soạn, sau đó sẽ quá trình làm sạch dữ liệu, tìm kiếm để sửa hay loại bỏ bất kỳ lỗi nào trong dữ liệu nhằm đảm bảo tính nhất quán của dữ liệu trước khi đưa vào Warehouse.
Bước 2: Dữ liệu sau khi trải qua nhiều thao tác ở tầng Data Sources sẽ được chuyển từ định dạng cơ sở dữ liệu sang định dạng kho. Sau đó tại tầng Warehouse, dữ liệu sẽ được sắp xếp, hợp nhất và tổng kết,… nhằm đảm bảo quá trình phân phối và xử lý dữ liệu diễn ra trơn tru và mượt mà hơn. Theo thời gian, khi càng có nhiều dữ liệu từ nhiều nguồn được cập nhật, kho dữ liệu sẽ càng tiếp nhận và xử lý chúng
Bước 3: Dữ liệu được phân bổ đến người dùng cuối khi có thao tác tìm kiếm, truy vấn và xuất báo cáo. Trong bước này, có nhiều công cụ để thực hiện nhằm giúp dữ liệu được xử lý gọn gàng và dễ nhìn trước khi hiển thị tới người dùng cuối. Một kho dữ liệu tốt không chỉ giúp cho quá trình phân tích, xuất báo cáo dễ dàng nhanh chóng mà còn giúp các bộ phận khác nhau trong công ty truy cập dữ liệu của nhau dễ dàng hơn.
Ví dụ: nhờ có kho dữ liệu, bộ phận bán hàng có thể có những thông tin về nhu cầu, đặc điểm của khách hàng và giúp đưa ra quyết định về cách cải thiện doanh số hoặc sắp xếp quy trình hay phân công nhiệm vụ rõ ràng trong bộ phận kinh doanh. Đặc biệt với khả năng lưu trữ ưu việt của mình, kho dữ liệu có thể có tất cả các thông tin mà khách hàng đã mua sản phẩm/sử dụng dịch vụ trong 10 năm qua.
Từ những thông tin trên mà chúng tôi cung cấp, bạn có thể dễ dàng thấy rằng kho dữ liệu đóng vai trò then chốt trong việc tập hợp, xử lý dữ liệu thô trong doanh nghiệp. Xây dựng kho dữ liệu là nền tảng vững chắc trong quá trình tích hợp hệ thống báo cáo quản trị thông minh cho doanh nghiệp. Chúc bạn thành công với kho dữ liệu mà mình xây dựng nhé!
>> Xem thêm: Sự khác biệt giữa database và data warehouse, Phân tích kho dữ liệu bằng OLAP