Trong thế giới số hóa ngày nay, dữ liệu là một tài nguyên quý giá và phân tích dữ liệu đóng vai trò quyết định trong sự thành công của nhiều tổ chức. Tuy nhiên, để tận dụng hết tiềm năng của dữ liệu, chúng ta cần những cơ sở hạ tầng và quy trình phân tích mạnh mẽ, linh hoạt và hiệu quả. Đó chính là lý do analytics engineering, một lĩnh vực mới mẻ và hứa hẹn, đã nổi lên như một phản ánh của sự phát triển và tiến bộ trong ngành phân tích dữ liệu.
Trong bài viết này, chúng ta sẽ khám phá sâu hơn về analytics engineering, từ định nghĩa, lịch sử hình thành cho đến vai trò của nó trong thế giới kinh doanh ngày nay. Hãy cùng 200lab bắt đầu hành trình khám phá!
1. Analytics Engineering là gì?
Bắt nguồn từ sự phát triển nhanh chóng của dữ liệu lớn và nhu cầu ngày càng tăng về việc phân tích dữ liệu hiệu quả. Trước đây, các công ty thường tập trung vào việc tích hợp dữ liệu và phân tích nó sau đó. Tuy nhiên, với sự ra đời của big data làm gia tăng về lượng dữ liệu và đa dạng hóa nguồn dữ liệu, việc duy trì và mở rộng các hệ thống phân tích trở nên phức tạp hơn.
Analytics engineering ra đời để giải quyết những thách thức này bằng cách đặc trưng hóa quá trình phát triển và duy trì hệ thống phân tích dữ liệu. Nó kết hợp các phương pháp và công nghệ từ khoa học dữ liệu, kỹ thuật phần mềm và quản lý dự án để xây dựng các hệ thống phân tích dữ liệu linh hoạt, dễ mở rộng và dễ bảo trì.
Mục tiêu của analytics engineering là tạo ra một hệ thống cơ sở dữ liệu chuyên nghiệp, linh hoạt và dễ mở rộng để thu thập, lưu trữ và xử lý dữ liệu từ nhiều nguồn khác nhau, từ đó tạo ra thông tin hữu ích cho các quyết định kinh doanh.
2. Analytics Engineering ra đời như thế nào?
Sự ra đời và phát triển nhanh chóng của các công cụ Modern Data Stack (MDS) như Airbyte, Fivetran và các data warehouses trên cloud (BigQuery, Redshift & Snowflake) đã chuyển mô hình của các công ty từ ETL data sang ELT data. Và Analytics Engineering ra đời cùng với sự chuyển mình của phương pháp vận hành dữ liệu đó.
2.1. ETL data
Nhiều công ty hiện đại tận dụng việc ra quyết định dựa trên dữ liệu được xây dựng dựa trên data warehouses.
Trong ETL (Extract, Transform, Load) dữ liệu được thu thập từ tất cả các loại nguồn hiện có khác nhau và được chuyển đổi thành các dimensions, metrics dạng hàng, cột cơ bản sau đó load lên data warehouses để end user sử dụng cho mục đích phân tích, hay apply những model machine learning, AI vào.
Đây là giải pháp điển hình được áp dụng cho các công ty vừa và nhỏ, với lượng data tương đối nhỏ và yêu cầu chuyển đổi, tính toán phức tạp đã được xác định trước sao cho phù hợp với mục tiêu phân tích.
Đây là lý do tại sao các team data sử dụng phương pháp này phải biết trước cách dữ liệu sẽ được sử dụng trước khi thực hiện bất kỳ phân tích nào.
Vấn đề đặt ra khi dùng phương pháp ETL là khi có bất kì thay đổi nào về các metrics, dimensions nào khác cần thiết cho end user thì sẽ rất phức tạp và tốn nhiều công sức cho những thay đổi trên.
2.2. ELT data
Trong phương pháp tiếp cận ELT (Extract, Load, Transform), dữ liệu được tải từ các nguồn trực tiếp vào data warehouses nơi diễn ra quá trình transform data. ELT pipeline xử lý mọi kích thước, mọi loại dữ liệu và xử lý cả dữ liệu lớn có cấu trúc và không cấu trúc, hoàn toàn khắc phục được vấn đề của phương pháp ETL.
Phương pháp ELT cung cấp tính linh hoạt bởi Data Analyst có thể lựa chọn dữ liệu cần chuyển đổi và phân tích vào bất kỳ thời điểm nào. Đồng thời, nó giúp giảm sức mạnh tính toán và chuyển đổi phức tạp đặt lên nhóm Data Engineer, cho phép họ hoạt động ít bị ràng buộc hơn trong quá trình tương tác với dữ liệu từ các nhóm Data Analyst và Data Scientist.
Sự lựa chọn của phương pháp này cũng hỗ trợ việc giảm tải lượng dữ liệu cần tải lên dashboard, cải thiện hiệu suất của dashboard. Thông qua việc tạo các mô hình dữ liệu để chuyển đổi và tính toán các chỉ số đã được sẵn có trên các kho dữ liệu.
Trong quá trình ELT này, giai đoạn chuyển đổi được tách biệt rõ ràng so với giai đoạn trích xuất và tải, giúp đảm bảo sự linh hoạt và tần suất trong tương tác với dữ liệu mà không làm giảm đi hiệu suất.
Tuy nhiên, việc chuyển đổi dữ liệu cũng đòi hỏi người thực hiện có hiểu biết sâu rộng về các công nghệ đặc thù và hiểu biết về ngữ cảnh kinh doanh, không chỉ đơn thuần là kỹ năng SQL và các ngôn ngữ lập trình cơ bản. Do đó, Analytics Engineers thường được giao trọng trách thực hiện các nhiệm vụ về Analytics Engineering thay vì chỉ có Data Engineers.
3. Analytics Engineer là gì? Họ sẽ làm những công việc gì?
Các kỹ sư dữ liệu (Data Engineer) tạo ra một ngăn tủ, bắt đầu từ việc thu thập gỗ và các công cụ cần thiết, sau đó lắp ráp chúng thành một cấu trúc hoàn chỉnh. Tiếp theo, các kỹ sư phân tích (Analytics Engineer) mở ngăn tủ và bắt đầu sắp xếp các vật dụng như đĩa, cốc, bát theo một trật tự cụ thể, có thể là theo màu sắc, hình dạng hoặc kích thước. Kết quả là một tủ gọn gàng, tổ chức mà các nhà phân tích dữ liệu (Data Analyst) có thể dễ dàng tìm kiếm và lấy ra các mục cần thiết. Chẳng hạn, họ có thể lấy một chiếc cốc màu xám mà họ đang tìm và sử dụng nó để pha một tách trà!
3.1. Analytics Engineer là gì?
Analytics Engineer là một thành viên trong team data tại một công ty sử dụng kiến thức công nghệ và kinh doanh để khai thác giá trị của dữ liệu trên quy mô lớn nhằm giúp tổ chức đạt được kết quả tốt hơn.
Analytics Engineer tập trung vào quá trình chuyển đổi dữ liệu thô thành các dữ liệu có thể sử dụng trực tiếp để phân tích, xây dựng các mô hình học máy phục vụ cho mục đích kinh doanh và hỗ trợ ra quyết định kinh doanh.
Analytics Engineer yêu cầu vừa có khả năng kĩ thuật vừa có hiểu biết về kinh doanh. Tuy nhiên, về mặt hiểu biết về kinh doanh thì không nhất thiết phải sâu sắc và toàn vẹn như Data Analyst và Business Intelligence.
3.2. Họ sẽ làm những công việc gì?
Analytics Engineer đóng vai trò là cầu nối giữa Data Engineer và Data Analyst/end user. Một số công việc họ thường làm là:
- Mô hình hóa dữ liệu (Data modeling): Điều này liên quan đến việc thiết kế và triển khai các cấu trúc và lược đồ dữ liệu để lưu trữ, sắp xếp dữ liệu và cập nhật dữ liệu thường xuyên.
- Viết truy vấn SQL: Điều này liên quan đến việc sử dụng SQL để trích xuất, làm sạch và chuyển đổi dữ liệu.
- Viết Guideline cho Data Warehouse: Điều này liên quan đến việc ghi lại thông tin về các nguồn dữ liệu, cách cấu trúc và chuyển đổi.
- Truyền đạt kết quả cho các team khác: Điều này bao gồm việc trình bày dữ liệu một cách rõ ràng và ngắn gọn để người dùng doanh nghiệp có thể dễ dàng hiểu được, và lấy đúng dữ liệu để trả lời những câu hỏi của riêng họ.
- Cộng tác với các thành viên nhóm dữ liệu: Điều này liên quan đến việc làm việc với các chuyên gia dữ liệu khác để thu thập, làm sạch và tính toán các metrics cần thiết.
Với việc rất nhiều công ty công nghệ hiện đang sử dụng mô hình MDS, ELT và data warehouse trên cloud, vai trò Analytics Engineer ngày càng quan trọng.
4. Những kĩ năng cần có để trở thành Analytics Engineer?
Analytics Engineer đòi hỏi một bộ kỹ năng đa dạng, bao gồm việc nắm vững các công cụ và khái niệm như sau:
4.1. SQL
SQL được cho là một trong những công cụ được sử dụng rộng rãi nhất trong tất cả các phân tích trên bất kỳ vai trò dữ liệu nào. Bạn phải nắm chắc các kiến thức năng cao về SQL như aggregation functions, joins, case statements, CTE và window functions ...
4.2. Python
Python là ngôn ngữ lập trình phổ biến nhất hiện nay. Cho dù bạn đảm nhận vai trò Analytics Engineer hay bất kỳ vai trò dữ liệu nào, Python chắc chắn là một kĩ năng cần thiết hoặc có thể là ưu thế của bạn khi cạnh tranh trong quá trình tuyển dụng.
Với tư cách là một Analytics Engineer, bạn cần có kiến thức tốt về các kiểu dữ liệu, cấu trúc dữ liệu, vòng lặp if và for cũng như cách tạo các hàm ... trong python.
4.3. Mô hình hóa dữ liệu (Data Modeling)
Mô hình hóa dữ liệu là quá trình cấu trúc dữ liệu thô của bạn thành định dạng sẵn sàng phân tích để cho phép người ra quyết định đưa ra quyết định dựa trên dữ liệu tốt hơn.
Một số kỹ thuật lập mô hình dữ liệu phổ biến nhất là Star Schema (Kimball's), One Big Table (OBT) và Data Vault.
4.4. Data warehouses trên cloud
Một trong những động lực thúc đẩy sự ra đời của Analytics Engineer là sự phát triển nhanh chóng của kho dữ liệu đám mây, do đó, kiến thức về Data warehouses trên cloud là điều bắt buộc đối với một Analytics Engineer.
Hiện tại có một số kho dữ liệu đám mây có phổ biến trên thị trường như: Google BigQuery, Amazon Redshift và Snowflake ... Nếu bạn có ý định trở thành một Analytics Engineer thì hãy tìm hiểu về nó nhé!
4.5. Git, Shell
Là một Analytics Engineer bạn không tránh khỏi việc làm việc với cùng một file code (Python, SQL ...) theo nhóm, bạn cần theo dõi những thay đổi nào được thực hiện, ai thực hiện và khi nào những thay đổi đó được thực hiện hoặc revert code về phiên bản trước nếu phát sinh lỗi trong quá trình làm việc nhóm bằng Git, một hệ thống kiểm soát phiên bản.
Có một số dịch vụ lưu trữ Git như GitHub, Gitlab và Bitbucket...
Một số kiến thức về shell, lệnh linux cơ bản, đặc biệt là về quản lý file.
4.6. Chuyển đổi dữ liệu (Transform data)
Chuyển đổi dữ liệu là quá trình cấu trúc và định dạng lại dữ liệu thô của bạn thành các mô hình dữ liệu mà từ đó chúng ta có thể tìm hiểu thông tin chi tiết và rút ra thông tin kinh doanh thông minh, bằng các công cụ như dbt, airflow, nifi ...
Quá trình này thường liên quan đến việc tích hợp dữ liệu giao dịch (doanh số, chi phí, v.v.) với dữ liệu hoạt động (tên, địa điểm, v.v.) để dữ liệu có thể hữu ích cho việc phân tích kinh doanh.
4.7. Kĩ năng giao tiếp
Analytics Engineer là người đóng vai trò là cầu nối giữa Data Engineer và end user, do đó giao tiếp là một kỹ năng quan trọng khác mà một Analytics Engineer nên có.
4.8 Hiểu biết về các chỉ số kinh doanh
Analytics Engineer là người thực hiện tính toán các metrics cần thiết trong quá trình transform data nên việc có hiểu biết về các chỉ số kinh doanh, các chỉ số đánh giá hiệu quả là cần thiết.
5. Kết luận
Trong bài viết này, chúng ta đã khám phá lĩnh vực Analytics Engineering và làm thế nào để trở thành một Analytics Engineer. Những bạn yêu thích và muốn theo đuổi định hướng nghề nghiệp về data cũng đã có thêm một con đường để phát triển.
Cuối cùng, nếu bạn quan tâm đến Analytics Engineering, đừng ngần ngại tìm kiếm mentorship từ những người có kinh nghiệm trong lĩnh vực này, hoặc tìm kiếm các tài liệu trên internet để học tập và rèn luyện để trở thành một Analytics Engineer xuất sắc nhé.
Các bài viết liên quan: