1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI tập 2 lý THUYẾT về DATA môn học CÔNG NGHỆ 4 0 TRONG LÃNH vực cơ KHÍ

61 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Lý Thuyết Về Data
Tác giả Kiều Trung Tín, Bùi Trung Kiên, Huỳnh Nhật Trường, Huỳnh Lê Hữu Tuấn, Ngô Trần Quang Châu, Lê Gia Khánh
Người hướng dẫn Trần Quang Phước
Trường học Trường Đại Học Bách Khoa
Chuyên ngành Công nghệ 4.0 trong lĩnh vực cơ khí
Thể loại Bài tập
Năm xuất bản 2023
Thành phố TP Hồ Chí Minh
Định dạng
Số trang 61
Dung lượng 2,35 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • 1. DataCollection (5)
    • 1.1. Kháiniệm (5)
    • 1.2. Các phươngphápthuthậpdữliệu (5)
    • 1.3. Hâuquảcủathu thậpdữliệusaicách (6)
    • 1.4. Yếutốquantrọngtrongthuthậpdữliệu (7)
    • 1.5. Các bướcđểthuthậpdữliệu (8)
    • 1.6. Hadoop (10)
      • 1.6.1. Kháiniệm (10)
      • 1.6.2. KiếntrúcHadoop (10)
      • 1.6.3. HoạtđộngcủaHadoop (14)
  • 2. DataIntegration (14)
    • 2.1. Kháiniệm (14)
    • 2.3. Hệ thốnglưutrữdữliệuHDFS (17)
      • 2.3.1. Kháiniệm (17)
      • 2.3.2. Ưuđiểmnổibật củaHDFS (17)
      • 2.3.3. KiếntrúccủaHDFS (18)
  • 3. Dataprocessing (20)
    • 3.1. Địnhnghĩa (20)
    • 3.2. Chứcnăngcủadataprocessing (20)
    • 3.3. Các hìnhthứcxửlýdữliệu (21)
    • 3.4. CôngcụhỗtrợxửlýApacheSpark (22)
    • 3.5. Các thànhphầncủaApacheSpark (23)
    • 3.6. Các dữliệubịtrùnglặphoặccácdữliệukhôngliênquan (25)
    • 3.7. Chuyểndữliệusangmộtdạngmớiđểdễdàngphântích (26)
  • 4. DataAnalysis (27)
    • 4.1. Apache Hadoop (27)
    • 4.2. Apache Hive (27)
      • 4.2.1. Kháiniệm (27)
      • 4.2.2. Nguyênlýhoạtđộng (28)
      • 4.2.3. CấutrúccủaApacheHive (28)
      • 4.2.4. CácTínhNăngChính (29)
      • 4.2.5. Ưuđiểmvànhượcđiểm (30)
    • 4.3. Apache Impala (30)
      • 4.3.1. Kháiniệm (30)
      • 4.3.2. Nhiệmvụ (31)
      • 4.3.3. ƯuđiểmvànhượcđiểmcủaImpala (31)
      • 4.3.4. Các tínhnăngcủaImpala (32)
      • 4.3.5. CơsởdữliệuquanhệvàImpala (32)
    • 4.4. Apache Drill (33)
      • 4.4.1. TìmhiểuvềApachaDrill (33)
      • 4.4.2. Kháiniệm (34)
  • 5. DataVisualization (34)
    • 5.1. Kháiniệm (34)
    • 5.2. Các loạitrựcquanhóadữliệu (36)
    • 5.3. Các côngcụ trựcquanhóa (36)
    • 5.4. Ưuđiểmvànhượcđiểm (37)
    • 5.5. PowerBI (37)
      • 5.5.1. SơbộvềphầnmềmPowerBI (37)
      • 5.5.2. Các thànhphầncủaPowerBI (38)
      • 5.5.3. Ưuđiểmvànhượcđiểm (38)
      • 5.5.4. HướngdẫnsửdụngPowerBI (39)
    • 5.6. Apache Zeppelin (46)
      • 5.6.1. GiớithiệuApacheZeppelin (46)
      • 5.6.2. Các tínhnăngcủaApacheZeppelin (47)
    • 5.7. Tableau (55)
      • 5.7.1. GiớithiệuTableau (55)
      • 5.7.2. Ưuđiểm,nhượcđiểmcủaTableau (57)
  • 6. DataManagement (58)
    • 6.1. Khátquát (58)
    • 6.2. Ứngdụng (58)
    • 6.3. Điểm mạnh (58)
      • 6.3.1. Hệ thốngphântán (58)
      • 6.3.2. Cơchếlưudữliệu (59)
    • 6.4. Cấutrúcdữliệu (60)
    • 6.5. Tínhdưthừa (60)
    • 6.6. Ưuđiểmvànhượcđiểm (60)
      • 6.6.1. Ưuđiểm (60)
      • 6.6.2. Nhượcđiểm (60)

Nội dung

Điều tra, quan sát, nghiên cứu lưu trữ và thu thập dữ liệu thứ cấp có thể làphươngphápđịnhlượnghoặcđịnhtính.Cẩn thận xem xét phương pháp bạn sẽ sử dụng để thu thập dữ liệu giúp bạn trựct

DataCollection

Kháiniệm

Data collection là quá trình thu thập và đo lường thông tin về các biến số quan tâm theo cách có hệ thống, giúp trả lời câu hỏi nghiên cứu, kiểm tra giả thuyết và đánh giá kết quả Thành phần này là chung cho tất cả các lĩnh vực nghiên cứu, bao gồm khoa học tự nhiên, xã hội, nhân văn và kinh doanh Mặc dù phương pháp có thể khác nhau tùy theo ngành học, nhưng mục tiêu chính vẫn là đảm bảo thu thập dữ liệu chính xác và trung thực.

Dù là trong lĩnh vực nghiên cứu hay sở thích nào, việc thu thập dữ liệu chính xác là rất quan trọng để duy trì tính toàn vẹn của nghiên cứu Lựa chọn công cụ thu thập dữ liệu phù hợp, có thể là công cụ hiện có, đã được sửa đổi hoặc mới phát triển, cùng với hướng dẫn sử dụng rõ ràng, sẽ giúp giảm thiểu khả năng xảy ra sai sót.

Các phươngphápthuthậpdữliệu

Quan sát là một phương pháp thu thập dữ liệu hiệu quả, cho phép ghi lại có kiểm soát các sự kiện và hành vi của con người Phương pháp này thường được sử dụng kết hợp với các kỹ thuật khác để xác minh độ chính xác của dữ liệu thu thập được.

Phỏng vấn là quá trình trao đổi thông tin giữa phỏng vấn viên và người được phỏng vấn, diễn ra qua nhiều hình thức tiếp xúc khác nhau Trong thực tế, các hình thức tiếp xúc trong phỏng vấn rất đa dạng.

- Thửnghiệmtrongphòngthínghiệmlàđểquansátvàđolườngcácphảnứngtâmlýhoặcthe odõicáccuộcphỏngvấn,thảoluậncủacácnhómtrọngđiểm.Phòngthí nghiệm thường được chia làm 2 ngăn:

Ngăn 1 dành cho những người được phỏngvấn,haythửnghiệm;Ngăn2dànhchonhữngquansátviênvàcáctrangbịkỹthuật,ởgiữa2ng ănđược trangbị1tấmkính1chiều.

Thử nghiệm tại hiện trường là quá trình quan sát và đo lường thái độ cũng như phản ứng của khách hàng đối với những thay đổi từ nhà cung cấp sản phẩm hoặc dịch vụ, bao gồm việc thay đổi giá bán, phương thức phục vụ và chăm sóc khách hàng.

Phương pháp điều tra thăm dò là quá trình tìm hiểu kỹ lưỡng nguồn gốc của các sự kiện, tập trung vào việc thu thập thông tin từ nhân chứng và vật chứng Trong nghiên cứu marketing, phương pháp thu thập dữ liệu này được áp dụng rộng rãi nhờ vào những ưu điểm của nó, giúp đảm bảo bốn nguyên tắc cơ bản của một nghiên cứu khoa học.

Nghiên cứu định lượng rất hữu ích trong marketing vì nó cho phép đo lường và so sánh các ý kiến, kỳ vọng của khách hàng, nhà cung cấp và người tiêu dùng Phương pháp thu thập dữ liệu qua bảng câu hỏi trong điều tra thăm dò là phù hợp và hiệu quả.

Thảo luận nhóm là phương pháp thu thập dữ liệu phổ biến trong nghiên cứu định tính, nơi dữ liệu được thu thập thông qua cuộc thảo luận giữa một nhóm đối tượng nghiên cứu Quá trình này được dẫn dắt bởi một người điều khiển chương trình (moderator) để đảm bảo sự hiệu quả và chất lượng của thông tin thu thập được.

Hâuquảcủathu thậpdữliệusaicách

- Đánh lừa các nhà nghiên cứu khác để theo đuổi những con đường điều tra không cókếtquả

Mức độ tác động của việc thu thập dữ liệu bị lỗi có thể khác nhau tùy thuộc vào kỷ luật và bản chất của cuộc điều tra Tuy nhiên, điều này có thể gây ra tác hại không cân xứng khi các kết quả nghiên cứu này được sử dụng để hỗ trợ các khuyến nghị chính sách công.

Yếutốquantrọngtrongthuthậpdữliệu

Để đảm bảo chất lượng trước khi tiến hành thu thập dữ liệu, việc phòng ngừa là rất quan trọng nhằm ngăn chặn các vấn đề có thể phát sinh Phòng ngừa là phương pháp tiết kiệm chi phí nhất để duy trì tính toàn vẹn của quá trình thu thập dữ liệu Biện pháp này được thể hiện qua việc chuẩn hóa các giao thức trong sổ tay thủ tục chi tiết cho việc thu thập dữ liệu Một sổ tay hướng dẫn kém chất lượng có thể làm tăng nguy cơ không phát hiện sớm các vấn đề và sai sót trong nghiên cứu, dẫn đến những thất bại có thể được chứng minh theo nhiều cách khác nhau.

 Sự không chắc chắn về thời gian, phương pháp và danh tính của (những) ngườichịutráchnhiệmxemxétdữliệu

Các hoạt động kiểm soát chất lượng, bao gồm phát hiện, giám sát và hành động, cần được thực hiện cẩn thận trong quá trình thu thập dữ liệu Việc xác định rõ ràng cấu trúc thông tin liên lạc là điều kiện tiên quyết để thiết lập hệ thống giám sát hiệu quả Không được có sự không chắc chắn nào về luồng thông tin giữa các điều tra viên chính và nhân viên sau khi phát hiện ra các sai sót trong quá trình thu thập dữ liệu Một cấu trúc giao tiếp kém phát triển có thể dẫn đến việc giám sát lỏng lẻo và hạn chế khả năng phát hiện lỗi.

Việc phát hiện và giám sát có thể được thực hiện thông qua quan sát trực tiếp nhân viên, các cuộc gọi hội nghị, hoặc đánh giá thường xuyên các báo cáo dữ liệu để phát hiện sự không nhất quán và các giá trị không hợp lệ Mặc dù việc thăm địa điểm không phải lúc nào cũng khả thi, việc không kiểm tra hồ sơ định kỳ sẽ gây khó khăn cho các nhà điều tra trong việc xác minh quy trình thu thập dữ liệu theo hướng dẫn Hơn nữa, nếu thông tin liên lạc không được mô tả rõ ràng trong sổ tay thủ tục, việc truyền đạt thay đổi cho nhân viên có thể gặp khó khăn.

Kiểmsoátchấtlượngcũngxácđịnhcácphảnhồibắtbuộchoặc“hànhđộng”cầnthiếtđểsửachữacác thựchànhData collectionbịlỗivàcũnggiảmthiểucácsựcốxảyratrongtươnglai.Nhữnghànhđộngnàyítcókhảnăngxảyr anếucácthủtụcDatacollectionđượcviếtmộtcáchmơhồvàcácbướccầnthiếtđểgiảmthiểusựtáidiễn khôngđượcthựchiệnthôngquaphảnhồi vàgiáodục

Các bướcđểthuthậpdữliệu

Trướckhibắtđầuquátrìnhthuthậpdữliệu,bạncầnxácđịnhchínhxácnhữnggìbạnmuốnđạtđược. Bạncóthểbắtđầubằngcáchviếtmộtbảntuyênbốvấnđề:vấnđềthựctếhoặckhoahọcmàbạnmuốngiảiq uyếtlàgìvàtạisaonólạiquantrọng?

Tiếptheo,hìnhthànhmộthoặcnhiềucâuhỏinghiêncứuxácđịnhchínhxácnhữnggìbạnmuốntìmh iểu.Tùythuộcvàocâuhỏinghiêncứucủabạn,bạncóthểcầnthuthậpdữliệuđịnhlượnghoặcđịnhtính:

 Dữ liệu định lượng được thể hiện bằng số và đồ thị và được phân tích thôngqua cácphươngphápthốngkê.

Nếu bạn muốn kiểm tra giả thuyết hoặc đo lường chính xác, hãy thu thập dữ liệu định lượng Ngược lại, nếu mục tiêu là khám phá ý tưởng và hiểu biết chi tiết về bối cảnh, dữ liệu định tính là lựa chọn phù hợp Trong trường hợp có nhiều mục tiêu, phương pháp tiếp cận hỗn hợp sẽ giúp bạn thu thập cả hai loại dữ liệu.

Dựa trên dữ liệu bạn muốn thu thập, hãy quyết định phương pháp nào phù hợp nhấtchonghiêncứucủabạn.

Nghiên cứu thực nghiệm là một phương pháp định lượng, trong khi phỏng vấn, nhóm tập trung và dân tộc học thuộc về các phương pháp định tính Các phương pháp điều tra, quan sát, nghiên cứu lưu trữ và thu thập dữ liệu thứ cấp có thể được phân loại là định lượng hoặc định tính.

Cẩn thận xem xét phương pháp bạn sẽ sử dụng để thu thập dữ liệu giúp bạn trực tiếptrả lờicáccâuhỏinghiêncứucủamình.

Bước3:Lậpkếhoạch chocácthủ tụcthu thậpdữliệucủabạn

Khi đã xác định được các phương pháp sử dụng, bạn cần lập kế hoạch chi tiết để thực hiện chúng Hãy xác định quy trình cụ thể mà bạn sẽ theo dõi để thực hiện các quan sát và đo lường chính xác các biến mà bạn quan tâm.

Khi thực hiện khảo sát hoặc phỏng vấn, bạn cần xác định dạng câu hỏi Đối với các thử nghiệm, việc thiết kế thử nghiệm là rất quan trọng Một số biến số có thể được đo lường trực tiếp, như thu thập dữ liệu về độ tuổi trung bình của nhân viên qua ngày sinh Tuy nhiên, thường thì bạn sẽ cần thu thập dữ liệu về các khái niệm hoặc biến trừu tượng mà không thể quan sát trực tiếp.

Nếu bạn sẽ thu thập dữ liệu như thế nào, bạn cần chuyển định nghĩa khái niệm vềnhữnggìbạnmuốnnghiêncứuthànhđịnhnghĩahoạtđộngcủanhữnggìbạnsẽthựcsựđolường.

Cuốicùng,bạncóthểtriển khaicácphương phápđãchọnđểđolườnghoặcquansátcácbiếnmàbạnquantâm. Đểđảmbảorằngdữliệuchấtlượngcaođượcghilạimộtcáchcóhệthống,đâylàmộtsốphươngpháp haynhất:

Ghi lại tất cả thông tin liên quan khi và khi bạn lấy dữ liệu Ví dụ, ghi lại xem thiết bịphòngthínghiệmcóđượchiệuchuẩnlạitrongquátrìnhnghiêncứuthửnghiệmhaykhông.

Nếu bạnthu thậpdữliệuđịnhlượng,bạncóthểđánhgiáđộtincậyvàtínhhợplệđểcóđượcdấuhiệuvềchấtlượngd ữliệucủabạn.

Hadoop

Hadoop là một framework nguồn mở của Apache, được viết bằng Java, cho phép phát triển các ứng dụng phân tán với cường độ dữ liệu lớn miễn phí Nó được thiết kế để mở rộng quy mô từ một máy chủ đơn lẻ đến hàng ngàn máy tính khác, với khả năng tính toán và lưu trữ cục bộ Hadoop được phát triển dựa trên các ý tưởng từ các công bố của Google về mô hình Map-Reduce và hệ thống file phân tán của Google.

FileSystem(GFS).VàcócungcấpchochúngtamộtmôitrườngsongsongđểthựcthicáctácvụMap- Reduce.NhờcócơchếstreamingmàHadoopcóthểpháttriểntrêncácứngdụngphântánbằngcảjavalẫn mộtsốngônngữlậptrìnhkhácnhưC++,Pyhthon,Pearl,

Hadoop có cấu trúc liên kết master-slave, bao gồm một node master và nhiều node slave Node master có chức năng gán tác vụ cho các node slave và quản lý tài nguyên, trong khi các node slave là những máy tính thực tế, thường không mạnh mẽ Các node slave chịu trách nhiệm lưu trữ dữ liệu thực, trong khi node master lưu trữ metadata.

 Làhệthống filephân tán,cungcấp khảnănglưutrữdữliệukhổng lồvàtínhnăngtối ưu hoá việc sử dụng băng thông giữa các node HDFS có thể được sử dụng để chạytrênmộtclusterlớnvớihàngchụcngànnode.

 Cho phép truy xuất nhiều ổ đĩa như là 1 ổ đĩa Nói cách khác, chúng ta có thể sửdụngmột ổđĩamàgần nhưkhôngbị giớihạn vềdunglượng.Muốntăngdunglượngchỉcầnthêm node(máytính)vàohệthống.

 Kíchthước1blockthôngthườnglà64MB, kíchthướcnàycó thểthayđổiđượcbằngviệccấuhình

 Map:Sẽthực hiệnđầu tiên,cóchứcnăngtải,phântíchdữ liệuđầuvàovàđượcchuyểnđổi thànhtậpdữ liệutheocặpkey/value

 Reduce:Sẽnhậnkếtquảđầuratừ tác vụMap,kếthợpdữ liệulạivớinhauthànhtậpdữliệunhỏhơn Đểdễhiểuhơn,chúngtahãycùngxemvídụWordCountsauđây.WordCountlàbàitoánđếmtầ nsuấtxuấthiệncủacáctừtrongđoạnvănbản.VàchúngtasẽmôtảquátrìnhxửlýbàitoánnàybằngMap- Redue ĐốivớihàmMap:

 Inputcódạng,trongđólistlàtậphợpcácgiátrịđếmđượccủa mỗi từ

Negotiator)làmộtframeworkhỗtrợpháttriểnứngdụngphântánYARNcungcấpdaemonsvàAPIscầnt hiếtchoviệcpháttriểnứngdụngphân tán, đồng thời xử lý và lập lịch sử dụng tài nguyên tính toán (CPU hay memory)cũngnhư giámsátquátrìnhthựcthicácứngdụngđó.

 NodeManger:Giám sát việcsửdụngtàinguyêncủacontainervàbáo cáovớiResourceManger.CáctàinguyênởđâylàCPU,memory,disk,network,

The Resource Manager calculates the necessary resources based on the application's requirements and creates an Application Master (AppMstr) The Application Master is then assigned to run on a computing node, where it communicates with Node Managers on other nodes to request task execution for that specific node.

 Các thông tin trạng thái thay vì được gửi đến JobTracker sẽ được gửi đến AppMaster.

Schedulercó trách nhiệm phân bổ tài nguyên cho các ứng dụng khác nhau Đây làSchedulerthuầntúyvìnókhôngthựchiệntheodõitrạngtháichoứngdụng.Nócũngkhông sắp xếplạicáctácvụbịlỗidolỗiphầncứnghoặcphầnmềm.Bộlậplịchphânbổcáctàinguyêndựatrêncác yêucầucủaứngdụng

 ĐàmpháncontainerđầutiênđểthựcthiApplicationMaster.Mộtnơichứakếthợpcácyếu tốnhưCPU,bộnhớ,đĩavàmạng.

ChúngtacóthểmởrộngYARNngoàimộtvàinghìnnodethôngquatínhnăngYARNFederation Tính năng này cho phép chúng ta buộc nhiều cụm YARN thành một cụm lớn.Điềunàychophépsửdụngcáccụmđộclập,ghéplạivớinhau chomộtjobrấtlớn

1 Nơilưu(location)dữliệuinput, outputtrênhệthốngdữliệu phântán.

3 Cácthiếtlậpcụthể liênquanđến jobthôngquacácthông sốtruyền vào.

Hadoop job client submit job (file jar, file thực thi) và các thiết lập cho

JobTracker.Sau đó, master sẽ phân phối tác vụ đến các máy slave để theo dõi và quản lý tiến trìnhcácmáynày,đồngthời cungcấpthôngtin vềtìnhtrạngvàchẩnđoán liênquanđếnjob- client.

Khi “chạy Hadoop” có nghĩa là chạy một tập các trình nền – daemon, hoặc cácchươngtrình thườngtrú,trêncácmáychủ khácnhautrên mạngcủabạn.Nhữngtrìnhnềncóvaitròcụthể,mộtsốchỉtồntạitrênmộtmáychủ,mộtsốcóthểtồntại trênnhiềumáychủ.

Cácdaemonbaogồm:NameNode,DataNode,SecondaryNameNode,JobTracker,TaskTra cker

DataIntegration

Kháiniệm

Tíchhợpdữliệu(DataIntegration)baogồmviệckếthợpdữliệukhôngđồngnhấttrongcác nguồn khác nhau vào một lược đồ duy nhất và có thể truy vấn, cung cấp cho ngườidùngmộtcáinhìnthốngnhấtvềchúng.

Tích hợp dữ liệu ngày càng trở nên phổ biến do khối lượng và nhu cầu chia sẻ dữ liệu lớn Để đảm bảo hiệu quả trong việc trao đổi dữ liệu trong hệ thống, cần xử lý các công việc theo các luồng công việc đã định trước như phân tích, so sánh, thống kê và báo cáo.

Phương pháp ghép nối chặt chẽ được thực hiện qua kho dữ liệu, nơi dữ liệu từ nhiều nguồn khác nhau được tập hợp tại một vị trí vật lý duy nhất thông qua quy trình ETL (Extraction, Transformation, Loading) Lớp ETL giúp ánh xạ dữ liệu từ các nguồn để tạo ra một kho dữ liệu thống nhất, cung cấp giao diện đồng nhất cho việc truy vấn dữ liệu.

Ghépnối lỏng lẻo (Loose Coupling) là một lược đồ trung gian ảo, cung cấp giao diện nhận truy vấn từ người dùng Nó biến đổi truy vấn theo cách mà cơ sở dữ liệu nguồn có thể hiểu và gửi truy vấn trực tiếp tới cơ sở dữ liệu nguồn để thu được kết quả Trong phương pháp này, dữ liệu chỉ nằm trong cơ sở dữ liệu nguồn thực tế Mô hình của phương pháp ghép nối lỏng lẻo được mô phỏng như hình dưới.

Môhìnhphươngphápghépnốilỏnglẻotrong tíchhợpdữliệu Lượcđồtrunggianchứamộtsố“bộđiềuhợp”hoặc“trìnhbaobọc”cóthểkếtnốilạivớihệthống nguồnđểmangdữ liệuđếngiaodiệnngườidùng. Ưuđiểmvà nhượcđiểm

Ghépnốichặtchẽ Ghépnốilỏnglẻo Ưuđiểm – Độc lập (phụ thuộc ít hơnvào hệ thống nguồn vì dữliệu được sao chép về mặtvậtlý)

- Tóm tắt dữ liệu nâng caovà cóthểlưutrữ

– Làm mới dữ liệu (độ trễthấp–gầnnhưthờigianthực) – Nhanh nhẹn hơn (khi cóhệthốngnguồnmớihoặchệth ống nguồnhiện tại thayđổithìchỉbộđiềuhợptươ ngứngmớiđượctạohoặcthay đổi,phầnlớnkhôngả n h h ư ở n g đ ế n c á c phầnkháccủa hệthống)

Nhượcđiểm – Độtrễ(vìdữliệucầnđượctảib ằngETL) – Chiphícao

– Phản hồi truy vấn chậmhơn (do vấn đề về mạng /băng thông, tải dữ liệu trênhệ thốngnguồn,…)– Phụthuộcvàocácnguồn dữliệu

Hệ thốnglưutrữdữliệuHDFS

HDFS, hay Hệ thống Tệp Phân Tán Hadoop, là một hệ thống lưu trữ dữ liệu được thiết kế cho Hadoop Nó cung cấp khả năng truy cập và hiệu suất cao đối với các dữ liệu được lưu trữ trên các cụm của Hadoop.

HDFS thường được triển khai trên phần cứng có chi phí vừa phải, vì máy chủ dễ gặp phải lỗi phần cứng Do đó, HDFS được lập trình và xây dựng với mục đích chịu lỗi cao, nhằm giảm thiểu rủi ro và hạn chế quá trình phát sinh lỗi.

HDFS chia nhỏ dữ liệu lớn thành các mảnh nhỏ và phân tán chúng trên nhiều node khác nhau Khi một node gặp lỗi, hệ thống tự động sử dụng dữ liệu từ một node khác để tiếp tục xử lý Đây là một trong những tính năng quan trọng của HDFS.

HDFSchophép phân tán dữ liệu bằng cách chia nhỏ file thành nhiều phần Ví dụ, nếu bạn có một cụm Hadoop với 20 máy tính, chỉ cần đưa một file dữ liệu vào HDFS, file sẽ tự động được chia nhỏ và lưu trữ trên 20 máy tính đó.

HDFS cho phép tính toán và phân tán song song, giúp nhiều máy tính hoạt động đồng thời để xử lý một công việc, từ đó tiết kiệm thời gian.

HDFSchophépnhânbảncácfile:Đặcđiểmnàysẽgiúpbạnđềphòngđượccáctrườnghợp một máy tính trong cụm Hadoop phát sinh sự cố thì dữ liệu sẽ được backup lại màkhôngbịmất.

HDFS có khả năng mở rộng theo chiều dọc, cho phép nâng cấp hệ thống bằng cách tăng cường cấu hình cho máy tính Tính năng này được gọi là Scale Up hay Vertical scaling.

HDFS có khả năng mở rộng hệ thống theo chiều ngang, cho phép bạn không cần nâng cấp phần cứng mà chỉ cần mua thêm một máy tính mới để chia sẻ với các máy hiện tại.

Kiến trúc của HDFS là master / slave, một HDFS Cluster sẽ luôn bao gồm

1NameNode.NameNode nàylà1masterservervànócónhiệmvụquảnlýchohệ thốngtậptinvàđiềuchỉnhcáctruycậpđếnnhữngtậptinkhác.

Để tối ưu hóa hệ thống HDFS, cần bổ sung thêm DataNodes cho NameNode Lưu ý rằng sẽ luôn có một DataNode dành riêng cho các máy chủ dữ liệu Trong HDFS, một tập tin lớn được chia thành nhiều khối, và các khối này sẽ được lưu trữ trên một tập hợp các DataNodes.

NameNode có nhiệm vụ chính là quản lý các tập tin và thư mục, bao gồm việc mở, đóng và đổi tên chúng Bên cạnh đó, nó còn điều chỉnh các truy cập đến hệ thống tập tin Trong khi đó, DataNode thực hiện các tác vụ ghi và đọc dữ liệu, cũng như tạo, xóa và nhân bản dữ liệu theo chỉ dẫn của NameNode Cả NameNode và DataNode đều là phần mềm được thiết kế để chạy trên máy chủ và được lập trình bằng Java.

 NameNode:Có trách nhiệm điều phối cho các thao tác truy cập của client với hệthống HDFS.BởivìcácDataNodelànơilưu trữthậtsựcácblockcủacác filetrên

HDFS nên chúng là nơi đáp ứng các truy cập này NameNode sẽ thực hiện nhiệmvụcủanóthôngquadaemontênnamemodechạytrênport8021.

The DataNode server operates a DataNode daemon on port 8022, which periodically reports to the NameNode the list of all blocks it is storing This allows the NameNode to update its metadata accordingly.

SaumỗilầncậpnhậtthìmetadatatrênNameNodeđềusẽđạtđượccáctìnhtrạngthốngnhất dữ liệu trên các DataNode Toàn bộ trạng thái của metadata trên NameNode sẽ đạtđược sự thống nhất với các dữ liệu ở trên

DataNode Tất cả các trạng thái của metadatangaykhiđangởtìnhtrạnghệthốngnàysẽđượcgọilàcheckpoint.

Mỗi metadata ở trạng thái checkpoint sẽ được sử dụng cho mục đích nhânbản metadata với mục đích phục hồi lại NameNode nếu như NameNode xuất hiện lỗi Khi các máy con client gửi yêu cầu đọc đến NameNode, NameNode sẽ thực hiện các tác vụ để kiểm tra xem file có tồn tại hay không, và liệu file có bị lỗi hoặc bị nhiễm virus hay không.

Nếu file không gặp vấn đề, NameNode sẽ gửi danh sách các Block của file cùng với địa chỉ của các DataNode Hệ thống sau đó sẽ kết nối với DataNode và thực hiện chức năng RPC để nhận dữ liệu cần đọc, rồi đóng kết nối với DataNode.

Các client sẽ đọc liên tục các block của file cho đến khi đến block cuối Sau đó, lập trình viên sử dụng API của Hadoop để tương tác trực tiếp với HDFS Các API này giúp ẩn đi các NameNode, cho phép kết nối với các DataNode để nhận dữ liệu.

Cách ghi file trên HDFS tương tự như quá trình đọc file, nhưng trong trường hợp này, các client sẽ gửi một file entry đến các NameNode File entry này chưa chứa bất kỳ block nào Các client sẽ chia file dữ liệu thành các block, và mỗi block sẽ được đóng gói thành packet.

Client sẽ gửi Packet đến DataNode đầu tiên, và sau khi lưu xong, DataNode này sẽ chuyển tiếp Packet cho DataNode thứ hai để sao lưu Quá trình này tiếp tục cho đến khi tất cả các DataNode nhận và sao lưu Packet Sau khi hoàn tất, DataNode cuối cùng sẽ gửi thông báo cho Client rằng việc lưu đã thành công Lúc này, Client sẽ thực hiện hành động để thông báo cho NameNode cập nhật lại toàn bộ danh sách các block mà file đã ghi lại.

Dataprocessing

Địnhnghĩa

Xửlýdữliệulàquátrìnhxữlývàđồngbộhóatoànbộdữliệutronghệthốngnhưtiếpnhậnnguồnthông tinmớivàlọcranhữngdữliệuphùhợpvớiyêucầu,xửlýdữliệuđóngvaitròrấtquantrọngtrongviệchọctậ pvàlàmviệc.Mụcđíchcủaviệcxửlýdữliệuchínhlàgiúplưutrữvàphânloạithôngtinđểcóthểsữdụngtro ngmọithờiđiểmvàtrườnghợp.Việcxửlýdữ liệutốtdữ liệusẽđemlạinăngsuất,hiệuquảcôngviệccao.

Chứcnăngcủadataprocessing

Trongquátrìnhxử lýdữliệugồmcórấtnhiều bướccầnphảibắtbuộcthựchiệnđểđảmbảohiệuquảcôngviệc.Trongđócácbướccóchức năngkhácnhau:

- Xác nhận thông tin: trong quá trình xử lý dữ liệu thì việc đầu tiên chính là thu thậpnhữngthôngtinđầuvàochohệthống.Thìsaukhitìmkiếmnhữngthôngtintheoyêucầu thìcầnxácnhậncác dữ liệuđãtìmđượccóđúngchínhxácvàliên quanvới yêu cầubanđầuhaykhông

- Sắp xếp dữ liệu: Việc tiếp theo sau khi xác nhận các thông tin đã đảm bảo đúngyêucầuthìcầnxácnhậncácdữliệuđãtìmđược cóđúngchínhxácvàliênquanvớiyêucầubanđầuhaykhông.

- Sắpxếpdữliệu:Việctiếptheosaukhixácnhậncácthôngtinđã đảmbaprđúngyêu cầu thì hệ thống sẽ sữ lý bằng cách sắp xếp và phân loại các dữ liệu theo từng bộriêngcónộidungtươngđồngrồiđánhsốthứtự đêcóthểdễ kiểmsoát.

- Tóm tắt dữ liệu: công việc này hỗ trợ xử lý bằng cách đưa ra những thông tinchínhcủadữ liệuvà giảmbớtnhững giảithíchchitiếtchonộidung chínhđểdễtổnghợpvà tìmkiếmnhư vậỵsẽtiệnlợihơnvớingườidung.

- Tập hợp nội dung: sau khi thông tin đã được phân loại và thâu tóm những nộidungchính thìtập hợpdữliệugiúpkếthợp nhữngthôngtincócùngloạivớinhautạothànhnhữngthưmụcdữliệulớn.

Phân tích dữ liệu là bước quan trọng trong quá trình xử lý thông tin, đóng vai trò quyết định đến hiệu quả công việc Quá trình này bao gồm nhiều bước, bắt đầu từ việc thu thập dữ liệu, tổ chức và phân loại thông tin, cho đến việc phân tích các nội dung liên quan đến yêu cầu Mục tiêu là tìm kiếm kết quả chính xác nhất và đưa ra giải thích về quá trình phân tích, cũng như trình bày kết quả sau khi hoàn thành các bước trên.

- Báo cáo: sau khi hoàn thành những bước xử lý bên trên và đưa ra kết quả phântíchthôngtinthìcầnphảibáocáodữliệubằngcáchkêkhaitoàn bộnhữngthôngtin chitiếtcụthểvềdữliệuthôngquanhữngthôngtintómtắt.

- Phânloạinộidung:Bướcphânloạinàykhágiốngvớiphânloạidữ liệuthôngtinphía trên chỉ khác ở điểm là cái ở trên phân loại dữ liệu đầu vào còn bước này là phânloạithôngtinđầura.

Các hìnhthứcxửlýdữliệu

- Xửlýdữliệuthủ công: mọicông việcđều đượcconngườixữlý một cáchthủcông,phươngphápnàytốnrấtnhiềuthờigianvàcôngsức.

- Xử lý dữ liệu tự động: là phương pháp được phát triễn của công nghệ hỗ trợ ápdụngvới cácloạihình hoạtđộngthựchiệnbằngcáccông cụthiết bị ghiđơnvịcụthể.

- Xửlýdữliệuđiệntử:đâylàhìnhthứcxử lýdữliệutrêncácthiếtbịđiệntử nhưmáytínhkếthợpvớinhữngtínhnăngcủaviệcsửlýtựđộngt h ể hiệnsựpháttriểncủacôngngh ệ.

CôngcụhỗtrợxửlýApacheSpark

Các tổ chức ở mọi quy mô đều phụ thuộc vào dữ liệu lớn, nhưng việc xử lý hàng terabyte dữ liệu cho ứng dụng thời gian thực có thể trở nên phức tạp Apache Spark đã ra đời như một giải pháp hiệu quả cho việc phân tích và xử lý dữ liệu Kể từ khi ra mắt, Apache Spark đã nhanh chóng được các doanh nghiệp trong nhiều ngành công nghiệp áp dụng.

Apache Spark là một framework xử lý dữ liệu mã nguồn mở trên quy mô lớn

Spark cung cấp một giao diện lập trình cho các cụm tính toán song song với khả năng chịu lỗi Ban đầu, Spark được phát triển tại AMPLab của Đại học California Berkeley, và sau đó mã nguồn đã được tặng cho cộng đồng.

Khả năng tính toán phân tán của Apache Spark làm cho nó trở thành lựa chọn lý tưởng cho big data và machine learning, vì những lĩnh vực này yêu cầu sức mạnh tính toán lớn để xử lý các kho dữ liệu khổng lồ Spark cũng giảm bớt gánh nặng lập trình cho các nhà phát triển nhờ vào một API dễ sử dụng, giúp đảm nhận phần lớn công việc phức tạp trong tính toán phân tán và xử lý dữ liệu lớn.

Các thànhphầncủaApacheSpark

ApacheSparkgồm có 5thànhphầnchính:SparkCore,SparkStreaming,Spark SQL,MLlibvàGraphX.

Spark Core là thành phần cốt lõi của Apache Spark, là nền tảng mà các thành phần khác cần phải dựa vào để hoạt động Nó thực hiện các công việc tính toán và xử lý dữ liệu trong bộ nhớ (In-memory computing) và đồng thời tham chiếu đến các dữ liệu được lưu trữ tại các hệ thống lưu trữ bên ngoài.

Spark SQL là một công cụ mạnh mẽ dành cho việc xử lý dữ liệu có cấu trúc, cho phép người dùng truy cập và phân tích dữ liệu thông qua cú pháp SQL Nó tích hợp tốt với các ngôn ngữ lập trình như R và Python, đặc biệt là trong thư viện Pandas Với Spark SQL, các nhà phân tích dữ liệu và nhà phát triển có thể tận dụng sức mạnh của Apache Spark để thực hiện các truy vấn và phân tích dữ liệu hiệu quả hơn.

BêncạnhkhảnănghỗtrợSQL, SparkSQLcungcấpmột giaodiệntiêuchuẩnđể đọcvàghivàocáckhodữliệukhácbao gồmJSON,HDFS,Apache Hive,JDBC,Apache

ORC và Apache Parquet, tất cả đều được hỗ trợ trực tiếp Các cơ sở dữ liệu phổ biếnkhácnhưApacheCassandra,MongoDB,ApacheHbase,…cũng đượchỗtrợthôngquacáctrìnhkếtnốiriêngbiệttừhệ sinhtháiSparkPackages.

Spark Streaming là một bổ sung ban đầu cho Apache Spark giúp nó đáp ứng các yêucầu xử lýthờigian thực(realtime)hoặcgầnnhư thời gianthực SparkStreaming chianhỏluồng xửlýthànhmộtchuỗi liêntục gồmcácmicrobatchmàsauđócóthểđượcthaotácbằngAPIApacheSpark.

Bằngcáchnày,mãtrongcácxử lýhàngloạtvàtrựctuyếncóthểđược táisử dụng,chạy trên cùng một framework, do đó giảm chi phí cho cả nhà phát triển và nhà điềuhành.

MLliblà mộtnềntảng họcmáyphântánbêntrênSparkvớikiến trúcphântándựatrên bộ nhớ Theo các một số so sánh, Spark MLlib nhanh hơn 9 lần so với thư việntươngđươngchạytrênHadooplàApacheMahout.

SparkGraphX kết hợp với lựa chọn các thuật toán phân tán để xử lý cấu trúc đồ thị Các thuật toán này áp dụng phương pháp tiếp cận RDD của Spark Core nhằm lập mô hình dữ liệu Gói GraphFrames cho phép thực hiện các xử lý biểu đồ trên khung dữ liệu, bao gồm cả việc tận dụng trình tối ưu hóa Catalyst cho các truy vấn đồ thị.

Về cơ bản, Apache Spark bao gồm hai thành phần chính: trình điều khiển (driver) vàtrìnhthựcthi(executors).Trìnhđiềukhiển dùngđểchuyểnđổi mãcủa ngườidùngthànhnhiềutácvụ(tasks) cóthểđượcphânphốitrêncácnútxử lý(worker nodes).

Trình thực thi của Apache Spark hoạt động trên các nút xử lý để thực hiện các nhiệm vụ được giao Spark có khả năng chạy ở chế độ cụm độc lập, chỉ cần yêu cầu khung Apache Spark và JVM trên mỗi máy trong cụm Tuy nhiên, việc sử dụng các công cụ quản lý cụm như trung gian giữa các thành phần giúp tối ưu hóa tài nguyên và cho phép phân bổ theo yêu cầu Trong môi trường doanh nghiệp, Apache Spark có thể hoạt động trên các nền tảng như Apache Mesos, Kubernetes và Docker Swarm.

Apache Spark xây dựng các lệnh xử lý dữ liệu của người dùng thành Đồ thị vòng cóhướnghoặcDAG.DAGlà lớplậplịchcủaApacheSpark;nóxácđịnhnhữngtácvụnàođượcthựcthitrênnhữngnút nàovàtheotrìnhtựnào. ƯuđiểmApacheSpark

Spark được thiết kế để tối ưu hóa hiệu suất, cho phép xử lý dữ liệu quy mô lớn nhanh hơn 100 lần so với Hadoop nhờ vào việc khai thác tính toán trên bộ nhớ và các tối ưu hóa khác Ngoài ra, Spark cũng duy trì tốc độ cao khi dữ liệu được lưu trữ trên đĩa, hiện đang giữ kỷ lục thế giới về phân loại trên đĩa với quy mô lớn.

- Dễsửdụng: Sparkcó cácAPIdễsửdụngđểlàmviệctrêncáctậpdữliệulớn,baogồm hơn 100 toán tử để chuyển đổi dữ liệu và các API dataframe quen thuộc để xử lý dữliệubáncấutrúc.

Spark cung cấp một thư viện hỗ trợ rộng rãi, bao gồm các tính năng như truy vấn SQL, truyền dữ liệu trực tuyến, học máy và xử lý đồ thị Những thư viện tiêu chuẩn này giúp tăng năng suất cho nhà phát triển và có thể được kết hợp liền mạch để tạo ra các quy trình làm việc phức tạp.

Các dữliệubịtrùnglặphoặccácdữliệukhôngliênquan

Loại bỏ các đối tượng không mong muốn khỏi tập dữ liệu là rất quan trọng, bao gồm cả các đối tượng trùng lặp và không liên quan Các đối tượng trùng lặp thường xảy ra trong quá trình thu thập dữ liệu, đặc biệt khi kết hợp dữ liệu từ nhiều nguồn khác nhau Việc khử trùng lặp là một trong những lĩnh vực quan trọng trong quá trình này Ngoài ra, các quan sát không liên quan cũng cần được loại bỏ, vì chúng không phù hợp với vấn đề phân tích cụ thể Hiện nay, có nhiều phần mềm hỗ trợ giải quyết vấn đề này, trong đó có phần mềm Tableau.

