Data Warehouse là gì? 6 yếu tố cân nhắc khi lựa chọn Data Warehouse

marketing foundation

Tomorrow Marketers – Data warehouse (Kho dữ liệu) là một hệ thống lưu trữ dữ liệu kết hợp từ nhiều nguồn khác nhau. Data warehouse giúp toàn bộ dữ liệu doanh nghiệp được tập trung về một nơi lưu trữ duy nhất, không bị phân mảnh rời rạc, nhờ vậy giúp doanh nghiệp dễ dàng khai thác dữ liệu và cung cấp các báo cáo, dashboard cho nội bộ sử dụng.

Xu hướng xây dựng nhà kho dữ liệu hiện đại

Cloud computing (Điện toán đám mây) là một mô hình làm thay đổi rất nhiều khía cạnh trong kiến trúc IT những năm gần đây, và data warehouse cũng không nằm ngoại lệ. 

Nhiều doanh nghiệp thay vì sử dụng hình thức on premise truyền thống đã dịch chuyển sang dịch vụ cloud-based data warehouse. Giải thích cụ thể, on premise là việc toàn bộ dữ liệu sẽ nằm tại server (máy chủ) mà doanh nghiệp sở hữu. Trong khi đó, khi sử dụng cloud-based data warehouse, toàn bộ dữ liệu sẽ nằm tại server (máy chủ) mà chúng ta không sở hữu – thuê server một bên thứ ba. Lúc này, doanh nghiệp sẽ không phải mất quá nhiều chi phí vào việc xây dựng, duy trì và sửa chữa server, một khoản đầu tư không hề nhỏ và thậm chí là gánh nặng tài chính với nhiều doanh nghiệp.

Đọc thêm: Doanh nghiệp SME xây dựng hệ thống dữ liệu nội bộ như thế nào? | Phỏng vấn anh Quốc Thắng, Data Service Manager @Base.vn

Đặc điểm của Data Warehouse

Nhà khoa học máy tính Bill Inmon – người được coi là cha đẻ của Data Warehouse, đã định nghĩa Data warehouse cần có 3 đặc điểm sau: 

  • Subject-oriented (dữ liệu hướng tới đối tượng cụ thể): Nhân sự thuộc các phòng ban khác nhau trong doanh nghiệp (Finance/ Sales/ Marketing…), có thể được truy cập vào các vùng dữ liệu khác nhau trong data warehouse, để lấy dữ liệu và phân tích. 
  • Time-variant (dữ liệu được gán thời gian): Dữ liệu trong data warehouse là dữ liệu được thu thập trong khoảng thời gian dài và được gán thời gian. Data warehouse lưu trữ dữ liệu mọi historical data, thay vì chỉ lưu trữ các dữ liệu ngắn hạn như các transactional system. 
  • Non-volatile (dữ liệu không biến đổi): Dữ liệu một khi đã được lưu trữ trong data warehouse thì không nên thay đổi hoặc chỉnh sửa. Trường hợp sau khi tổng hợp dữ liệu mà dữ liệu ở trong nguồn bị thay đổi, khi đó doanh nghiệp cần thực hiện lại quá trình ETL để tải lại dữ liệu từ nguồn vào Data Warehouse. Đặc điểm này nhằm bảo tồn dữ liệu lịch sử, phản ánh chính xác những gì đã xảy ra trong quá trình vận hành.

6 yếu tố cân nhắc khi lựa chọn Data Warehouse

1. Data Type: Bạn muốn lưu trữ loại dữ liệu nào?

Bước đầu tiên là xác định loại dữ liệu bạn muốn lưu trữ. Với data warehouse, có 2 loại dữ liệu chính: dữ liệu có cấu trúc (structured) và dữ liệu phi cấu trúc (unstructured).

  • Relational database sẽ hoạt động tốt với dữ liệu có cấu trúc, hoặc dữ liệu vừa khớp với các hàng, các cột. Nếu dữ liệu có thể được sắp xếp thành một bảng tính lớn, thì relational data warehouse sẽ rất phù hợp cho công ty của bạn.
  • Non-relational database đi kèm với lượng lớn dữ liệu nửa cấu trúc (semi-structured data). Một số ví dụ tiêu biểu của dữ liệu nửa cấu trúc có thể kể tới emails, sách, bài đăng trên mạng xã hội, hình ảnh, âm thanh và dữ liệu địa lý. Nếu bạn làm việc với lượng lớn dữ liệu phi cấu trúc như thế này, bạn nên cân nhắc tới một data lake thay vì data warehouse.

Đọc thêm: Data Modeling là gì? Lợi ích của data modeling đối với doanh nghiệp

Nguồn ảnh: Segment.com

