ETL là gì?

Trích xuất, chuyển đổi và tải (ETL) là quá trình kết hợp dữ liệu từ nhiều nguồn thành một kho lưu trữ lớn trung tâm được gọi là kho dữ liệu. ETL sử dụng hệ thống các quy tắc kinh doanh để làm sạch và sắp xếp dữ liệu thô, sau đó chuẩn bị dữ liệu cho quá trình lưu trữ, phân tích dữ liệumáy học (ML). Bạn có thể giải quyết các nhu cầu nghiệp vụ thông minh cụ thể thông qua phân tích dữ liệu (chẳng hạn như dự đoán kết quả từ các quyết định kinh doanh, tạo báo cáo và bảng thông tin, tăng khả năng vận hành hiệu quả, v.v.)

Tại sao ETL lại quan trọng?

Ngày nay, các tổ chức sở hữu cả dữ liệu có cấu trúc và dữ liệu phi cấu trúc từ nhiều nguồn khác nhau, bao gồm:

  • Dữ liệu khách hàng từ hệ thống quản lý quan hệ khách hàng (CRM) và thanh toán trực tuyến
  • Dữ liệu về hàng tồn kho và hoạt động từ hệ thống của nhà cung cấp
  • Dữ liệu cảm biến từ các thiết bị Internet vạn vật (IoT)
  • Dữ liệu tiếp thị từ phương tiện truyền thông xã hội và phản hồi của khách hàng
  • Dữ liệu nhân viên từ hệ thống nhân sự nội bộ

Bằng cách áp dụng quy trình trích xuất, chuyển đổi và tải (ETL), các tập dữ liệu thô riêng lẻ có thể được chuẩn bị theo một định dạng và cấu trúc dễ tiêu thụ hơn dành cho các mục đích phân tích, tạo ra những thông tin chuyên sâu có giá trị hơn. Ví dụ: các nhà bán lẻ trực tuyến có thể phân tích dữ liệu từ các điểm bán hàng để dự báo nhu cầu và quản lý hàng tồn kho. Các nhóm tiếp thị có thể tích hợp dữ liệu CRM với phản hồi của khách hàng trên mạng xã hội để nghiên cứu hành vi của người tiêu dùng.

ETL mang lại lợi ích cho việc thu thập thông tin kinh doanh như thế nào?

Trích xuất, chuyển đổi và tải (ETL) cải thiện việc thu thập và phân tích thông tin kinh doanh bằng cách làm cho quy trình trở nên đáng tin cậy, chính xác, chi tiết và hiệu quả hơn.

Bối cảnh lịch sử

ETL giúp đưa ra bối cảnh lịch sử có chiều sâu về dữ liệu của tổ chức. Doanh nghiệp có thể kết hợp dữ liệu cũ với dữ liệu từ các nền tảng và ứng dụng mới. Bạn có thể xem các tập dữ liệu cũ hơn song song với thông tin mới hơn, điều này giúp bạn có cái nhìn dài hạn về dữ liệu.

Chế độ xem dữ liệu hợp nhất

ETL cung cấp một chế độ xem dữ liệu hợp nhất để phân tích và báo cáo chuyên sâu. Việc quản lý nhiều tập dữ liệu đòi hỏi thời gian và sự phối hợp, và có thể dẫn đến tình trạng kém hiệu quả và chậm trễ. ETL kết hợp cơ sở dữ liệu và các dạng dữ liệu khác nhau thành một chế độ xem thống nhất, duy nhất. Quá trình tích hợp dữ liệu cải thiện chất lượng dữ liệu và tiết kiệm thời gian cần thiết để di chuyển, phân loại hoặc chuẩn hóa dữ liệu. Điều này giúp dễ dàng phân tích, hình dung và hiểu các tập dữ liệu lớn.

Phân tích dữ liệu chính xác

ETL cung cấp tính năng phân tích dữ liệu chính xác hơn để đáp ứng các tiêu chuẩn về tuân thủ và theo quy định. Bạn có thể tích hợp các công cụ ETL với các công cụ kiểm soát chất lượng dữ liệu để lập hồ sơ, kiểm tra và làm sạch dữ liệu, đảm bảo rằng dữ liệu là đáng tin cậy.

Tự động hóa tác vụ

ETL tự động hóa các tác vụ xử lý dữ liệu có thể lặp lại nhằm giúp phân tích hiệu quả hơn. Các công cụ ETL tự động hóa quá trình di chuyển dữ liệu và bạn có thể thiết lập chúng để tích hợp các thay đổi dữ liệu theo định kỳ hoặc thậm chí trong thời gian chạy. Do đó, các kỹ sư dữ liệu có thể dành nhiều thời gian hơn để sáng tạo và ít thời gian hơn trong việc quản lý các công việc tẻ nhạt như di chuyển và định dạng dữ liệu.

ETL đã phát triển như thế nào?

Trích xuất, chuyển đổi và tải (ETL) bắt nguồn từ sự xuất hiện của các cơ sở dữ liệu quan hệ trong đó dữ liệu được lưu trữ dưới dạng bảng để phân tích. Các công cụ ETL ban đầu đã cố gắng chuyển đổi dữ liệu từ định dạng dữ liệu giao dịch sang định dạng dữ liệu quan hệ để phân tích.

ETL truyền thống

Dữ liệu thô trước đây thường được lưu trữ trong cơ sở dữ liệu giao dịch hỗ trợ nhiều yêu cầu đọc và ghi nhưng không phù hợp với phân tích. Bạn có thể coi nó như một hàng trong bảng tính. Ví dụ: trong hệ thống thương mại điện tử, cơ sở dữ liệu giao dịch lưu trữ thông tin mặt hàng đã mua, chi tiết khách hàng và chi tiết đơn đặt hàng trong một giao dịch. Trong năm, nó ghi lại một danh sách dài các giao dịch với các mục nhập lặp lại cho cùng một khách hàng đã mua nhiều mặt hàng trong năm đó. Do sự trùng lặp dữ liệu, việc phân tích các mặt hàng phổ biến nhất hoặc xu hướng mua hàng trong năm đó trở nên phức tạp.

Để khắc phục vấn đề này, các công cụ ETL đã tự động chuyển đổi dữ liệu giao dịch này thành dữ liệu quan hệ với các bảng được liên kết với nhau. Các nhà phân tích có thể sử dụng các truy vấn để xác định mối quan hệ giữa các bảng, ngoài các mẫu và xu hướng.

ETL hiện đại

Khi công nghệ ETL phát triển, cả loại dữ liệu và nguồn dữ liệu đều tăng theo cấp số nhân. Công nghệ đám mây đã xuất hiện để tạo ra cơ sở dữ liệu rộng lớn (còn gọi là bộ góp dữ liệu). Các bộ góp dữ liệu như vậy có thể nhận dữ liệu từ nhiều nguồn và có các tài nguyên phần cứng cơ sở có khả năng mở rộng theo thời gian. Các công cụ ETL cũng trở nên tinh vi hơn và có thể hoạt động với các bộ góp dữ liệu hiện đại. Chúng có thể chuyển đổi dữ liệu từ các định dạng dữ liệu cũ sang các định dạng dữ liệu hiện đại. Sau đây là các ví dụ về cơ sở dữ liệu hiện đại.

Kho dữ liệu

Kho dữ liệu là kho lưu trữ trung tâm có thể lưu trữ nhiều cơ sở dữ liệu. Trong mỗi cơ sở dữ liệu, bạn có thể sắp xếp dữ liệu của mình thành các bảng và cột mô tả loại dữ liệu trong bảng. Phần mềm kho dữ liệu hoạt động trên nhiều loại phần cứng lưu trữ, chẳng hạn như ổ cứng thể rắn (SSD), ổ cứng và lưu trữ đám mây khác, để tối ưu hóa việc xử lý dữ liệu của bạn.

Hồ dữ liệu

Với hồ dữ liệu, bạn có thể lưu trữ toàn bộ dữ liệu có cấu trúc và không có cấu trúc tại một kho tập trung ở bất kỳ quy mô nào. Bạn có thể lưu trữ dữ liệu nguyên trạng mà không cần phải cấu trúc dữ liệu trước dựa trên các câu hỏi mà bạn có thể có trong tương lai. Hồ dữ liệu cho phép bạn sử dụng nhiều loại phân tích khác nhau trên dữ liệu của bạn như truy vấn SQL, phân tích dữ liệu lớn, tìm kiếm toàn văn bản, phân tích thời gian thực và máy học (ML) để định hướng các quyết định tốt hơn.

ETL hoạt động như thế nào?

Trích xuất, chuyển đổi và tải (ETL) hoạt động bằng cách di chuyển dữ liệu từ hệ thống gốc đến hệ thống đích trong các chu kỳ định kỳ. Quy trình ETL hoạt động theo ba bước:

  1. Trích xuất dữ liệu có liên quan từ cơ sở dữ liệu nguồn
  2. Chuyển đổi dữ liệu để phù hợp hơn cho việc phân tích
  3. Tải dữ liệu vào cơ sở dữ liệu đích

Trích xuất dữ liệu là gì?

Trong quá trình trích xuất dữ liệu, các công cụ trích xuất, chuyển đổi và tải (ETL) sẽ trích xuất hoặc sao chép dữ liệu thô từ nhiều nguồn và lưu trữ chúng trong một khu vực lưu đệm. Khu vực lưu đệm (hay còn gọi là vùng đích) là khu vực lưu trữ trung gian để lưu tạm thời dữ liệu đã trích xuất. Các khu vực lưu đệm dữ liệu thường mang tính tạm thời, có nghĩa là nội dung của chúng sẽ bị xóa sau khi quá trình trích xuất dữ liệu hoàn tất. Tuy nhiên, khu vực lưu đệm cũng có thể giữ lại một kho lưu trữ dữ liệu nhằm mục đích khắc phục sự cố.

Tần suất hệ thống gửi dữ liệu từ nguồn dữ liệu đến kho dữ liệu đích phụ thuộc vào cơ chế cơ sở về thu thập thay đổi dữ liệu. Việc trích xuất dữ liệu thường diễn ra theo một trong ba cách sau.

Thông báo cập nhật

Trong quá trình thông báo cập nhật, hệ thống nguồn sẽ thông báo cho bạn khi bản ghi dữ liệu thay đổi. Sau đó, bạn có thể chạy quá trình trích xuất đối với thay đổi đó. Hầu hết các cơ sở dữ liệu và ứng dụng web đều cung cấp các cơ chế cập nhật để hỗ trợ phương pháp tích hợp dữ liệu này.

Trích xuất tăng dần

Một số nguồn dữ liệu không thể gửi thông báo cập nhật nhưng có thể xác định và trích xuất dữ liệu đã được sửa đổi trong một khoảng thời gian nhất định. Trong trường hợp này, hệ thống kiểm tra các thay đổi theo định kỳ, chẳng hạn như mỗi tuần một lần, mỗi tháng một lần hoặc khi kết thúc chiến dịch. Bạn chỉ cần trích xuất dữ liệu đã thay đổi.

Trích xuất hoàn toàn

Một số hệ thống không thể xác định các thay đổi dữ liệu hoặc gửi thông báo, do đó, tải lại tất cả dữ liệu là lựa chọn duy nhất. Phương pháp trích xuất này yêu cầu bạn giữ một bản sao của lần trích xuất cuối cùng để kiểm tra xem bản ghi nào là bản ghi mới. Bởi vì cách tiếp cận này có khối lượng truyền dữ liệu cao, chúng tôi khuyên bạn chỉ nên sử dụng cách này cho các bảng nhỏ.

Chuyển đổi dữ liệu là gì?

Trong chuyển đổi dữ liệu, các công cụ trích xuất, chuyển đổi và tải (ETL) sẽ chuyển đổi và hợp nhất dữ liệu thô trong khu vực lưu đệm để chuẩn bị cho kho dữ liệu đích. Giai đoạn chuyển đổi dữ liệu có thể liên quan đến các loại thay đổi dữ liệu sau đây.

Chuyển đổi dữ liệu cơ bản

Các chuyển đổi cơ bản cải thiện chất lượng dữ liệu bằng cách loại bỏ lỗi, làm trống trường dữ liệu hoặc đơn giản hóa dữ liệu. Sau đây là các ví dụ về các chuyển đổi này.

Làm sạch dữ liệu

Làm sạch dữ liệu là việc loại bỏ các lỗi và ánh xạ dữ liệu nguồn sang định dạng dữ liệu đích. Ví dụ: bạn có thể ánh xạ các trường dữ liệu trống thành số 0, ánh xạ giá trị dữ liệu “Parent” thành “P” hoặc ánh xạ “Child” thành “C.”

Chống trùng lặp dữ liệu

Chống trùng lặp trong quá trình làm sạch dữ liệu là việc xác định và loại bỏ các bản ghi trùng lặp.

Sửa đổi định dạng dữ liệu

Sửa đổi định dạng là việc chuyển đổi dữ liệu, chẳng hạn như bộ ký tự, đơn vị đo lường và giá trị ngày/giờ, thành một định dạng nhất quán. Ví dụ: một công ty thực phẩm có thể có các cơ sở dữ liệu công thức khác nhau với các thành phần được đo bằng cả kilogam lẫn cân Anh. ETL sẽ chuyển đổi mọi đơn vị sang cân Anh.

Chuyển đổi dữ liệu nâng cao

