Cách sử dụng N8N để chuyển đổi và thao tác dữ liệu

How to Use n8n for Data Transformation and Manipulation

Cách sử dụng N8N để chuyển đổi và thao tác dữ liệu

Hiểu N8N

N8N là một công cụ tự động hóa nguồn mở cho phép người dùng kết nối các ứng dụng và dịch vụ khác nhau để hợp lý hóa quy trình công việc và tự động hóa các tác vụ lặp đi lặp lại. Với bộ sưu tập tích hợp rộng rãi và giao diện thân thiện với người dùng, N8N vốn được trang bị cho các quy trình chuyển đổi và thao tác dữ liệu. Chuyển đổi dữ liệu chuyển đổi, lọc và làm giàu dữ liệu là điều cần thiết để phân tích dữ liệu hiệu quả và những hiểu biết có thể hành động.

Thiết lập N8N

Cài đặt

Phương pháp Docker

Đối với những người quen thuộc với Docker, N8N có thể được cài đặt thuận tiện thông qua container Docker. Bắt đầu bằng cách chạy lệnh sau:

docker run -d -p 5678:5678 n8nio/n8n

Phương thức Node.js

Ngoài ra, nếu bạn thích cài đặt Node.js, hãy sử dụng các mục sau:

npm install n8n -g
n8n

Sau khi được cài đặt, bạn có thể truy cập N8N qua https://localhost:5678.

Cấu hình ban đầu

Sau khi khởi chạy N8N, hãy hoàn thành các bước cấu hình ban đầu sau trong thiết lập của bạn:

  1. Thiết lập cơ sở dữ liệu: Chọn cơ sở dữ liệu để lưu trữ quy trình công việc (SQLite, PostgreSQL, v.v.).
  2. Xác thực cơ bản: Vì lý do bảo mật, định cấu hình xác thực người dùng.
  3. Biến môi trường: Thiết lập các biến môi trường để kiểm soát hành vi N8N. Điều này bao gồm các biến để thiết lập cài đặt URL hoặc SMTP tùy chỉnh để thông báo.

Tạo quy trình làm việc đầu tiên của bạn

Bảng điều khiển N8N cung cấp một biểu diễn trực quan về quy trình công việc của bạn. Thực hiện theo các bước này để tạo quy trình làm việc đầu tiên của bạn:

  1. Tạo quy trình công việc: Nhấp vào nút ‘Mới’ để bắt đầu. Một tấm bạt trống sẽ xuất hiện để thêm các nút.
  2. Thêm các nút: Sử dụng “bảng điều khiển nút” để tìm kiếm và thêm các ứng dụng khác nhau, chẳng hạn như Google Sheets, AirTable hoặc API REST.
  3. Kết nối các nút: Kéo từ đầu ra của một nút sang đầu vào khác để tạo luồng dữ liệu. Sử dụng ‘Thêm kết nối’ để thiết lập các liên kết.

Nguồn dữ liệu và tích hợp

Các nút thường được sử dụng

Nút yêu cầu HTTP

Nút này cho phép bạn truy xuất hoặc gửi dữ liệu qua các yêu cầu API. Định cấu hình nó bằng cách chỉ định phương thức HTTP (nhận, bài, đặt, xóa) và URL. Bạn cũng có thể tham số hóa các yêu cầu bằng các biến N8N.

Nút Google Sheets

Lý tưởng để trích xuất hoặc cập nhật dữ liệu trong bảng tính. Với nút này, bạn có thể điều khiển các hàng và cột bằng các hành động khác nhau, chẳng hạn như ‘nhận được nhiều’, ‘tạo’ hoặc ‘cập nhật’.

Các nút nâng cao

Nút chức năng

Nút chức năng cho phép bạn viết mã JavaScript để thực hiện các phép biến đổi dữ liệu phức tạp. Sử dụng nút này để thao tác các mảng dữ liệu, thực hiện tính toán hoặc dữ liệu định dạng để tiêu thụ bên ngoài.

Ví dụ:

items.forEach(item => {
    item.json['newField'] = item.json['oldField'] * 10;
});
return items;

Mã mã

Tương tự như nút chức năng, nhưng hỗ trợ nhiều ngôn ngữ (JavaScript, Python, v.v.). Điều này cung cấp sự linh hoạt nếu bạn cảm thấy thoải mái với nhiều ngôn ngữ kịch bản.

Kỹ thuật thao tác dữ liệu

Biến đổi cơ bản

Ánh xạ dữ liệu

Việc sử dụng nút đặt có thể giúp các khóa JSON Remap hoặc các giá trị thay thế. Trong trường hợp bạn muốn chuyển đổi dữ liệu từ nhiều nguồn thành một lược đồ thống nhất, phương pháp này có hiệu quả cao.

Cấu hình ví dụ trong nút đặt:

Khóa JSON Giá trị
tên {{$json["user"]["name"]}}
tuổi {{$json["user"]["age"]}}

Logic có điều kiện