Chuyểndữliệusangmộtdạngmớiđểdễdàngphântích

Chuyển đổi dữ liệu là quá trình sửa đổi dữ liệu để phù hợp với các ứng dụng xuôi dòng trong công cụ, quy trình và phân tích Quy trình này có thể khác nhau tùy thuộc vào mục tiêu dự án và nhu cầu dữ liệu của bạn, nhưng thường bắt đầu bằng việc kiểm tra và làm sạch dữ liệu, kết thúc bằng việc xem xét các thay đổi với các bên liên quan chính.

Mục tiêu của giai đoạn này cuối cùng là để hiểu các đặc điểm chính của dữ liệu vàkhámphánhữngthay đổinàocóthểcầnxảyrađốivớidữ liệuđểđápứngcácmụcđíchcuốicùng.

Thườngthìsẽcầnkết hợpdữ liệutừnhiềunguồnvàomộttậpdữliệuduynhất.Trongtìnhhuốngnày,các trườngdữliệuphảikhớpgiữacácbộdữliệuđểchuẩnbịnốichúng.

Bước 3: Thực hiện tạo mã và chuyển đổi dữ liệu là giai đoạn quan trọng để đạt được các mục tiêu đã đề ra Đầu tiên, mã được tạo ra bằng tay hoặc thông qua các công cụ trực quan Sau đó, quá trình thực thi và chuyển đổi mã sẽ diễn ra.

Có nhiều loại chuyển đổi dữ liệu, bao gồm các hoạt động cộng để làm phong phú dữliệuvớiý nghĩa lớnhơn,chẳnghạnnhưlấytuổitừngàysinh,cáchoạtđộngtrừbao gồm xóabảnghihoặccác trườngkhôngcầnthiết,tiêuchuẩnhóahoặcchuẩnhóađểđịnhcỡlạidữliệuvàthayđổicấutrúcđốivớ ichínhtậpdữ liệu.

Cuối cùng, sau khi quá trình chuyển đổi dữ liệu hoàn tất, người thực hiện sẽ xác thực rằng dữ liệu đáp ứng các mục tiêu đã đề ra trong giai đoạn khám phá ban đầu Những người liên quan đến việc sử dụng dữ liệu sẽ xác nhận rằng nó đáp ứng nhu cầu của họ, ví dụ như các doanh nghiệp vừa và nhỏ sẽ sử dụng dữ liệu để làm phong phú thêm ứng dụng kinh doanh mới Thông thường, tại thời điểm này, các sửa đổi sẽ cần được thực hiện, và do đó, chu kỳ sẽ bắt đầu lại dưới một hình thức nào đó.

DataAnalysis

Apache Hadoop

Apache Hadoop là một nền tảng mã nguồn mở miễn phí, được thiết kế để lưu trữ và xử lý các tập dữ liệu lớn từ gigabyte đến petabyte Nó cho phép phân cụm nhiều máy tính để thực hiện phân tích song song các bộ dữ liệu khổng lồ, thay vì phụ thuộc vào một máy tính lớn duy nhất để lưu trữ và phân tích dữ liệu.

 Bản đồ Giảm- MapReduce là một kỹ thuật lập trình song song để xử lý khốilượnglớndữliệucótổ chức,báncấutrúc vàphicấutrúc trêncáccụmphầncứnghànghóa.

 HDFS- HDFS (Hệ thống tệp phân tán Hadoop) là một thành phần khung

Hadooplưutrữvà xửlýdữ liệu.Đólàmộthệthốngtệpcókhảnăngchịulỗi chạytrênphầncứngtiêuchuẩn

Cácdựáncon(côngcụ)khácnhautronghệsinhtháiHadoop,baogồmSqoop,PigvàHive,đượcsửd ụngđểhỗtrợcácmô-đunHadoop.

Apache Hive

ApacheHivelàmộtmãnguồnmởkho dữ liệu chươngtrìnhđểđọc,ghivàquảnlýcác tập dữ liệu khổng lồ được lưu trữ trực tiếp trong Hệ thống tệp phân tán

Các nhà phát triển SQL có thể sử dụng Hive để tạo các câu lệnh Hive

QueryLanguage(HQL)đểtruyvấnvàphântíchdữliệucóthểsosánh với cáccâulệnh SQL thôngthường.NóđượctạorađểgiúplậptrìnhMapReducedễdànghơnbằngcáchloạibỏnhucầu họcvàviết mãJavadài.Thayvàođó,bạncóthểviếtcáctruyvấncủamìnhtrongHQLvà Hivesẽxâydựngbảnđồvàgiảmbớtcácchứcnăngchobạn.

Giao diện giống SQL của Apache Hive đã trở thành tiêu chuẩn vàng cho việc thực hiện các tìm kiếm đặc biệt, tóm tắt và phân tích dữ liệu Hadoop Khi được triển khai trên các máy tính mạng, giải pháp này không chỉ hiệu quả về chi phí mà còn có khả năng mở rộng, lý do khiến nhiều công ty, bao gồm Netflix và Amazon, tiếp tục phát triển và cải tiến Apache Hive.

Apache Hive chuyển đổi chương trình đầu vào được viết bằng ngôn ngữ

HiveQL, tương tự như SQL, được chuyển đổi thành một hoặc nhiều tác vụ Java MapReduce, Tez hoặc Spark, tất cả đều tương thích với Hadoop YARN Apache Hive sau đó sắp xếp dữ liệu thành các bảng cho hệ thống HDFS trong kiến trúc phân tán của Hadoop và thực hiện các tác vụ trên một cụm để nhận được kết quả trả về.

Các bảng trong Apache Hive được tổ chức tương tự như các bảng trong cơ sở dữ liệu quan hệ, với dữ liệu được sắp xếp từ lớn đến nhỏ Cơ sở dữ liệu bao gồm các bảng được chia thành các bộ phận và nhóm Ngôn ngữ truy vấn HiveQL được sử dụng để truy cập và thay đổi dữ liệu, trong khi mỗi bảng có thư mục HDFS riêng biệt để lưu trữ dữ liệu.

Kho hàng theo dõi thông tin về cấu trúc và vị trí của từng bảng Siêu dữ liệu phân vùng cũng được bao gồm trong Hive, giúp theo dõi tiến trình của các tập dữ liệu khác nhau trong cụm Dữ liệu được lưu trữ ở định dạng RDBMS thông thường, và siêu dữ liệu Hive rất quan trọng để trình điều khiển duy trì theo dõi dữ liệu Máy chủ sao lưu thực hiện việc sao lưu dữ liệu thường xuyên để có thể phục hồi trong trường hợp mất dữ liệu.

Người lái xe trong HiveQL hoạt động như một bộ điều khiển, nhận và thực hiện các câu lệnh Trình điều khiển thiết lập các phiên để theo dõi tuổi thọ và tiến độ của giám đốc điều hành Trong quá trình thực thi câu lệnh HiveQL, nó lưu trữ siêu dữ liệu cần thiết và đóng vai trò là điểm thu thập dữ liệu hoặc kết quả truy vấn sau quá trình rút gọn.

Trình biên dịch của Hive thực hiện việc biên dịch truy vấn HiveQL, chuyển đổi chúng thành kế hoạch thực thi với các nhiệm vụ cụ thể Kế hoạch này bao gồm các bước mà MapReduce cần thực hiện để đạt được kết quả như mong muốn Truy vấn được chuyển đổi thành Cây cú pháp trừu tượng (AST) và sau đó, AST được chuyển đổi thành Đồ thị vòng có hướng dẫn (DAG) sau khi kiểm tra tính tương thích và lỗ thời gian biên dịch.

Trình tối ưu hóa cải thiện hiệu quả của DAG bằng cách thực hiện các thay đổi trên kế hoạch thực hiện Nó kết hợp các phép biến đổi, chẳng hạn như biến một chuỗi các phép nối thành một phép nối duy nhất Để tăng tốc độ, trình tối ưu hóa có thể phân chia các hoạt động, ví dụ như áp dụng một phép chuyển đổi dữ liệu trước khi thực hiện thao tác giảm.

Giao diện dòng lệnh (CLI) là một công cụ quan trọng cho phép người dùng tương tác với Hive, giúp kết nối và giao tiếp với máy chủ Hive thông qua các giao thức như JDBC và ODBC Điều này cho phép các máy khách bên ngoài dễ dàng truy cập và sử dụng các chức năng của Hive qua mạng.

Bảomật-Apache HiveđượctíchhợpvớibảomậtHadoop,sửdụngKerberosđểxácthực lẫn nhau giữa máy khách-máy chủ HDFS chỉ định quyền cho các tệp mới được tạotrongApache Hive, chophépbạn phêduyệtbởingườidùng,nhómvànhữngngườikhác.

Nó cũng cho phép phân đoạn dữ liệu ở cấp bảng để tăng tốc độ.ApacheHiveđápứng xuấtsắcnhucầugiaodiệncấpthấpcủaHadoop.

Hivegiúp việctóm tắt, truyvấnvà phântíchdữliệutrởnên dễdàng hơn.

HiveQLkhôngyêu cầu bấtkỳkỹnănglậptrìnhnào;hiểu đơngiảnvề cáctruyvấnSQLlàđủ. Chúngtôi cũngcó thểsửdụngHive đểthựchiệncáctruyvấnđặc biệtđểphântíchdữliệu.

HiveQLkhôngyêu cầu bấtkỳkỹnănglậptrìnhnào;hiểu đơngiảnvề cáctruyvấnSQLlàđủ.

ApacheHivechophép báocáocuốingày, đánhgiágiaodịchhàngngày,tìmkiếmđộtxuất và phân tích dữ liệu Thông tin chi tiết toàn diện do Apache Hive cung cấp mang lạilợithếcạnhtranhđángkểvàgiúpbạnđápứngnhucầuthịtrườngdễdànghơn.

 Dễsử dụng-Với ngôn ngữgiốngSQL,việctruyvấndữliệurấtdễhiểu.

Chèn dữ liệu tăng tốc trong Apache Hive cho phép đọc lược đồ mà không cần xác minh loại bảng hoặc định nghĩa lược đồ, giúp dữ liệu không phải trải qua quá trình đọc, phân tích cú pháp và tuần tự hóa vào đĩa theo định dạng bên trong của cơ sở dữ liệu Điều này khác với cơ sở dữ liệu thông thường, nơi dữ liệu phải được xác thực mỗi khi được thêm vào.

