2010-03-12 19 views
10

Giả sử bạn có một dự án nhỏ trên bề mặt trông giống như một kết hợp tốt cho một công cụ ETL như Talend. Tuy nhiên, giả sử hơn nữa, rằng bạn chưa bao giờ sử dụng Talend và hơn nữa, bạn không tin tưởng các công cụ "lập trình trực quan" nói chung và muốn mã hóa tất cả mọi thứ theo cách cũ (văn bản trên một IDE tốt đẹp!) Với sự giúp đỡ của một ngôn ngữ thích hợp & thư viện hỗ trợ.Công cụ Java/Groovy thẳng so với ETL (Talend/etc) - bạn sẽ sử dụng thư viện nào?

Một số mẫu ngôn ngữ & thư viện hỗ trợ có thể giúp bạn tránh xa sự cám dỗ/bẫy công cụ ETL là gì?

+1

ETL: Trích xuất, chuyển đổi, tải. http://en.wikipedia.org/wiki/Etl – Thilo

+1

Tôi thấy liên kết này hữu ích khi tôi cố gắng đưa ra quyết định đó: [Đại học Kimball: Hệ thống con của ETL được xem xét lại] (http://www.informationweek.com/news/software/bi/202405400? queryText = subsystems + etl + revisited) – Bradford

Trả lời

0

Tùy thuộc vào kích thước của giản đồ DB, bạn có thể lập bản đồ tất cả mọi thứ thật nhanh chóng trong Hibernate và chỉ sử dụng mô hình đối tượng kết quả làm việc của bạn (tùy thuộc vào những gì bạn muốn công cụ ETL cho anyways)

2

Tôi nghĩ đây là một kết hợp khá tốt cho các khung công tác lấy cảm hứng từ Rails, chẳng hạn như Grails trên Groovy hoặc Lift on Scala.

5

Nó phụ thuộc vào việc phân phối là bộ xử lý hay bản thân đầu ra. Nếu bạn chỉ cần cung cấp đầu ra, bạn không cần phải duy trì mã. Nếu mã cần được duy trì thì bạn sẽ duy trì nó hay ai đó khác?

Nếu ai đó khác cần duy trì tôi sẽ sử dụng Java hoặc cung cấp cho họ Talend.

Nếu đó là mã throwaway, tôi sẽ sử dụng những gì sẽ dễ dàng hơn hoặc thú vị để lập trình.

Nếu bạn cần duy trì nó và quá trình xử lý phức tạp, tôi sẽ sử dụng Scala. Nó có:

  • some libraries để tương tác với cơ sở dữ liệu
  • literals xml
  • combinators phân tích cú pháp
  • tính năng thú vị trên gói bộ sưu tập của mình (bản đồ, bộ lọc, groupby, phân vùng, ...)
  • và tất nhiên là bất kỳ thư viện Java hiện có nào khác.
+0

Tôi đã kiểm tra mã đã tạo của Talend ... Bạn có chắc chắn nó có thể được duy trì sau khi tạo không? – yura

+0

@yura, tôi chỉ nhìn ngắn gọn * Talend * và chưa đích thân sử dụng nó. Khi tôi có nghĩa là các định nghĩa và cấu hình của Talend có thể được duy trì (không nhất thiết là mã được tạo ra). – huynhjl

+0

Được rồi, tôi chỉ muốn biết ý kiến ​​của bạn cho dù ngôn ngữ trực quan (như Talend hay Pentaho) có thể được sử dụng cho các quy tắc ETL phức tạp đòi hỏi sự hỗ trợ và bảo trì lâu dài. – yura

4

Tôi từng nghĩ rằng "lập trình trực quan" là điều gì đó cho những người không thể lập trình. Sau đó, tôi đã được tiếp xúc với Talend trong một dự án, và tôi nhận ra rằng loại công cụ này là chính xác cho công việc, khi nói đến việc di chuyển dữ liệu từ A sang B, và biến đổi nó trong tiến trình. Đó là thiết kế phần mềm theo định hướng thành phần, bởi một nhãn hiệu học thuật hơn.

Tôi vẫn coi bản thân mình là một lập trình viên có thể làm bất cứ điều gì, và sau đó một số, với trình soạn thảo văn bản và dấu nhắc trình bao. Nhưng tôi cũng đã trở thành một fan hâm mộ lớn của Talend.

Tiết lộ đầy đủ: Tôi hiện đang làm việc cho công ty :-)

4

Kiểm tra DataExpress. Đó là một bộ công cụ ETL dựa trên cơ sở dữ liệu dựa trên Scala.

Các vấn đề liên quan