Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Máy ứng dụng của Google cho Java: Phần 3: Lưu giữ lâu bền và các mối quan hệ ppt
MIỄN PHÍ
Số trang
21
Kích thước
178.9 KB
Định dạng
PDF
Lượt xem
1073

Máy ứng dụng của Google cho Java: Phần 3: Lưu giữ lâu bền và các mối quan hệ ppt

Nội dung xem thử

Mô tả chi tiết

Máy ứng dụng của Google cho Java: Phần 3: Lưu giữ lâu bền và các mối

quan hệ

Lưu giữ lâu bền dựa vào Java và kho lưu trữ dữ liệu của Máy ứng dụng của

Google

Rick Hightower , Giám đốc, eBlox

Tóm tắt: Lưu giữ lâu bền dữ liệu là một phần quan trọng của việc phân phối ứng

dụng có khả năng mở rộng trong các môi trường doanh nghiệp. Trong bài viết cuối

cùng của loạt bài giới thiệu của mình về Máy ứng dụng của Google (Google App

Engine) cho Java™, Rick Hightower chấp nhận các thách thức của các khung

công tác lưu giữ lâu bền dựa trên Java hiện có của Máy ứng dụng (App Engine).

Tìm hiểu các chi tiết về tại sao việc lưu giữ lâu bền bằng Java trong bản các phát

hành trước đây chưa phải là hoàn toàn sẵn sàng cho thời kỳ cao điểm, đồng thời

cũng nhận được một trình diễn làm việc thực sự về những gì mà bạn có thể làm để

lưu giữ lâu bền dữ liệu trong các ứng dụng của Máy ứng dụng cho Java. Chú ý

rằng bạ

Máy ứng dụng cho Java cố gắng loại bỏ mối lo phải viết một tầng lưu giữ lâu bền

cho các ứng dụng Web mở rộng được, nhưng nó thực hiện mục đích đó đến mức

nào? Trong bài viết này, tôi kết thúc bài giới thiệu của mình về Máy ứng dụng cho

Java với một tổng quan về khung công tác lưu giữ lâu bền của nó, dựa trên các đối

tượng dữ liệu Java (Java Data Objects-JDO) và API lưu giữ lâu bền của Java (Java

Persistence API-JPA). Mặc dù ban đầu tỏ ra nhiều hứa hẹn, việc lưu giữ lâu bền

dựa trên Java của Máy ứng dụng hiện tại có một số nhược điểm nghiêm trọng mà

tôi sẽ giải thích và chứng tỏ các nhược điểm đó. Bạn sẽ tìm hiểu xem việc lưu giữ

lâu bền của Máy ứng dụng cho Java hoạt động như thế nào, những thách thức là gì

và bạn có những tùy chọn lưu giữ lâu bền nào khi làm việc với nền tảng đám mây

của Google dành cho các nhà phát triển Java.

Khi bạn đọc bài viết này và làm việc qua các ví dụ, bạn sẽ muốn ghi nhớ một thực

tế là Máy ứng dụng cho Java hiện nay là một bản phát hành xem trước. Khi mà

việc lưu giữ lâu bền dựa trên Java có thể không phải là tất cả những gì mà bạn có

thể hy vọng, hoặc cần có, vào lúc này, điều này là có thể và cần thay đổi trong

tương lai. Những gì mà tôi học được trong khi viết bài hướng dẫn này là việc sử

dụng Máy ứng dụng cho Java để phát triển ứng dụng Java tập trung vào dữ liệu, có

khả năng mở rộng, hiện nay, không phải dành cho những người nhút nhát hay bảo

thủ. Nó giống như lặn xuống đáy bể bơi: Không còn ở trong tầm mắt của người

cứu hộ nữa và dự án của bạn chìm xuồng hoặc bơi được là tùy thuộc nơi bạn.

Chú ý rằng ứng dụng ví dụ trong bài viết này được dựa trên ứng dụng quản lý liên

hệ đã phát triển trong Phần 2 của bài viết này. Bạn sẽ cần phải có ứng dụng đó đã

xây dựng và chạy được để tiếp tục các ví dụ ở đây.

Thành phần cơ bản và các sự trừu tượng hóa có lỗ rò

Cũng giống như Máy ứng dụng của Google nguyên thủy, Máy ứng dụng cho Java

dựa vào cơ sở hạ tầng nội bộ của Google với Ba Trụ Lớn (Big Three) để phát triển

ứng dụng có khả năng mở rộng: phân tán, tạo bản sao và cân bằng tải. Vì bạn đang

làm việc với cơ sở hạ tầng của Google, nên hầu hết các phép thuật này xảy ra ở

hậu trường và bạn có thể truy cập qua các API tiêu chuẩn của Máy ứng dụng cho

Java. Giao diện kho lưu trữ dữ liệu (datastore) được dựa trên JDO và JPA, mà

chính chúng lại dựa trên dự án nguồn mở DataNucleus. Máy ứng dụng cho Java

cũng cung cấp một API tiếp hợp (adapter) mức thấp để làm việc trực tiếp với kho

lưu trữ dữ liệu của Máy ứng dụng cho Java, kho lưu trữ dữ liệu này dựa trên việc

thực hiện BigTable của Google (xem Phần 1 để biết thêm về BigTable).

Tuy nhiên, việc lưu giữ lâu bền dữ liệu của Máy ứng dụng cho Java là không hoàn

toàn đơn giản như việc lưu giữ lâu bền trong Máy ứng dụng của Google thuần.

Các giao diện JDO và JPA lộ ra một số sự trừu tượng hóa có lỗ rò do thực tế là

BigTable không phải là một cơ sở dữ liệu quan hệ. Ví dụ, trong Máy ứng dụng cho

Java, bạn không thể thực hiện các truy vấn mà chúng thực hiện các phép nối

(join). Bạn có thể thiết lập các quan hệ trong JPA và JDO, nhưng chúng chỉ có thể

được sử dụng để lưu giữ lâu bền các quan hệ. Và khi bạn lưu giữ lâu bền các đối

tượng, chúng chỉ có thể được duy trì trong cùng một giao dịch nguyên tử nếu

chúng ở trong cùng một nhóm thực thể. Theo quy ước, các quan hệ là quan hệ sở

hữu nằm trong cùng nhóm thực thể với thực thể cha mẹ. Ngược lại, các mối quan

hệ không sở hữu nằm trong các nhóm thực thể tách biệt.

Nghĩ lại về chuẩn hóa dữ liệu

Làm việc với kho lưu trữ dữ liệu có khả năng mở rộng của Máy ứng dụng đòi hỏi

bạn phải suy nghĩ lại luận thuyết của mình về các lợi ích của dữ liệu được chuẩn

hóa. Tất nhiên, nếu bạn đã làm việc đủ lâu trong thế giới thực, có thể bạn đã phải

một hai lần hy sinh sự chuẩn hóa để đổi lấy hiệu năng. Sự khác biệt là, khi làm

việc với kho lưu trữ dữ liệu của Máy ứng dụng, bạn phải không chuẩn hóa sớm

hơn và thường xuyên. Chưa chuẩn hóa không còn là một từ xấu nữa; thay vào đó,

nó là một công cụ thiết kế mà bạn sẽ áp dụng trong nhiều khía cạnh của các ứng

dụng của Máy ứng dụng cho Java của bạn.

Nhược điểm chính với Máy ứng dụng cho sự lưu giữ lâu bền có lỗ rò của Java sẽ

xuất hiện khi bạn cố gắng chuyển một ứng dụng được viết cho một RDBMS tới

Máy ứng dụng cho Java. Kho lưu trữ dữ liệu của Máy ứng dụng cho Java không

Tải ngay đi em, còn do dự, trời tối mất!