Apache Hive có khả năng mở rộng vượt trội, tính linh hoạt cao và hiệu quả chi phí Nhờ vào việc lưu trữ dữ liệu trong HDFS, Apache Hive có thể chứa tới 100 petabyte dữ liệu, làm cho nó trở thành một lựa chọn khả thi hơn nhiều so với các cơ sở dữ liệu truyền thống Là một dịch vụ Hadoop dựa trên đám mây, Apache Hive cho phép khách hàng dễ dàng tăng hoặc giảm số lượng máy chủ ảo để phù hợp với khối lượng công việc thay đổi.

 Nănglực làm việcrộngrãi-Bộdữ liệulớncóthể xửlýtới100,000truyvấnmỗi giờ.

 Trongtổong,cáchành độngcậpnhậtvà xóa khôngđượchỗtrợ.

Apache Impala

ImpalalàmộtcôngcụtruyvấnSQLMPP(MassiveParallelProcessing)đểxửlýkhốilượngdữliệuk hổnglồđượclưutrữtrongcụmHadoop.Nólàmộtphầnmềmmãnguồn mởđượcviếtbằngC+

Impala là công cụ SQL hiệu suất cao nhất, mang lại trải nghiệm tương tự như RDBMS, và cung cấp phương pháp nhanh nhất để truy cập dữ liệu lưu trữ trong hệ thống tệp phân tán Hadoop.

Impala kết hợp khả năng hỗ trợ SQL và hiệu suất đa người dùng của cơ sở dữ liệu phân tích truyền thống với tính linh hoạt và khả năng mở rộng của Apache Hadoop, sử dụng các thành phần tiêu chuẩn như HDFS, HBase, Metastore, YARN và Sentry.

 Với Impala, người dùng có thể giao tiếp với HDFS hoặc HBase bằng cách sử dụngcáctruyvấnSQLmộtcáchnhanhhơnsovớicáccôngcụSQLkhácnhưHive.

 Impala có thể đọc hầu hết các định dạng tệp như Parquet, Avro, RCFile đượcHadoopsửdụng.

ImpalasửdụngmộtsiêudữliệuvàcúphápSQL(HiveSQL),kết hợpvớitrìnhđiềukhiểnODBCvàgiaodiệnngườidùng(HueBeeswax)nhưApacheHive,đemđếnmộtnền tảngquen thuộc và thống nhất cho các truy vấn theo định hướng hàng loạt hoặc thời gian thực Khác với Apache Hive, Impala không dựa vào các thuật toán MapReduce, mà thực hiện một kiến trúc phân tán dựa trên các quy trình daemon, chịu trách nhiệm cho tất cả các khía cạnh của thực thi truy vấn chạy trên cùng một máy.

Do đó, nó làm giảm độ trễ của việc sử dụng MapReduce và điều này làm cho ImpalanhanhhơnApacheHive.

Quá trình xử lý dữ liệu diễn ra ngay tại nơi dữ liệu cư trú trên cụm Hadoop, do đó việc chuyển đổi và di chuyển dữ liệu là không cần thiết khi làm việc với Impala.

Sử dụng Impala, bạn có thể dễ dàng truy cập dữ liệu lưu trữ trong HDFS, HBase và Amazon S3 mà không cần phải có kiến thức về Java hay MapReduce Chỉ với một ít kiến thức cơ bản về các truy vấn SQL, bạn có thể thực hiện các thao tác truy xuất dữ liệu một cách hiệu quả.

Để viết truy vấn trong các công cụ kinh doanh, dữ liệu cần trải qua quy trình trích xuất-chuyển đổi-tải (ETL) phức tạp Tuy nhiên, với Impala, quy trình này được rút ngắn đáng kể Các giai đoạn tốn thời gian trong việc tải và tổ chức lại dữ liệu được cải thiện nhờ các kỹ thuật mới như phân tích dữ liệu thăm dò và khám phá dữ liệu, giúp tăng tốc độ xử lý.

 Impalahỗtrợxửlýdữ liệutrongbộnhớ,tứclànótruycập/phântíchdữliệuđượclưutrữtrêncácnútdữliệuHadoopmàkhông cầndichuyểndữliệu.

 Impalahỗtrợcácđịnh dạngtệpkhácnhaunhư,LZO,SequenceFile,Avro,RCFilevà Parquet.

30 lýlượnglớndữliệu(petabyte) hệxửlýlượngdữliệunhỏhơn(terabyte)khisosánhv ớiImpala.

Apache Drill

Lấy cảm hứng từ hệ thống Dremel của Google, Apache Drill được thiết kế để phân tích tương tác với độ trễ thấp trên các tập dữ liệu lớn Drill hỗ trợ nhiều nguồn dữ liệu như HBase, Cassandra, MongoDB và các cơ sở dữ liệu quan hệ truyền thống Với Hadoop, việc khám phá ý tưởng có thể mất vài giờ hoặc vài phút, nhưng với Drill, bạn sẽ nhận được kết quả nhanh chóng, giúp khám phá ý tưởng và phát triển lý thuyết hiệu quả hơn.

Apache Drill là một công cụ mạnh mẽ, đơn giản và dễ sử dụng, cho phép người dùng dễ dàng xử lý và phân tích dữ liệu lớn Với khả năng truy vấn nhiều bộ dữ liệu có cấu trúc và phi cấu trúc, Apache Drill hỗ trợ người dùng thông qua ngôn ngữ truy vấn ANSI SQL, giúp việc sử dụng trở nên thuận tiện hơn.

Công cụ Business Intelligence (BI) cho phép thực hiện các truy vấn trên dữ liệu từ nhiều nguồn khác nhau Apache Drill có thể được sử dụng trên máy tính xách tay mà không cần phải xác định bất kỳ sơ đồ nào.

Apache Khoan là một công cụ truy vấn nguồn mở, cung cấp phân tích SQL tương tác và an toàn cho dữ liệu quy mô petabytes Đây là công cụ đầu tiên cho phép truy vấn và khám phá dữ liệu từ nhiều nguồn khác nhau, bao gồm cơ sở dữ liệu NoSQL và nhiều định dạng tập tin Với việc tuân thủ tiêu chuẩn ANSI SQL, người dùng không cần phải có kiến thức sâu về lập trình; chỉ cần hiểu biết cơ bản về SQL là đủ để bắt đầu sử dụng.

Các doanh nghiệp không cần phải phụ thuộc vào một hồ bơi tài năng cụ thể để truy cập và phân tích dữ liệu Các hồ bơi tài năng hiện có và các nguồn tài nguyên trên ANSISQL cho phép đạt được kết quả nhanh chóng Các nhà phân tích SQL và chuyên gia kinh doanh thông minh có thể thực hiện truy vấn và phân tích dữ liệu một cách nhanh chóng, giúp doanh nghiệp không phải chờ đợi sự chuẩn bị dữ liệu từ bộ phận CNTT trong thời gian dài.

 CácbộphậnCNTT có thểbỏquacáccôngviệcbảodưỡngđồkhôngcầnthiếtvàcác chu trình ETL và vẫn còn có quản trị đơn giản và dễ hiểu với sự giúp đỡ của các cơchếtruycậpdạnghạtđượcdễdàngđể triểnkhai.

DataVisualization

Kháiniệm

Data Visualization là việc sử dụng biểu đồ, bảng đồ và đồ thị thay vì chỉ trình bày con số, giúp người xem dễ dàng hiểu nội dung và nắm bắt thông tin Ví dụ, khi viết báo cáo công việc, thay vì gửi một bảng báo cáo đầy con số, việc trình bày dữ liệu một cách trực quan sẽ mang lại kết quả hoàn toàn khác biệt.

Trực quan hóa dữ liệu có thể được sử dụng cho nhiều mục đích khác nhau và không chỉ dành riêng cho các nhóm dữ liệu Quản lý cũng tận dụng nó để truyền đạt cơ cấu tổ chức và phân cấp, trong khi các nhà phân tích dữ liệu và nhà khoa học dữ liệu sử dụng nó để khám phá và giải thích các mô hình và xu hướng Harvard Business Review phân loại trực quan hóa dữ liệu thành bốn mục đích chính: tạo ý tưởng, minh họa ý tưởng, khám phá trực quan và dữ liệu trực quan hàng ngày.

Trựcquanhóadữliệuthườngđượcsửdụngđểthúcđẩytạoýtưởnggiữacácnhóm.Chúng thường được tận dụng trong các phiên tư duy thiết kế hoặc động não khi bắt đầumộtdựánbằngcáchhỗtrợthuthậpcácquanđiểmkhácnhauvàlàmnổibậtcácmốiquantâmchungcủ atậpthể.Mặcdùnhữnghìnhảnhtrựcquannàythườngkhôngđượcđánh bóngvàchưađượctinhchỉnh,nhưngchúnggiúpđặtnềntảngtrongdựánđểđảmbảorằngnhómđượcliênkết vớivấnđềmàhọđangtìmcáchgiảiquyếtchocácbênliênquanchính.

Trực quan hóa dữ liệu là một công cụ hỗ trợ hiệu quả trong việc truyền đạt ý tưởng, như chiến thuật hoặc quy trình Nó thường được áp dụng trong các cài đặt học tập như hướng dẫn, khóa học chứng nhận và trung tâm xuất sắc, nhưng cũng có thể đại diện cho các cấu trúc hoặc quy trình tổ chức, tạo điều kiện giao tiếp giữa các cá nhân với các nhiệm vụ cụ thể Các nhà quản lý dự án thường sử dụng biểu đồ Gantt và biểu đồ thanh nước để minh họa quy trình công việc Mô hình hóa dữ liệu sử dụng sự trừu tượng hóa để thể hiện và hiểu rõ hơn về luồng dữ liệu trong hệ thống thông tin doanh nghiệp, giúp các nhà phát triển, nhà phân tích kinh doanh và kiến trúc sư dữ liệu dễ dàng nắm bắt các mối quan hệ trong cơ sở dữ liệu hoặc kho dữ liệu.

Trực quan hóa dữ liệu là một bước quan trọng trong quá trình khoa học dữ liệu, giúp các nhóm và cá nhân truyền đạt dữ liệu hiệu quả hơn cho đồng nghiệp và người ra quyết định Các nhóm quản lý thường sử dụng chế độ xem mẫu để theo dõi hiệu suất Tuy nhiên, trực quan hóa dữ liệu không chỉ giới hạn trong bảng điều khiển hiệu suất Ví dụ, trong khi khai thác văn bản, một nhà phân tích có thể sử dụng một đám mây từ để nắm bắt các khái niệm, xu hướng và mối quan hệ ẩn trong dữ liệu Ngoài ra, họ có thể sử dụng cấu trúc đồ thị để minh họa mối quan hệ giữa các thực thể trong biểu đồ kiến thức Có nhiều cách để thể hiện các loại dữ liệu khác nhau, và điều quan trọng cần nhớ là đây là một kỹ năng sẽ vượt ra ngoài nhóm phân tích cốt lõi của bạn.

Hình thức trực quan hóa dữ liệu có nguồn gốc từ người Ai Cập vào thế kỷ trước ngày 17, chủ yếu được sử dụng để hỗ trợ điều hướng Khi thời gian trôi qua, việc áp dụng trực quan hóa dữ liệu đã mở rộng sang nhiều lĩnh vực như kinh tế, xã hội và sức khỏe Edward Tufte đã công bố những mảnh ghép trực quan của thông tin định lượng, cho thấy rằng cá nhân có thể sử dụng trực quan hóa dữ liệu để trình bày thông tin một cách hiệu quả hơn Cuốn sách của ông vẫn giữ được giá trị theo thời gian, đặc biệt khi các công ty chuyển sang sử dụng bảng điều khiển để báo cáo số liệu hiệu suất trong thời gian thực Bảng điều khiển là công cụ trực quan hóa dữ liệu hiệu quả, cho phép theo dõi và trực quan hóa dữ liệu từ nhiều nguồn khác nhau, cung cấp cái nhìn sâu sắc về tác động của hành vi cụ thể của một nhóm hoặc một nhóm liền kề về hiệu suất.

Các loạitrựcquanhóadữliệu

Thôngtinđượctrìnhbàydướidạngbảng,đồhọavớidữliệuđượchiểnthịdọctheohaitrục.Cóthểởdạ ngbiểuđồ,sơđồhoặcbảnđồ.

 Bảng:Tập hợp cácsốliệuđượchiển thịtheo hàngvàcột.

 Biểu đồ:Biểu đồ gồm các điểm, đường thẳng, đoạn thẳng, đường cong hoặc vùngbiểuthịcácbiếnnhấtđịnhsovớinhau,thườngdọc theohaitrụcởmộtgócvuông.

 Không gian địa lý:Hình ảnh trực quan hóa hiển thị dữ liệu ở dạng bản đồ sử dụngcáchìnhdạngvàmàusắckhácnhauđểhiểnthịmốiquanhệgiữacácphầndữliệuvàvịtrícụt hể.

 Infographic:Sự kết hợp giữa hình ảnh và từ ngữ thể hiện dữ liệu Thường sử dụngbiểuđồhoặcsơđồ.

 Trang tổng quan:Tập hợp các hình ảnh và dữ liệu được hiển thị ở một nơi để giúpphântíchvàtrìnhbàydữliệu.

Các côngcụ trựcquanhóa

Truy cập vào các công cụ trực quan hóa dữ liệu hiện nay rất dễ dàng, với các thư viện nguồn mở như D3.js giúp các nhà phân tích trình bày dữ liệu một cách tương tác Điều này cho phép họ thu hút đối tượng rộng hơn với những thông tin mới mẻ Một số thư viện trực quan nguồn mở phổ biến nhất bao gồm:

D3.js:ĐâylàmộtthưviệnJavaScriptphíatrướcđểtạoratrựcquandữliệutươngtác,độngtrongtrình duyệtweb.D3.js(liênkếtcưtrúbênngoàiIBM)sửdụngHTML,CSSvàSVG để tạo các biểu diễn trực quan của dữ liệu có thể được xem trên bất kỳ trình duyệtnào.Nócũngcungcấpcáctínhnăngchocác tươngtácvàhìnhảnhđộng.

Echarts là một thư viện biểu đồ mạnh mẽ, cho phép người dùng dễ dàng thêm các biểu đồ trực quan, tương tác và tùy chỉnh cho các sản phẩm, tài liệu nghiên cứu, thuyết trình và nhiều ứng dụng khác.

VEGA:VEGA (Liên kết nằm bên ngoài IBM) tự định nghĩa là ngữ pháp trực quanhóacủaHồigiáo,cungcấphỗtrợđểtùychỉnhtrựcquanhóatrêncácbộdữliệulớncóthểtruycậptừwe b.

Deck.gl:ĐâylàmộtphầncủabộkhungtrựcquannguồnmởcủaUber.boong.gl(liênkếtcưtrúbên ngoàiIBM)làmộtkhung,đượcsửdụngđểphântíchdữliệukhámphátrêndữ liệulớn.NógiúpxâydựngtrựcquanhóaGPU hiệusuấtcaotrênweb.

Với sự phong phú của các công cụ trực quan hóa dữ liệu, việc tạo ra thông tin không hiệu quả cũng gia tăng Giao tiếp trực quan cần phải đơn giản và có chủ đích để đảm bảo rằng việc trực quan hóa dữ liệu giúp đối tượng mục tiêu của bạn dễ dàng tiếp cận và hiểu rõ kết luận cũng như dự định của bạn Các thực tiễn tốt nhất sau đây có thể giúp đảm bảo rằng trực quan hóa dữ liệu của bạn là hữu ích và rõ ràng.

Ưuđiểmvànhượcđiểm

điểmƯuđiểm Đôimắtcủachúngta bịthuhútbởimàusắcvàhoavăn.Chúngtacóthểnhanhchóngxác định màu đỏ từ màu xanh lam và hình vuông từ hình tròn Trực quan hóa dữ liệu làmộthìnhthứcnghệthuậtthịgiáckhácthuhútsựquantâmcủamọingườigiúphọdễdàngchúýđếnthông điệp.Khixembiểuđồ,chúngtanhanhchóngthấycácxuhướngvàgiátrịngoạilệ.

+Mặcdùcónhiềulợithế,mộtsốnhượcđiểmcóvẻítrõrànghơn.Vídụ,khixemmộthình ảnh trực quan với nhiều dữ liệu khác nhau, nó dễ dàng đưa ra giả định không chínhxác.

PowerBI

“BI”trongPowerBIlàviếttắtcủaBusinessIntelligenceđólàphầnmềmgiúpbáocáodễ dàng hơn và hấp dẫn hơn về mặt hình ảnh Nền tảng tạo trang tổng quan tương tác màngườidùngcóthểdễdàngchiasẻ.

- Power BI có thể kéo và tổng hợp các dữ liệu về lại một nơi và xử lý các dữ liệu đótrởthànhcácthôngtindễhiểuhơn(thôngthườnglàcáchìnhảnhbắtmắt,đồthị,biểuđồ).

- Power BI có thể kết nối nhiều nguồn dữ liệu với dung lượng từ nhỏ đến lớn (>200nguồn)

 Power Query: công cụ để làm sạch, chuyển đổi và chuẩn hóa dữ liệu, đưa dữ liệutừ dạngthôtrởthànhdữliệu“sạchsẽ”,sẵnsàngđể đưavàophântích.

 Power Pivot: công cụ mô hình hóa dữ liệu, thiết lập các liên kết và tạo ra các phéptínhvớicáchàmDAX(dataanalysisexpression).

 PowerView:tạocácbiểuđồtrựcquan,cótínhtươngtácvớinhau,cácbộlọc(filter,slicer)đểxâydựng nênmộtdashboardchứa đựngnhiềuthôngtinhữuích.

Power Map là công cụ trực quan hóa dữ liệu 3-D, cho phép bạn lập bản đồ dữ liệu một cách hiệu quả Dựa trên bản đồ của Bing, Power Map tạo ra các hình ảnh trực quan chất lượng cao dựa trên thông tin về vĩ độ, kinh độ, quốc gia, tiểu bang, thành phố và địa chỉ đường phố.

PowerQ&A là tính năng Q&A (Câu hỏi & Trả lời) trong Power BI, cho phép bạn khám phá dữ liệu theo cách riêng của mình thông qua những câu hỏi đơn giản Đây là phương pháp nhanh nhất để nhận được câu trả lời từ dữ liệu bằng ngôn ngữ tự nhiên.

 Power BI Desktop: đây là công cụ trung tâm của toàn bộ kiến trúc của Power

BI,giúp xây dựng và phát triển các giải pháp kinh doanh thông minh và phân tích dữliệu.

Power BI Website (Power BI Service) là một phần mềm dạng dịch vụ (SaaS) cho phép người dùng lưu trữ, theo dõi và chia sẻ báo cáo một cách hiệu quả.

5.5.3 Ưu điểm và nhược điểmƯuđiểm củaPower BI

Power BI nổi bật với khả năng trực quan hóa dữ liệu, cho phép người dùng dễ dàng tạo và chỉnh sửa báo cáo thông qua chức năng kéo và thả, ngay cả với những người mới bắt đầu Ngoài ra, người dùng còn có thể áp dụng các bộ lọc và tương tác trực tiếp với ứng dụng để nâng cao trải nghiệm phân tích dữ liệu.

PowerBIkếtnốivớinhiềunguồndữliệu,baogồmExcel,cơsởdữliệuSQLServer,GoogleAna lytics,phântíchtruyềnthôngxãhội,nguồnAzure,nguồndựatrênđámmây,

Power BI gặp khó khăn trong việc xử lý các liên kết giữa các bảng phức tạp Do đó, người dùng cần đảm bảo rằng các mô hình dữ liệu bổ sung chỉ có một trường duy nhất để tránh nhầm lẫn giữa các bảng.

 Cấuhìnhcủahìnhảnh bịhạnchế-Microsoft cónhiềuhìnhảnhđadạngvớiPowerBI.Tuynhiên,trongkhingườidùnghiếmkhicầncấuhình củahìnhảnhthìcáctùychọnvàtùychỉnhlạibịhạnchế.

 Phức tạp - Về bản chất, Power BI là một công cụ trực quan, tương đối đơn giản đểnhậpdữliệuvàtạobáocáo.Tuynhiên,nhiềucôngcụcóliênquanvớinhaulạilàmtăngđộphứctạ pcủanólên.

Chếđộxem dữliệu:Chếđộxem dữ liệucung cấpbảnxemtrướccủatoànbộdữliệu.

Kếtnốidữliệu ĐểkếtnốiđếndữliệutrongPowerBIDesktopbạnchọn“GetData”từmenuHome.Lúcnày,PowerBIs ẽchobạnmộtdanhsáchcác địnhdạngfiledữliệumà phầnmềm hỗtrợ.

Sau khi dữ liệu được tải, nó sẽ hiển thị trong Tab Trường, nơi người dùng có thể chỉnh sửa bộ dữ liệu với sự hỗ trợ của Trình soạn thảo truy vấn Trình chỉnh sửa này cho phép sửa đổi dữ liệu từ bất kỳ nguồn nào, bao gồm các thao tác như đổi tên tập dữ liệu, xóa một hoặc nhiều cột Để truy cập Query Editor, người dùng chỉ cần nhấp vào nút Edit Queries trên Ribbon chính.

Sử dụng cùng một dữ liệu Tài chính mà chúng tôi đã sử dụng ở trên Hãy tạo một cột tùychỉnhcótênlàGiásảnxuấtmới,bằng:([manufacturingPrice])*3\

Trong trìnhQuery Editorbạn có thể tạo ra các công thức tùy chỉnh từ giá trị ở các cộtkháctrongbảng.Sauđó,sửdụngkếtquảđểtạoracộtmới,tạitabAddColumnchọnAddCustom

Kiểudữliệucủacáccộtcũngcóthể đượcthay đổidễ dàng.CộtĐơnvịđã báncó kiểudữliệudấuphẩyđộngcóthểđượcđiềuchỉnhthànhmộtsốnguyên.

Sau khi hoàn tất các thao tác với tập dữ liệu, tiến hành quy trình tạo Trang tổng quan trong Power BI Bảng điều khiển Power BI, hay còn gọi là canvas, bao gồm nhiều hình ảnh trực quan trên một trang, giúp kể một câu chuyện Những hình ảnh trực quan này được gọi là ô xếp và được ghim vào trang tổng quan từ các báo cáo.

Tương tự,ta cóthểvẽcác biểuđồnhưdoanhthu vàlợinhuậntheotheotháng, doanhthutheosảnphẩm,lợinhuậntheodảichiếtkhấu:

Hoặc xuấtbảnlênDịchvụPowerBI.SauđócóthểsửdụngỨngdụngPowerBIđểxemhoặctươngtácvớiB ảngđiềukhiển/Báocáo.

Apache Zeppelin

Apache Zeppelin là một công cụ mã nguồn mở dựa trên web, cho phép người dùng thực hiện phân tích dữ liệu tương tác và tạo tài liệu cộng tác Nó tích hợp với các hệ thống xử lý dữ liệu phân tán như Apache Spark và Apache Flink, giúp xử lý dữ liệu quy mô lớn và luồng Với Apache Zeppelin, bạn có thể dễ dàng tạo ra các tài liệu tương tác đẹp mắt bằng SQL, Scala, R hoặc Python ngay trong trình duyệt của mình.

Tíchhợpvớinhiềucôngcụdữliệulớnnguồnmởkhácnhaunhưcác dựánApacheSpark,Flink,Hive,Ignite,LensvàTajo.

Apache Zeppelin là một công cụ trình thông dịch cho phép tích hợp nhiều ngôn ngữ và xử lý dữ liệu, hiện hỗ trợ các trình thông dịch như Apache Spark, Python, JDBC, Markdown và Shell.

Trên nền tảng Apache Zeppelin, hãy truy cập vào trình đơn thả xuống ở góc trên bên phải và chọn Trình thông dịch Tại đây, bạn sẽ thấy danh sách tất cả các thông dịch viên Để tạo một thông dịch viên mới cho MySQL, hãy nhấp vào nút Tạo ở góc trên bên phải.

Nhậptêndễnhậnbiết chotrìnhthôngdịch (vídụ:mysql)vàchọnnhómlàmJDBC:

Giữ tất cả các tùy chọn mặc định, nhưng nhập các chi tiết cần thiết và đảm bảo rằng kếtnốiđếnmáychủMySQLcủabạnđược thiếtlập:

Để Zeppelin nhận diện tạo phẩm tùy chỉnh trong JAR của trình kết nối MySQL, bạn cần tải xuống trình kết nối và đặt nó vào thư mục trình thông dịch/jdbc Sau đó, hãy cung cấp đường dẫn chính xác đến tạo phẩm Để kiểm tra trình thông dịch, bạn cần tạo một ghi chú mới, nhưng trước tiên hãy thiết lập trình thông dịch MongoDB.

Quay lại trang Interpreter và nhấp vào nút Create Chúng ta sẽ sử dụng trình thông dịch MongoDB mã nguồn mở, vì vậy bạn cần tải xuống tệp zip và đổi tên thành jar.

Sauđó,điđếntrìnhthôngdịch/,tạothưmụcmongodb/vàdán j a r v à o thưmục.

BâygiờbạnsẽcómộtnhómInterpretermớigọilàmongodb.ChuyểnđếntrangInterpretercủa bạn, nhập tên thân thiện nhưmongodbvà sau đó chọnmongodbtrong danh sách thảxuốngcủaInterpreter.

Tạomộtghichú Zeppelin Đểchạycáctruyvấnsẽgiúptrựcquanhóadữliệucủachúngtôi,chúngtôicầntạoghichú.T ừngăntiêuđềZeppelin,bấmNotebook,rồiTạoghichúmới: Đảmbảotiêuđềmáytínhxáchtayhiểnthịtrạngthái được kếtnốinhưđượcbiểuthịbằngdấuchấmmàuxanhlácâyởgóctrênbênphải:

Khi tạo ghi chú, bạn sẽ thấy một hộp thoại để nhập thêm thông tin Chọn trình thông dịchmặcđịnhlàmysqlmớiđược tạocủachúngtôivànhấpvàoTạoghichú.

Trước khi thực hiện bất kỳ truy vấn nào, chúng tôi cần đề cập đến loại trình thông dịch mà chúng tôi sẽ sử dụng Chúng tôi có thể bắt đầu ghi chú bằng cách sử dụng %mysql, điều này sẽ cho phép Zeppelin thực hiện các truy vấn MySQL trong ghi chú đó.

Vàbâygiờ,tađãsẵnsàngđểtruyvấncơsởdữliệucủata.Vớimụcđíchcủavídụnày,sửdụng cài đặt WordPress của mình có chứa một wp_options bảng điển hình để truy vấn vàtrựcquanhóadữliệucủanó.

Tươngtự,đốivớiMongoDB,đảmbảobạncódữliệutrongcụmMongoDB.Bạncóthểthêmm ột sốbằngcáchvàotabQuảntrịvàchạytruyvấnMongo.

Bây giờ dữ liệu của bạn đã sẵn sàng để trực quan hóa và truy vấn, bạn có thể muốn hiểnthịnóchonhómcủamình.Bạncóthểlàmđiềunàyrấtdễ dàngbằngcáchtạomộtliênkếtcóthểchiasẻđếnghichú:

Tableau

Tableaul à p h ầ n m ề m h ỗ t r ợ p h â n t í c h ( D a t a A n a l y s t ) v à t r ự c q u a n h ó a d ữ l i ệ u ( D a t a Visualiz ation),côngcụ được dùngnhiềutrongngànhBI(BusinessIntelligence).

Tableaugiúptổnghợpcácdữliệunàytừcácdãysốthànhnhữnghìnhảnh,biểuđồtrựcquan,xây dựngcácdashboardvàcác phântích(Self-services).

Tableau kết hợp các hoạt động phân tích kinh doanh, khai thác dữ liệu và phân tích dữ liệu với các công cụ và cơ sở hạ tầng, giúp tổ chức đưa ra quyết định dựa trên dữ liệu thực tế.

Phân tích dữ liệu là một hoạt động rất quan trọng trong BI Phân tích dữ liệu sẽ giúp chodoanhnghiệpthấyđượcquákhứvàhiệntạirasao,từđóđưaracácquyếtđịnh,hànhđộngđể dựđoántươnglai

 Dữliệucóthểđược chiasẻvớinhauvà đưađếntayngườicầnđể họ tự xử lý

DataManagement

Khátquát

Cassandra là một hệ cơ sở dữ liệu phân tán, kết hợp mô hình dữ liệu của Google Bigtable với thiết kế hệ thống phân tán tương tự như Amazon Dynamo Hệ thống này được phát triển bởi Facebook và được tặng cho quỹ Apache, sử dụng ngôn ngữ lập trình Java.

Mô hình mạng phi tập trung cho phép các bên có cấu trúc phiên giao tiếp tương tự, trong đó mỗi nút hoạt động như một máy khách và máy chủ, giúp chia sẻ phương tiện truyền thông một cách dễ dàng và nhanh chóng Hiệu suất xử lý của hệ thống tăng lên theo số lượng node Nhiều tổ chức, như Spotify, 1&1, Netflix và Dell, đã sử dụng Cassandra làm hệ quản trị cơ sở dữ liệu.

Ứngdụng

Điểm mạnh

Kiến trúc phân phối dữ liệu trong một cluster bao gồm nhiều node, trong đó mỗi node được cấp phát một token dựa trên thuật toán Consistent Hashing Dữ liệu sẽ được phân phối đến từng node dựa vào token này.

Khi nhập dữ liệu thì đầu tiên sẽ lưu trên memtale Sau khi dữ liệu trên memtable fullthìghitoànbộdữliệutrênmemtablexuốngSSTable.Vìthếkhiđọcdữliệuthìđầutiênsẽtìmtrong memtabletrước.Sauđó sẽtìm trong SSTablenếukhôngthấytrongmemtable.

Khi xóa dữ liệu thì dữ liệu sẽ được gắn 1 cái cờ (tombstone) và sẽ được xóa sau 1khoảngthờigiando1conbatch.

Cấutrúcdữliệu

Dữ liệu sẽ thuộc dạngkey-value store (KVS)– một kiểu cơ sở dữ liệu sử dụngmảngkếthợp.Trongđómỗikeysẽtồntạiduynhấtmộtvaluetrongcollection.

Có thể tạo được nhiều table trong database nhưng mà giữa các table sẽ không cómỗiquanhệnào.Nhiềutableđượctổnghợplạithànhkeyspace.

Tínhdưthừa

Không có node nào là chính, các node trong cluster có vai trò như nhau Dữ liệuđượclưutrêntoànbộcácnode,dođó,độchịulỗikhácao.

Dùmộtnodethìlỗi,nó sẽđược điều hướngsangnode khác.

Ưuđiểmvànhượcđiểm

- Hiệusuấtcao:HiệusuấtcủaCassandracaohơncáchệquảntrịSQLkhilượngdữliệuđầu vàolớnhơn50GBvìnótậndụnghếtđượckhảnăngcủacác máy.

- Tínhnhấtquáncóthể điềuchỉnh:Dữ liệutrongcácnodecóthểtùychỉnhbảnsaodữ liệuđược lưutrêntấtcảcácnodevàsốnodelưubảnsaodữliệu.

- Schema-less:Cáccộtđượctạotheoýmuốn củangườiphát triển

Ngày đăng: 06/05/2023, 23:14

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w