Tài liệu Big Data nguồn mở, Phần 1: Hướng dẫn Hadoop: Tạo ứng dụng Hello World với Java, Pig, Hive, Flume, Fuse, Oozie và Sqoop với Informix, DB2 và MySQL ppt
Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 58 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
58
Dung lượng
734,26 KB
Nội dung
Big Datanguồn mở, Phần1:HướngdẫnHadoop:Tạoứng
dụng HelloWorldvớiJava,Pig,Hive,Flume,Fuse,Oozievà
Sqoop vớiInformix,DB2vàMySQL
Có rất nhiều điều thú vị về BigDatavà cũng có rất nhiều sự nhầm lẫn về nó. Bài
này sẽ cung cấp một định nghĩa về BigDatavà sau đó thực hiện một loạt các ví dụ
để bạn có thể có được những hiểu biết ban đầu về một số khả năng của Hadoop,
công nghệ nguồn mở hàng đầu trong lĩnh vực Big Data. Cụ thể, ta tập trung vào
những câu hỏi sau:.
Big Data, Hadoop, Sqoop, Hive và Pig là gì vàtại sao lĩnh vực này lại có
nhiều điều thú vị?
Hadoop liên quan đến DB2và Informix của IBM như thế nào? Các công
nghệ này có thể chạy với nhau không?
Tôi có thể bắt đầu vớiBigData như thế nào? Có ví dụ nào dễ để thử chạy
trên máy tính không?
Nếu bạn đã biết khái niệm về Hadoop rồi và muốn vào thẳng công việc với
các ví dụ mẫu, thì hãy làm như sau.
1. Hãy bắt đầu chạy một thể hiện Informix hoặc DB2 của bạn.
2. Tải về file ảnh cho máy ảo VMWare từ Trang web của Cloudera và
tăng thông số RAM máy ảo lên thành 1,5 GB.
3. Chuyển đến mục chứa các ví dụ mẫu.
4. Có một thể hiện MySQL đã được xây dựng sẵn trong máy ảo
VMWare này. Nếu bạn đang làm các bài thực hành mà không kết nối
mạng, hãy sử dụng các ví dụ MySQL này.
Ngoài ra, xin vui lòng xem tiếp
Big Data là gì?
Big Data lớn về số lượng, được bắt giữ với tốc độ nhanh, có cấu trúc hoặc không
có cấu trúc, hoặc là bao gồm các yếu tố ở trên. Những yếu tố này làm cho BigData
khó bắt giữ lại, khai phá và quản lý nếu dùng các phương thức truyền thống. Có rất
nhiều ý kiến về lĩnh vực này, đến nỗi có thể cần đến một cuộc tranh luận kéo dài
chỉ để định nghĩa thế nào là Big Data.
Sử dụng công nghệ BigData không chỉ giới hạn về các khối lượng lớn. Bài này sử
dụng các ví dụ mẫu nhỏ để minh họa các khả năng của công nghệ này. Tính đến
năm 2012, các hệ thống được coi là lớn nằm trong phạm vi 100 Petabyte.
Dữ liệu lớn có thể vừa là dữ liệu có cấu trúc, vừa là dữ liệu không có cấu trúc. Các
cơ sở dữ liệu quan hệ truyền thống, như Informix và DB2, cung cấp các giải pháp
đã được kiểm chứng với dữ liệu có cấu trúc. Thông qua khả năng mở rộng, các cơ
sở dữ liệu này cũng quản lý cả dữ liệu không có cấu trúc. Công nghệ Hadoop mang
đến những kỹ thuật lập trình mới và dễ sử dụng hơn để làm việc với các kho dữ
liệu lớn có cả dữ liệu có cấu trúc lẫn dữ liệu không có cấu trúc.
Về đầu trang
Tại sao lại có những điều thú vị ấy?
Có nhiều yếu tố tạo nên sự cường điệu xoay quanh Big Data, bao gồm:.
Mang tính toán và lưu trữ lại cùng với nhau trên phần cứng thông dụng: Cho
kết quả tốc độ nhanh với chi phí thấp.
Tỷ số giá hiệu năng: Công nghệ BigData của Hadoop đưa ra mức tiết kiệm
chi phí đáng kể (hãy nghĩ đến một hệ số nhân xấp xỉ 10) với những cải thiện
hiệu năng đáng kể (một lần nữa, hãy nghĩ đến một hệ số nhân là 10). Lời lãi
của bạn có thể thay đổi. Nếu công nghệ hiện tại có thể bị đánh bại nặng nề
như vậy, thì thật đáng để xem xét xem Hadoop có thể bổ sung hoặc thay thế
các khía cạnh của kiến trúc hiện tại của bạn không.
Khả năng mở rộng quy mô tuyến tính: Tất cả các công nghệ song song đều
tuyên bố dễ mở rộng quy mô. Hadoop có khả năng mở rộng quy mô kể từ
khi phát hành bản mới nhất có khả năng mở rộng giới hạn số lượng các nút
vượt quá 4.000.
Truy cập đầy đủ đến dữ liệu không có cấu trúc: Một kho dữ liệu có thể mở
rộng quy mô cao với một mô hình lập trình song song thích hợp,
MapReduce, đã là một thách thức cho ngành công nghiệp từ lâu nay. Mô
hình lập trình của Hadoop không giải quyết tất cả vấn đề, nhưng nó là một
giải pháp mạnh cho nhiều nhiệm vụ.
Các bản phân phối Hadoop: IBM và Cloudera
Đối với những người mới bắt đầu thì họ thường bối rối rằng "Tôi có thể tìm phần
mềm để làm việc vớiBigData ở đâu?" Các ví dụ trong bài này đều dựa trên bản
phân phối Hadoop miễn phí của Cloudera được gọi là CDH (viết tắt của Cloudera
distribution including Hadoop). Bản phân phối này có sẵn dưới dạng một file ảnh
máy ảo VMWare từ trang web Cloudera. Gần đây IBM đang sửa đổi nền tảng Big
Data của mình để chạy trên CDH. Xem thông tin chi tiết trong phầnTài nguyên.
Thường thì thuật ngữ công nghệ đột phá bị lạm dụng rất nhiều, nhưng có thể nó rất
phù hợp trong trường hợp này.
Về đầu trang
Hadoop là gì?
Dưới đây là một vài định nghĩa về Hadoop, mỗi định nghĩa nhắm vào một nhóm
đối tượng khác nhau trong doanh nghiệp:
Đối với các giám đốc điều hành: Hadoop là một dự án phần mềm nguồn mở
của Apache để thu được giá trị từ khối lượng/ tốc độ/ tính đa dạng đáng kinh
ngạc của dữ liệu về tổ chức của bạn. Hãy sử dụng dữ liệu thay vì vứt bỏ hầu
hết dữ liệu đó đi.
Đối với các giám đốc kỹ thuật: Hadoop là một bộ phần mềm nguồn mở để
khai phá BigData có cấu trúc và không có cấu trúc về công ty của bạn. Nó
tích hợp với hệ sinh thái Business Intelligence của bạn.
Đối với nhân viên pháp lý: Hadoop là một bộ phần mềm nguồn mở được
nhiều nhà cung cấp đóng gói và hỗ trợ. Hãy xem phầnTài nguyên về việc
trả tiền sở hữu trí tuệ (IP).
Đối với các kỹ sư: Hadoop là một môi trường song song thực thi map-reduce
dựa trên Java, không chia sẻ gì cả. Hãy nghĩ đến hàng trăm, hàng ngàn máy
tính đang làm việc để giải quyết cùng một vấn đề, có khả năng khôi phục lỗi
dựng sẵn. Các dự án trong hệ sinh thái Hadoop cung cấp khả năng load (tải)
dữ liệu, hỗ trợ ngôn ngữ cấp cao, triển khai trên đám mây tự động và các khả
năng khác.
Đối với chuyên gia bảo mật: Hadoop là một bộ phần mềm bảo mật-
Kerberos.
Hadoop có những thành phần nào?
Dự án Hadoop của Apache có hai thành phần cốt lõi, kho lưu trữ tệp gọi là Hadoop
Distributed File System (HDFS – Hệ thống tệp phân tán Hadoop) và khung công
tác lập trình gọi là MapReduce. Có một số dự án hỗ trợ để sử dụng HDFS và
MapReduce. Bài này sẽ cung cấp một cái nhìn sơ lược, bạn hãy tìm đọc cuốn sách
của OReily "Hadoop The Definitive Guide", tái bản lần thứ 3, để biết thêm chi tiết.
Các định nghĩa dưới đây nhằm cung cấp cho bạn những thông tin cơ bản để sử
dụng các ví dụ mã tiếp theo. Bài này thực sự mong muốn giúp bạn bắt đầu bằng
trải nghiệm thực hành với công nghệ này. Đây là một bài hướngdẫn hơn là bài hỏi
đáp thảo luận.
HDFS: Nếu bạn muốn có hơn 4000 máy tính làm việc với dữ liệu của bạn,
thì tốt hơn bạn nên phổ biến dữ liệu của bạn trên hơn 4000 máy tính đó.
HDFS thực hiện điều này cho bạn. HDFS có một vài bộ phận dịch chuyển.
Các Datanode (Nút dữ liệu) lưu trữ dữ liệu của bạn và Namenode (Nút tên)
theo dõi nơi lưu trữ các thứ. Ngoài ra còn có những thành phần khác nữa,
nhưng như thế đã đủ để bắt đầu.
MapReduce: Đây là mô hình lập trình cho Hadoop. Có hai giai đoạn, không
ngạc nhiên khi được gọi là Map và Reduce. Để gây ấn tượng với các bạn bè
của bạn hãy nói với họ là có một quá trình shuffle-sort (ND.: một quá trình
mà hệ thống thực hiện sắp xếp và chuyển các kết quả đầu ra của map tới các
đầu vào của các bộ rút gọn) giữa hai giai đoạn Map và Reduce. JobTracker
(Trình theo dõi công việc) quản lý hơn 4000 thành phần công việc
MapReduce. Các TaskTracker (Trình theo dõi nhiệm vụ) nhận các lệnh từ
JobTracker. Nếu bạn thích Java thì viết mã bằng Java. Nếu bạn thích SQL
hoặc các ngôn ngữ khác không phải Java thì rất may là bạn có thể sử dụng
một tiện ích gọi là Hadoop Streaming (Luồng dữ liệu Hadoop).
Hadoop Streaming: Một tiện ích để tạo nên mã MapReduce bằng bất kỳ
ngôn ngữ nào: C, Perl, Python, C++, Bash, v.v. Các ví dụ bao gồm một trình
mapper Python và một trình reducer AWK.
Hive và Hue: Nếu bạn thích SQL, bạn sẽ rất vui khi biết rằng bạn có thể viết
SQL và yêu cầu Hive chuyển đổi nó thành một tác vụ MapReduce. Đúng là
bạn chưa có một môi trường ANSI-SQL đầy đủ, nhưng bạn có 4000 ghi
chép và khả năng mở rộng quy mô ra nhiều Petabyte. Hue cung cấp cho bạn
một giao diện đồ họa dựa trên trình duyệt để làm công việc Hive của bạn.
Pig: Một môi trường lập trình mức cao hơn để viết mã MapReduce. Ngôn
ngữ Pig được gọi là Pig Latin. Bạn có thể thấy các quy ước đặt tên hơi khác
thường một chút, nhưng bạn sẽ có tỷ số giá-hiệu năng đáng kinh ngạc và
tính sẵn sàng cao.
Sqoop: Cung cấp việc truyền dữ liệu hai chiều giữa Hadoop và cơ sở dữ liệu
quan hệ yêu thích của bạn.
Oozie: Quản lý luồng công việc Hadoop. Oozie không thay thế trình lập lịch
biểu hay công cụ BPM của bạn, nhưng nó cung cấp cấu trúc phân nhánh if-
then-else và điều khiển trong phạm vi tác vụ Hadoop của bạn.
HBase: Một kho lưu trữ key-value có thể mở rộng quy mô rất lớn. Nó hoạt
động rất giống như một hash-map để lưu trữ lâu bền (với những người hâm
mộ python, hãy nghĩ đến một từ điển). Nó không phải là một cơ sở dữ liệu
quan hệ, mặc dù có tên là HBase.
FlumeNG: Trình nạp thời gian thực để tạo luồng dữ liệu của bạn vào
Hadoop. Nó lưu trữ dữ liệu trong HDFS và HBase. Bạn sẽ muốn bắt đầu với
FlumeNG, để cải thiện luồng ban đầu.
Whirr: Cung cấp Đám mây cho Hadoop. Bạn có thể khởi động một hệ thống
chỉ trong vài phút với một tệp cấu hình rất ngắn.
Mahout: Máy học dành cho Hadoop. Được sử dụng cho các phân tích dự báo
và phân tích nâng cao khác.
Fuse: Làm cho hệ thống HDFS trông như một hệ thống tệp thông thường, do
đó bạn có thể sử dụng lệnh ls, cd, rm và những lệnh khác với dữ liệu HDFS.
Zookeeper: Được sử dụng để quản lý đồng bộ cho hệ thống. Bạn sẽ không
phải làm việc nhiều với Zookeeper, nhưng nó sẽ làm việc rất nhiều cho bạn.
Nếu bạn nghĩ rằng bạn cần viết một chương trình có sử dụng Zookeeper thì
bạn hoặc là rất, rất thông minh và bạn có thể là một ủy viên cho một dự án
Apache hoặc bạn sắp có một ngày rất tồi tệ.
Hình 1 cho thấy các phần quan trọng của Hadoop.
Hình 1. Kiến trúc Hadoop
HDFS, tầng dưới cùng, nằm trên một cụm phần cứng thông thường. Các máy chủ
lắp vào tủ khung (rack-mounted) đơn giản, mỗi máy chủ có các CPU lõi 2-Hex, 6
đến 12 đĩa và 32 Gb ram. Đối với một công việc map-reduce, tầng trình ánh xạ đọc
từ các đĩa ở tốc độ rất cao. Trình ánh xạ phát ra các cặp khóa giá trị được sắp xếp
và được đưa tới trình rút gọn và tầng trình rút gọn tóm lược các cặp key-value.
Không, bạn không phải tóm lược các cặp key-value, trên thực tế bạn có thể có một
tác vụ map-reduce chỉ có có các trình ánh xạ. Điều này sẽ trở nên dễ hiểu hơn khi
bạn xem ví dụ python-awk.
Hadoop tích hợp với cơ sở hạ tầng Informix hoặc DB2 như thế nào?
Hadoop tích hợp rất tốt với cơ sở dữ liệu Informix và cơ sở dữ liệuDB2 thông qua
Sqoop. Sqoop là công cụ nguồn mở hàng đầu để di chuyển dữ liệu giữa Hadoop và
các cơ sở dữ liệu quan hệ. Nó sử dụng JDBC để đọc và viết vào Informix, DB2,
MySQL, Oracle và các nguồn khác. Có các bộ thích ứng được tối ưu hoá cho một
vài cơ sở dữ liệu, bao gồm Netezza và DB2. Hãy xem phầnTài nguyên về cách tải
về các bộ thích ứng này. Tất cả các ví dụ đều là đặc trưng của Sqoop.
Về đầu trang
Bắt đầu: Làm thế nào để chạy các ví dụ Hadoop, Hive,Pig,OozievàSqoop đơn
giản
Bạn đã tìm hiểu nhập môn và các định nghĩa, bây giờ là lúc bắt đầu những công
việc thực sự. Để tiếp tục, bạn sẽ cần tải về VMWare, VirtualBox hoặc file ảnh máy
ảo khác từ trang Web Cloudera và bắt đầu chạy MapReduce! File máy ảo chạy cấu
hình 64bit và một trong các môi trường ảo hóa phổ biến. Hầu hết các môi trường
ảo hóa đều có một bản tải về miễn phí. Khi bạn cố gắng khởi động một file ảnh
máy ảo 64bit, bạn có thể nhận được thông báo lỗi về các thiết lập BIOS. Hình 2
cho thấy các thay đổi cần thiết trong BIOS của một máy, ở đây là Thinkpad™. Hãy
thận trọng khi thực hiện các thay đổi. Một số gói bảo mật của công ty sẽ yêu cầu
bạn nhập mật khẩu trước khi lưu những thay đổi.
Hình 2. Các thiết lập BIOS cho một khách ảo 64bit
Big Data được dùng ở đây thực sự là khá nhỏ. Vấn đề không phải là làm cho máy
tính của bạn nóng lên khi xử lý một tệp lớn, mà để cho bạn thấy các nguồn dữ liệu
rất thú vị và các công việc của map-reduce để trả lời những thắc mắc của bạn.
Tải về file ảnh máy ảo Hadoop
Bạn cần sử dụng file ảnh máy ảo Cloudera để chạy các ví dụ này. Hadoop là một
công nghệ để giải quyết các vấn đề. Việc đóng gói file ảnh Cloudera cho phép bạn
tập trung vào các câu hỏi big-data. Nhưng nếu bạn quyết định tự mình lắp ráp tất
cả các bộ phận, Hadoop trở thành vấn đề cần giải quyết, chứ không còn là giải
pháp nữa.
Tải về một máy ảo. Máy ảo CDH4, sản phẩm mới nhất có sẵn ở đây: CDH4 image.
Phiên bản trước, CDH3, có sẵn ở đây: CDH3 image.
Bạn có thể chọn các công nghệ ảo hóa của mình. Bạn có thể tải về một môi trường
ảo hóa miễn phí từ VMWare và những phần mềm khác. Ví dụ, hãy chuyển đến
vmware.com vàtải về vmware-player. Máy tính của bạn đang chạy Windows, hãy
tải về phiên bản vmware-player dành cho windows. Các ví dụ trong bài này sẽ sử
dụng VMWare cho các ví dụ này và chạy hệ điều hành Linux Ubuntu bằng cách sử
dụng "tar" thay vì "winzip" hoặc tương đương.
Sau khi tải về, giải nén (untar/unzip) như sau: tar -zxvf cloudera-demo-vm-
cdh4.0.0-vmware.tar.gz.
Hoặc, nếu bạn đang sử dụng CDH3, thì sử dụng lệnh sau: tar -zxvf cloudera-demo-
vm-cdh3u4-vmware.tar.gz
Unzip có thể hoạt động với các tệp tar. Sau khi giải nén, bạn có thể bắt đầu chạy
máy ảo đó như sau:
vmplayer cloudera-demo-vm.vmx.
Bây giờ bạn sẽ có một màn hình trông giống như màn hình hiển thị trong Hình 3.
Hình 3. Ảnh ảo Cloudera
Lệnh Vmplayer đi sâu ngay vào máy ảo và khởi động máy ảo. Nếu bạn đang sử
dụng CDH3, thì bạn sẽ cần phải tắt máy ảo và thay đổi các thiết lập bộ nhớ. Sử
dụng biểu tượng nút nhấn nguồn bên cạnh đồng hồ ở phía dưới cùng chính giữa
màn hình để tắt nguồn máy ảo. Sau đó, bạn cần chỉnh sửa quyền truy cập vào các
thiết lập máy ảo.
Đối với CDH3, bước tiếp theo là bạn tăng bộ nhớ RAM. Hầu hết các thiết lập này
chỉ có thể thay đổi khi đã tắt máy ảo. Hình 4 cho thấy cách truy cập vào các thiết
lập này và tăng bộ nhớ RAM được cấp phát lên trên 2GB.
Hình 4. Thêm bộ nhớ RAM cho máy ảo
Như hiển thị trong Hình 5, bạn có thể thay đổi các thiết lập mạng thành bridged
(được nối cầu). Với thiết lập này, máy ảo sẽ nhận được địa chỉ IP riêng của mình.
Nếu điều này tạo ra các vấn đề về sử dụng mạng của bạn, thì bạn có thể tùy chọn
sử dụng Network Address Translation (NAT). Bạn sẽ sử dụng mạng để kết nối đến
cơ sở dữ liệu.
Hình 5. Thay đổi các thiết lập mạng thành bridged
Bạn bị hạn chế bởi bộ nhớ RAM trên hệ thống máy chủ vật lý, do đó, đừng cố
gắng cấp phát bộ nhớ RAM nhiều hơn bộ nhớ RAM hiện có trên máy tính của bạn.
Nếu bạn làm như vậy, máy tính sẽ chạy rất chậm.
Bây giờ, bạn chờ một lát, hãy tiếp tục và bật nguồn cho máy ảo. Tài khoản
cloudera được tự động đăng nhập vào lúc khởi động. Nếu bạn cần mật khẩu thì mật
khẩu của Cloudera là: cloudera.
Cài đặt Informix vàDB2
Bạn sẽ cần một cơ sở dữ liệu để làm việc với nó. Nếu bạn chưa có một cơ sở dữ
liệu nào, thì bạn có thể tải về Ấn bản Informix Developer (Phiên bản Informix
dành cho nhà phát triển) ở đây hoặc Ấn bản DB2 Express-C miễn phí.
Một lựa chọn khác để cài đặt DB2 là tải về file ảnh máy ảo VMWare đã cài đặt sẵn
DB2 trên một hệ điều hành Linux SuSE. Hãy đăng nhập như là người dùng chủ
(root), với mật khẩu là: password.
[...]... dụng các từ dài hơn vàvới một độ lệch tiêu chuẩn gây sốc (nhằm mục đích hài hước) Tất nhiên điều đó giả định rằng các từ ngắn hơn là tốt hơn Hãy tiếp tục, phần tiếp theo sẽ ghi dữ liệu trong HDFS vào Informix vàDB2 Sử dụngSqoop để ghi dữ liệu từ HDFS vào Informix,DB2 hoặc MySQL thông qua JDBC Sqoop Apache Project là một Hadoop dựa trên JDBC nguồn mở cho tiện ích di chuyển dữ liệu của cơ sở dữ liệu. .. wordcount; > eoj Database selected (count(*)) 13837 1 row(s) retrieved Database closed Liệt kê 14 Những người dùng DB2: Sqoop ghi các kết quả đếm từ vào DB2 # here is the db2 syntax # create a destination table for db2 # #db2 => connect to sample # # Database Connection Information # # Database server = DB2/ LINUXX8664 10.1.0 # SQL authorization ID = DB2INST1 # Local database alias = SAMPLE # #db2 => create... Nhập dữ liệu vào HDFS từ Informix vàDB2 bằng Sqoop Việc chèn dữ liệu vào HDFS của Hadoop cũng có thể được thực hiện bằng Sqoop Chức năng hai hướng được điều khiển thông qua tham số nhập khẩu Các cơ sở dữ liệu ví dụ mẫu đi kèm với cả hai sản phẩm này có một số bộ dữ liệu đơn giản để bạn có thể dùng cho mục đích này Liệt kê 16 cho thấy cú pháp và các kết quả khi dùngSqoop cho mỗi máy chủ Đối với những... DB2 ở định dạng nén, do đó chỉ cần giải nén nó trong thư mục đích, như trong Liệt kê 2 Liệt kê 2 Cài đặt driver JDBC của DB2 mkdir db2jdbc cd db2jdbc unzip /ibm _data_ server_driver_for_jdbc_sqlj_v10.1.zip Giới thiệu ngắn về HDFS và MapReduce Trước khi bạn bắt đầu di chuyển dữ liệu giữa cơ sở dữ liệu quan hệ của bạn và Hadoop, bạn cần biết qua về HDFS và MapReduce Có rất nhiều hướngdẫn kiểu "hello world" ... chỉ di chuyển các kết quả bằng Sqoop vào Informix vàDB2 Bạn đã tạo ra dữ liệu về Twain và Cooper, bây giờ hãy di chuyển nó vào một cơ sở dữ liệu, như trong Liệt kê 11 Liệt kê 11 Thiết lập driver JDBC #Sqoop needs access to the JDBC driver for every # database that it will access # please copy the driver for each database you plan to use for these exercises # the MySQL database and driver are already... (userid) là db2inst1 Làm việc trực tiếp trên tài khoản root cũng giống như việc lái xe mà không thắt dây an toàn vậy Hãy liên hệ với Quản trị viên cơ sở dữ liệu (DBA) của bạn về việc chạy cơ sở dữ liệu Bài này sẽ không trình bày điều đó ở đây Đừng cố gắng cài đặt cơ sở dữ liệu bên trong máy ảo Cloudera vì không có đủ dung lượng đĩa để sử dụng Máy ảo sẽ kết nối với cơ sở dữ liệu bằng cách sử dụngSqoop thông... một bảng DB2 Như hiển thị trong Liệt kê 17, bằng cách chỉ rõ tùy chọn -m 1, có thể nhập khẩu một bảng mà không có khóa chính và kết quả là một tệp duy nhất Liệt kê 17 Nhập khẩu Sqoop từ cơ sở dữ liệu ví dụ mẫu DB2 vào HDFS # very much the same as above, just a different jdbc connection # and different table name sqoop import driver com.ibm .db2. jcc.DB2Driver \ connect "jdbc :db2: //192.168.1.1 31:5 0001/sample"... "jdbc :db2: //192.168.1.1 31:5 0001/sample" \ table staff username db2inst1 \ password db2inst1 -m 1 # Here is another example # in this case set the sqoop default schema to be different from # the user login schema sqoop import driver com.ibm .db2. jcc.DB2Driver \ connect "jdbc :db2: //192.168.1.3:50001/sample:currentSchema=DB2INST1;" \ table helloworld \ target-dir "/user/cloudera/sqoopin2" \ username marty \ -P -m 1 # the... not null primary key , n int) #DB20 000I The SQL command completed successfully # sqoop export -D sqoop. export.records.per.statement=1 \ fields-terminated-by '\t' \ driver com.ibm .db2. jcc.DB2Driver \ connect "jdbc :db2: //192.168.1.1 31:5 0001/sample" \ username db2inst1 password db2inst1 \ table wordcount export-dir /user/cloudera/HF.out 12/08/09 12:32:59 WARN tool.BaseSqoopTool: Setting your password... driver to the sqoop/ lib directory #one time copy of jdbc driver to sqoop lib directory $ sudo cp Informix_JDBC_Driver/lib/ifxjdbc*.jar /usr/lib /sqoop/ lib/ $ sudo cp db2jdbc/db2jcc*.jar /usr/lib /sqoop/ lib/ $ sudo cp /usr/lib/hive/lib /mysql- connector-java-5.1.15-bin.jar /usr/lib /sqoop/ lib/ Các ví dụ được hiển thị trong các Liệt kê từ 12 đến 15 được trình bày cho từng cơ sở dữ liệu Hãy đọc ngay vào ví dụ . Big Data nguồn mở, Phần 1: Hướng dẫn Hadoop: Tạo ứng
dụng Hello World với Java, Pig, Hive, Flume, Fuse, Oozie và
Sqoop với Informix, DB2 và MySQL. cụ nguồn mở hàng đầu để di chuyển dữ liệu giữa Hadoop và
các cơ sở dữ liệu quan hệ. Nó sử dụng JDBC để đọc và viết vào Informix, DB2,
MySQL, Oracle và