Chuyển đổi nâng cao là việc sử dụng các quy tắc kinh doanh để tối ưu hóa dữ liệu nhằm phân tích dễ dàng hơn. Sau đây là các ví dụ về các chuyển đổi này.

Dẫn xuất

Dẫn xuất là việc áp dụng các quy tắc kinh doanh vào dữ liệu của bạn để tính toán các giá trị mới dựa trên các giá trị hiện có. Ví dụ: bạn có thể chuyển đổi doanh thu thành lợi nhuận bằng cách trừ đi chi phí hoặc tính tổng chi phí mua hàng bằng cách nhân giá của từng mặt hàng với số lượng mặt hàng đã đặt hàng.

Gộp ghép

Trong quá trình chuẩn bị dữ liệu, gộp ghép là việc liên kết các dữ liệu giống nhau từ các nguồn dữ liệu khác nhau. Ví dụ: bạn có thể tính tổng chi phí mua một mặt hàng bằng cách cộng giá trị mua hàng từ các nhà cung cấp khác nhau và chỉ giữ lại tổng cuối trong hệ thống đích.

Chia tách

Bạn có thể chia một cột hoặc một thuộc tính dữ liệu thành nhiều cột trong hệ thống đích. Ví dụ: nếu nguồn dữ liệu lưu tên khách hàng là “Jane John Doe”, bạn có thể chia nó thành các cột họ, tên đệm và tên.

Tổng hợp

Tổng hợp là việc cải thiện chất lượng dữ liệu bằng cách giảm một số lượng lớn các giá trị dữ liệu thành một tập dữ liệu nhỏ hơn. Ví dụ: giá trị hóa đơn của đơn đặt hàng khách hàng có thể chứa nhiều số tiền nhỏ khác nhau. Bạn có thể tóm tắt dữ liệu bằng cách cộng gộp giá trị trong một khoảng thời gian nhất định để xây dựng chỉ số giá trị lâu dài của khách hàng (CLV).

Mã hóa

Bạn có thể bảo vệ dữ liệu nhạy cảm để đảm bảo tuân thủ luật dữ liệu hoặc quyền riêng tư của dữ liệu bằng cách thêm mã hóa trước khi luồng dữ liệu được truyền đến cơ sở dữ liệu đích.

Tải dữ liệu là gì?

Trong quá trình tải dữ liệu, các công cụ trích xuất, chuyển đổi và tải (ETL) di chuyển dữ liệu đã chuyển đổi từ khu vực lưu đệm vào kho dữ liệu đích. Đối với hầu hết các tổ chức sử dụng ETL, quy trình này được tự động hóa, được xác định rõ ràng, liên tục và theo hàng loạt. Sau đây là hai phương pháp để tải dữ liệu.

Tải hoàn toàn

Ở chế độ tải hoàn toàn, toàn bộ dữ liệu từ nguồn được chuyển đổi và chuyển đến kho dữ liệu. Quá trình tải hoàn toàn thường diễn ra vào lần đầu tiên bạn tải dữ liệu từ hệ thống nguồn vào kho dữ liệu.

Tải tăng dần 

Đối với tải tăng dần, công cụ ETL tải delta (hoặc chênh lệch) giữa hệ thống đích và nguồn theo những khoảng thời gian đều đặn. Công cụ này sẽ lưu lại ngày trích xuất cuối cùng nhằm đảm bảo rằng chỉ tải các bản ghi được thêm vào sau ngày này. Có hai cách để thực hiện tải tăng dần.

Tải tăng dần theo luồng

Nếu bạn có khối lượng dữ liệu nhỏ, bạn có thể truyền các thay đổi liên tục qua đường ống dữ liệu tới kho dữ liệu đích. Khi tốc độ dữ liệu tăng lên hàng triệu sự kiện mỗi giây, bạn có thể sử dụng xử lý luồng sự kiện để theo dõi và xử lý luồng dữ liệu nhằm đưa ra quyết định kịp thời hơn.

Tải gia tăng theo hàng loạt

Nếu bạn có khối lượng dữ liệu lớn, bạn có thể thu thập các thay đổi dữ liệu tải thành từng loạt theo định kỳ. Trong khoảng thời gian định kỳ này, không có hành động nào có thể xảy ra với hệ thống nguồn hoặc hệ thống đích khi dữ liệu được đồng bộ hóa.

ELT là gì?

Trích xuất, tải và chuyển đổi (ELT) là một phần mở rộng đảo ngược thứ tự các hoạt động của trích xuất, chuyển đổi và tải (ETL). Bạn có thể tải dữ liệu trực tiếp vào hệ thống đích trước khi xử lý. Không bắt buộc phải có khu vực lưu đệm trung gian vì kho dữ liệu đích có khả năng ánh xạ dữ liệu bên trong nó. Với việc sử dụng cơ sở hạ tầng đám mây, ELT đã trở nên phổ biến hơn, mang lại cho cơ sở dữ liệu đích sức mạnh xử lý cần thiết để chuyển đổi.

ETL so với ELT

ELT phù hợp với các tập dữ liệu không có cấu trúc, khối lượng lớn, yêu cầu tải thường xuyên. Đây cũng là công cụ lý tưởng dành cho dữ liệu lớn, vì việc lập kế hoạch phân tích có thể được thực hiện sau khi trích xuất và lưu trữ dữ liệu. ETL để lại phần lớn các tác vụ chuyển đổi cho giai đoạn phân tích và tập trung vào việc tải dữ liệu thô được xử lý tối thiểu vào kho dữ liệu.

Quy trình ETL yêu cầu xác định nhiều hơn lúc đầu. Cần phải tiến hành phân tích ngay từ đầu để xác định các loại, cấu trúc và mối quan hệ của dữ liệu đích. Các nhà khoa học dữ liệu chủ yếu sử dụng ETL để tải cơ sở dữ liệu cũ vào kho dữ liệu và ngày nay, ELT đã trở thành tiêu chuẩn.

Ảo hóa dữ liệu là gì?

Ảo hóa dữ liệu sử dụng lớp trừu tượng hóa phần mềm để tạo chế độ xem dữ liệu tích hợp mà không cần trích xuất, chuyển đổi hoặc tải dữ liệu một cách vật lý. Các tổ chức sử dụng chức năng này như một kho lưu trữ dữ liệu ảo hợp nhất mà không có sự tốn kém và phức tạp trong việc xây dựng và quản lý các nền tảng nguồn và đích riêng biệt. Dù ảo hóa dữ liệu có thể được sử dụng cùng với trích xuất, chuyển đổi và tải (ETL), nó ngày càng được coi là một giải pháp thay thế cho ETL và các phương pháp tích hợp dữ liệu vật lý khác. Ví dụ: bạn có thể dùng AWS Glue Elastic Views để nhanh chóng tạo một bảng ảo, tức một chế độ xem cụ thể hóa, từ nhiều kho dữ liệu nguồn khác nhau.

AWS Glue là gì?

AWS Glue là một dịch vụ tích hợp dữ liệu phi máy chủ, giúp người dùng phân tích dễ dàng khám phá, chuẩn bị, di chuyển và tích hợp dữ liệu từ nhiều nguồn cho hoạt động phân tích, máy học và phát triển ứng dụng.

  • Bạn có thể khám phá và kết nối với hơn 80 kho lưu trữ dữ liệu đa dạng.
  • Bạn có thể quản lý dữ liệu của mình trong một danh mục dữ liệu tập trung.
  • Kỹ sư dữ liệu, nhà phát triển ETL, nhà phân tích dữ liệu và người dùng doanh nghiệp có thể sử dụng AWS Glue Studio để tạo, chạy và giám sát các quy trình ETL nhằm tải dữ liệu vào hồ dữ liệu.
  • AWS Glue Studio cung cấp các giao diện ETL trực quan, Sổ tay và trình soạn thảo mã để người dùng có các công cụ phù hợp với bộ kỹ năng của họ.
  • Nhờ có Phiên tương tác, các kỹ sư dữ liệu có thể khám phá dữ liệu cũng như tác giả và tác vụ kiểm thử bằng cách sử dụng IDE hoặc sổ tay ưa thích của họ.
  • AWS Glue là dịch vụ phi máy chủ và tự động điều chỉnh quy mô theo nhu cầu, giúp bạn có thể tập trung vào việc thu thập thông tin chuyên sâu từ dữ liệu ở quy mô petabyte mà không cần quản lý cơ sở hạ tầng.

Bắt đầu sử dụng AWS Glue bằng cách tạo tài khoản AWS.

Các bước tiếp theo để sử dụng ETL trên AWS

Tham khảo các tài nguyên bổ sung liên quan đến sản phẩm
Tìm hiểu thêm về AWS Glue 
Đăng ký tài khoản miễn phí

Nhận ngay quyền sử dụng bậc miễn phí của AWS. 

Đăng ký 
Bắt đầu xây dựng trong bảng điều khiển

Bắt đầu xây dựng với AWS trên Bảng điều khiển quản lý AWS.

Đăng nhập