Tận dụng nút IF để giới thiệu logic có điều kiện vào quy trình công việc dữ liệu của bạn. Các quyết định có thể được đưa ra dựa trên nội dung của dữ liệu đến, cho phép các quy trình công việc động.

Ví dụ:

  • Nếu tuổi> 30, hãy cập nhật ‘trạng thái’ lên ‘người lớn’.
  • Nếu tuổi <= 30, hãy cập nhật 'trạng thái' lên 'thanh niên'.

Bộ lọc dữ liệu

Nút bộ lọc cho phép làm sạch dữ liệu bằng cách xóa các mục không liên quan hoặc trùng lặp. Bạn có thể chỉ định các điều kiện để lưu dữ liệu, hợp lý hóa các bộ dữ liệu hiệu quả để phân tích hoặc báo cáo.

Lặp qua dữ liệu

Sử dụng nút ‘Splitinbatches’ để xử lý hàng loạt các bộ dữ liệu lớn. Điều này cho phép bạn chia dữ liệu của mình thành các tập hợp nhỏ hơn, làm cho các phép biến đổi dễ quản lý hơn và ít bị lỗi hơn.

Webhooks để tích hợp dữ liệu thời gian thực

Sử dụng các nút Webhook cho phép bạn kích hoạt quy trình công việc dựa trên dữ liệu đến từ các dịch vụ khác nhau. Điều này là vô giá khi xử lý dữ liệu thời gian thực.

  1. Thiết lập Node Webhook: Kéo nút Webhook lên khung vẽ và lưu ý URL điểm cuối do N8N cung cấp.
  2. Tích hợp: Định cấu hình các ứng dụng bên ngoài để gửi dữ liệu đến URL này, bắt đầu quy trình làm việc.

Tập hợp dữ liệu và làm giàu

Hợp nhất dữ liệu

Nút hợp nhất cho phép kết hợp dữ liệu từ các nguồn khác nhau dựa trên các khóa được chỉ định. Điều này rất hữu ích để củng cố thông tin, chẳng hạn như hợp nhất hồ sơ người dùng từ nhiều dịch vụ.

Cấu hình liên quan đến:

  1. Chọn ‘Hợp nhất bởi khóa’ để kết hợp các bộ dữ liệu.
  2. Chỉ định ‘khóa’ để khớp với bộ dữ liệu.

Dữ liệu phong phú

Thêm các quy trình làm giàu bằng API của bên thứ ba. Ví dụ bao gồm truy xuất tên quốc gia dựa trên dữ liệu vị trí người dùng hoặc xác thực địa chỉ.

Xử lý lỗi

Bao gồm nút ‘Kích hoạt lỗi’ là rất quan trọng để theo dõi quy trình công việc của bạn. Bằng cách này, nếu xảy ra lỗi, bạn có thể gửi cảnh báo hoặc đăng nhập sự kiện mà không mất dữ liệu.

Lập kế hoạch quy trình công việc

Sử dụng nút Cron để tự động thực hiện theo các khoảng thời gian được chỉ định. Điều này cho phép làm mới dữ liệu kịp thời, chẳng hạn như báo cáo hàng ngày hoặc các tác vụ tổng hợp dữ liệu hàng tuần.

Cron Biểu thức cú pháp

Cron Node sử dụng cú pháp Cron Standard với các trường trong phút, giờ, ngày của tháng, tháng và ngày trong tuần. Ví dụ: để lên lịch cho một quy trình công việc để chạy mỗi ngày vào lúc 9 giờ sáng, biểu thức sẽ là:

0 9 * * *

Xuất dữ liệu

Tạo báo cáo

Sử dụng nút phản hồi HTTP để tạo các báo cáo hoặc bảng tính có thể tải xuống dựa trên dữ liệu được xử lý trong quy trình làm việc của bạn. Bạn có thể định dạng phản hồi trong CSV, JSON hoặc XML.

Nhập dữ liệu

Đối với nhập dữ liệu, sử dụng các nút như FTP, SFTP hoặc lưu trữ đám mây (Dropbox, Google Drive). Chúng cho phép bạn kéo các tệp dữ liệu để chuyển đổi và xử lý liền mạch.

Giám sát và gỡ lỗi

N8N cung cấp các công cụ giám sát tích hợp để giám sát việc thực hiện quy trình làm việc. Sử dụng ‘Nhật ký thực thi’ để theo dõi thành công và thất bại. Mỗi lần thực hiện có thể cung cấp những hiểu biết chi tiết về nơi quy trình công việc có thể cần điều chỉnh.

Thực tiễn tốt nhất để chuyển đổi dữ liệu

  1. Xác thực dữ liệu: Luôn xác nhận đầu vào để ngăn chặn tham nhũng dữ liệu.
  2. Kiểm soát phiên bản: Thường xuyên cập nhật và phiên bản quy trình công việc của bạn khi điều kiện thay đổi.
  3. Tài liệu: Tài liệu cho mỗi mục đích của mỗi nút trong một quy trình công việc để tham khảo trong tương lai.
  4. Tối ưu hóa quy trình công việc: Giảm thiểu các nút và kết nối không cần thiết để hợp lý hóa hiệu suất.