Giải thích thuật ngữ:

  • Structured data: Đây là loại dữ liệu dễ dàng tìm kiếm và sắp xếp nhất, vì nó thường được hàm chứa trong các cột và hàng, và các thành phần của chúng có thể được liên kết bằng những trường được định sẵn từ trước. Hãy nghĩ về những dữ liệu bạn có thể lưu trữ trong một tệp Excel và chúng ta sẽ thấy ngay được ví dụ về dữ liệu có cấu trúc. Dữ liệu có cấu trúc có thể bám theo một mô hình dữ liệu mà người thiết kế cơ sở dữ liệu (CSDL) tạo ra — ví dụ như các bản thống kê bán hàng theo vùng miền, xếp theo loại mặt hàng hoặc theo khách hàng… Tương tự như việc bạn đến một thư viện sách, ở thư viện có các ngăn và khu vực sách giáo khoa, sách về marketing, tiểu thuyết… Khi bạn muốn tìm loại nào thì chỉ cần tới khu vực đó lựa chọn.
  • Unstructured data: Loại dữ liệu này là loại không thể chứa trong CSDL dạng hàng và cột, và nó cũng không có mô hình dữ liệu nào liên quan. Một số ví dụ của unstructured data gồm: hình ảnh, phim và các tệp âm thanh, các tệp chứa chữ cái, các nội dung từ mạng xã hội, hình ảnh từ vệ tinh, các bài thuyết trình, tệp PDF, các câu trả lời từ bản khảo sát câu hỏi mở, các trang web và bản thu từ các cuộc gọi hỗ trợ khách hàng.
  • Relational database: Sử dụng các bảng để lưu trữ dữ liệu. Một bảng là một tập hợp các dữ liệu có liên quan và chứa các hàng và các cột để lưu dữ liệu.
  • Non – relational database: Cơ sở dữ liệu chỉ lưu trữ dữ liệu mà không có cơ chế rõ ràng và có cấu trúc để liên kết dữ liệu từ các nhóm khác nhau với nhau.

2. Scalability – Khả năng mở rộng quy mô

Điều cần cân nhắc tiếp theo là bạn muốn truy cập bao nhiêu dữ liệu và quy mô dữ liệu mà data warehouse cần hỗ trợ? Relational cloud-data warehouses có thể lưu trữ một lượng lớn dữ liệu mà không tốn nhiều chi phí. Bạn có thể sẽ không cần nhiều hơn những gì họ cung cấp, đặc biệt nếu bạn chỉ sử dụng với mục đích chính là phân tích.

Tuy nhiên, trong trường hợp cần quy mô cực lớn (lớn hơn 2 terabyte dữ liệu), non-relational warehouse thường sẽ phù hợp hơn, vì nó không áp đặt các hạn chế đối với incoming data, cho phép bạn write nhanh hơn.

Bạn có thể muốn xem xét các kho chứa dữ liệu scales như nào trong thời gian có nhu cầu cao. Ví dụ: Redshift có thể hỗ trợ lượng lớn dữ liệu nhưng sẽ yêu cầu bạn thêm nodes theo cách thủ công (để tăng thêm dung lượng lưu trữ và sức mạnh tính toán). Mặt khác, Snowflake cung cấp tính năng auto-scale để xoay cluster một cách linh hoạt.

3. Performance – Hiệu suất

Điều tiếp theo cần xem xét là bạn sẽ cần dữ liệu của mình nhanh đến mức nào. Điều này phụ thuộc vào tốc độ các truy vấn (query) có thể chạy và duy trì tốc độ đó trong thời điểm nhu cầu cao. Như bạn có thể tưởng tượng, hiệu suất (performance) và quy mô (scale) có mối liên hệ chặt chẽ với nhau. Hiệu suất sẽ tăng lên khi bạn mở rộng quy mô kho dữ liệu của mình hoặc thêm các nodes bổ sung theo cách thủ công (ví dụ: Amazon Redshift).

Mặc dù real-time analytics rất quan trọng đối với một số trường hợp sử dụng, nhưng hầu hết các phân tích không yêu cầu realtime data hoặc insight ngay lập tức. Khi bạn trả lời những câu hỏi như “điều gì khiến người dùng rời bỏ sản phẩm?” hoặc “mọi người chuyển từ app sang web như thế nào?”, thì việc truy cập dữ liệu vẫn ổn nếu có độ trễ nhẹ (slight lag). Dữ liệu đó không bị thay đổi theo từng phút và các xu hướng lớn sẽ không bị ảnh hưởng.

4. Maintenance 

Công ty của bạn càng nhỏ, càng có nhiều khả năng bạn sẽ cần các kỹ sư của mình tập trung vào việc xây dựng sản phẩm hơn là lo lắng về các đường ống ETL và quản lý data warehouse hàng ngày. Đối với các kho dữ liệu không tự tối ưu hóa, bạn sẽ cần một người nào đó dành thời gian duy trì, giám sát để đảm bảo hiệu suất mạnh mẽ.

Tuy nhiên, việc duy trì data warehouse theo cách thủ công cho phép bạn tối ưu hóa nó một cách chính xác theo nhu cầu của công ty bạn. Nhiều thời gian hơn dành cho việc điều chỉnh và mở rộng kho dữ liệu theo cách thủ công, có nghĩa là bạn có quyền kiểm soát tốt hơn đối với hiệu suất và chi phí. Đối với một admin có kinh nghiệm, “bảo trì nhiều hơn” đồng nghĩa với việc kiểm soát và linh hoạt hơn.

5. Availability – Tính sẵn sàng của dữ liệu

Bất kể kho dữ liệu bạn chọn là hệ thống tại chỗ hay dịch vụ đám mây, tính có sẵn luôn phải là mối quan tâm hàng đầu. Việc hướng tới phân tích dữ liệu thời gian thực và sự phụ thuộc ngày càng nhiều vào dữ liệu để ra quyết định yêu cầu hệ thống phải luôn đảm bảo mức độ sẵn sàng của dữ liệu.

Doanh nghiệp cần xác định rõ nhu cầu là họ cần cập nhật báo cáo theo chu kì nào, theo từng giây, từng phút, từng giờ hay theo ngày, và cân đối với chi phí doanh nghiệp có thể đáp ứng. Chu kì càng ngắn thì chi phí càng lớn. Bởi để ra được một bản báo cáo, mọi yếu tố từ Data collector, Data Pipeline kết nối với Data Warehouse, đến cả các công cụ Data Visualization cũng đều phải được cập nhật. Ví dụ như việc một sàn chứng khoán phải cần đến vài trăm IT cùng vận hành mới có thể đáp ứng nhu cầu theo dõi số theo từng phút. Hay báo cáo của PowerBI tính phí 10$/tháng với 8 lần cập nhật dữ liệu trong ngày và 5000$/tháng cho 48 lần cập nhật dữ liệu trong ngày. Hãy cân đối chi phí và nhu cầu về tần suất xem báo cáo để lựa chọn cách làm phù hợp.

6. Cost – Chi phí

Với on-premise data warehouse (toàn bộ dữ liệu nằm tại máy chủ doanh nghiệp sở hữu), chi phí xây dựng một kho dữ liệu có thể lên tới hàng chục nghìn đô la. Đó là còn chưa tính đến chi phí quản lý và vận hành để duy trì các hệ thống này hoạt động.

Với cloud-based data warehouse, chi phí có thể dao động nhiều giữa các nhà cung cấp khác nhau. Bạn sẽ khó tránh khỏi bối rối khi đứng trước quá nhiều cấu trúc giá từ nhiều nhà cung cấp. Chẳng hạn, Amazon Redshift tính phí dựa trên loại phiên bản máy tính mà bạn sử dụng để chứa dữ liệu. Trong khi Google BigQuery tính phí cho mỗi truy vấn, điều này yêu cầu doanh nghiệp kiểm soát và đưa quy định chặt chẽ cho mỗi lần truy vấn để kiểm soát giá. Tốt nhất là chọn cơ cấu chi phí minh bạch nhất phù hợp với ngân sách của công ty bạn.

Một vài nhà cung cấp data warehouse để bạn dễ dàng so sánh

Nguồn ảnh: Segment.com

Tạm kết

Lựa chọn công nghệ áp dụng không phải bước duy nhất trong quá trình chuyển đổi số. Trước khi tiến đến phần công nghệ, doanh nghiệp cần xác định rõ:

  • Mục đích sử dụng dữ liệu: Doanh nghiệp cần theo dõi và phân tích gì?
  • Với mục đích đó, đâu là những chỉ số quan trọng cần theo dõi trong team?
  • Thu thập những dữ liệu đó bằng công cụ/phần mềm nào? Có những tiêu chuẩn nào trong doanh nghiệp yêu cầu công cụ phải đáp ứng?
  • Thiết kế kho dữ liệu và đường truyền dữ liệu ra sao để dữ liệu luôn được cập nhật liên tục?

Đó cũng là tư duy mà khoá học Data System của Tomorrow Marketers muốn truyền tải, để giúp các doanh nghiệp xây dựng văn hoá dữ liệu và khai phá những tiềm năng tăng trưởng ngay từ dữ liệu nội bộ. Khóa học Data System sẽ giúp bạn hiểu rõ:

  • Tầm quan trọng của hệ thống dữ liệu nội bộ đối với sự tăng trưởng dài hạn của doanh nghiệp.
  • Cấu trúc của hệ thống dữ liệu nội bộ: Hiểu rõ các thành phần của một hệ thống dữ liệu hoàn chỉnh.
  • Tư duy xây dựng quy trình và số hoá quy trình kinh doanh nhằm thu thập được dữ liệu qua thời gian
  • Tư duy xây dựng đường ống dữ liệu và nhà kho dữ liệu, giúp doanh nghiệp chuẩn hoá dữ liệu từ sớm.
  • Tư duy khai thác dữ liệu để xây dựng các dashboard & báo cáo quản trị, cung cấp bức tranh toàn cảnh của kinh doanh và giám sát hoạt động.

Tìm hiểu thêm về khoá học tại đây.

Tagged: