Computer >> Máy Tính >  >> Lập trình >> Cơ sở dữ liệu

Giới thiệu về Oracle Times Ten

Times Ten là một sản phẩm của Oracle với tiềm năng tăng cường mạnh mẽ hiệu suất của cơ sở dữ liệu Oracle.

Bên cạnh việc được tối ưu hóa bộ nhớ, Times Ten còn cung cấp thông lượng cao, đảm bảo độ bền và cung cấp khả năng mở rộng. Đồng thời cung cấp thời gian phản hồi tối thiểu, đặc biệt là đối với các ứng dụng phụ thuộc quan trọng vào hiệu suất. Không giống như cơ sở dữ liệu thông thường, Times Ten mang lại hiệu quả cao, nằm hoàn toàn trong RAM.

Lịch sử TimesTen

• Được phát minh tại HP Labs vào năm 1994

• Được nhúng vào giải pháp Open Call của HP

• Ra đời vào năm 1996 với tư cách là công ty khởi nghiệp do VC tài trợ

• Hàng nghìn khách hàng sản xuất

• Được mua lại bởi Tập đoàn Oracle vào năm 2005

• 3 bản phát hành chính kể từ năm 2005:6.0, 7.0, 11gR2,18c Bản phát hành 1

Tổng quan về Oracle Timesten

Oracle TimesTen In-Memory Database là một hệ thống quản lý cơ sở dữ liệu quan hệ, trong bộ nhớ với tính bền bỉ và tính sẵn sàng cao. Ban đầu được thiết kế và triển khai tại phòng thí nghiệm Hewlett-Packard ở Palo Alto, California, TimesTen tách ra thành một công ty khởi nghiệp riêng biệt vào năm 1996 và được Tập đoàn Oracle mua lại vào năm 2005.

Cơ sở dữ liệu của Times Ten có độ bền và tính sẵn sàng cao. Nó cung cấp độ trễ rất thấp và thông lượng cao, là một cơ sở dữ liệu trong bộ nhớ. Các tính năng khác bao gồm API cơ sở dữ liệu quan hệ tiêu chuẩn như JDBC và ODBC.Times Ten không chỉ có thể được sử dụng như một cơ sở dữ liệu trong bộ nhớ độc lập mà còn cung cấp tiện ích được sử dụng làm bộ nhớ đệm trong các cơ sở dữ liệu quan hệ khác, bao gồm cả chính Cơ sở dữ liệu Oracle. Nó thường được sử dụng trong các ứng dụng OLTP có khối lượng cực lớn bao gồm giao dịch tài chính và thanh toán viễn thông.

Cách TimesTen lưu trữ dữ liệu trên đĩa

Nguồn hình ảnh:https://luna-ext.di.fc.ul.pt/oracle11g/timesten.112/e14261/overview.htm

Mỗi kho dữ liệu TimesTen có chính xác hai tệp điểm kiểm tra. Theo mặc định, một trạm kiểm soát được gọi 10 phút một lần; điều này sẽ ghi các trang bộ nhớ bẩn vào tệp điểm kiểm tra đầu tiên, và sau đó điểm kiểm tra tiếp theo sử dụng tệp điểm kiểm tra khác. Các giao dịch ghi được đặt trong bộ đệm trong bộ nhớ trước, sau đó được chuyển vào tệp nhật ký.

Hai loại ghi nhật ký giao dịch:

1. Ghi nhật ký được đệm:

(TỐC ĐỘ:NHANH CHÓNG, ĐỘ DÀI:TỐT) Trước tiên, các giao dịch được lưu vào bộ đệm nhật ký trong bộ nhớ. Khi bộ đệm đầy, nó sẽ được chuyển sang đĩa ở chế độ nền. Quá trình này diễn ra rất nhanh (5000 TPS trở lên). Có một cơ hội nhỏ là các giao dịch có thể bị mất do sự cố xảy ra trước khi bộ đệm được xả. Khách hàng có thể định cấu hình kích thước của bộ đệm nhật ký.

2. Cam kết bền

(TỐC ĐỘ:CHẬM, ĐỘ DÀI:TUYỆT VỜI) Mọi giao dịch được chuyển vào đĩa ngay lập tức. Tốc độ này phụ thuộc vào tốc độ của thiết bị đĩa. Vì mọi giao dịch đều được lưu vào đĩa nên điều này rất bền.

Khách hàng có thể chuyển từ ĐĂNG NHẬP CÓ HẠN CHẾ sang CAM KẾT CÓ THỂ HẠN CHẾ bất kỳ lúc nào bằng cách gọi hàm SQL có tên là ttDurableCommit(). Khách hàng có thể linh hoạt kiểm soát độ bền so với hiệu suất tại thời gian chạy, điều không thể làm được với RDBMS thông thường.

Cải thiện thời gian phản hồi đáng kể:Bộ nhớ cache trong cơ sở dữ liệu trong bộ nhớ + Cơ sở dữ liệu Oracle

Nguồn hình ảnh:https://www.oracle.com/technetwork/database/windows/ds-imdb-cache-1-129794.pdf

Biểu đồ trên cho thấy thời gian phản hồi giao dịch trung bình được đo lường cho từng loại trong số 7 loại giao dịch.

Các thanh màu đỏ là thời gian phản hồi thu được khi dữ liệu được lưu trong bộ nhớ cache của TimesTen IMDB. Đó là một cải tiến lớn cho hoạt động cơ sở dữ liệu ứng dụng. Hãy nhớ rằng một phần tốt của thời gian phản hồi trên cơ sở dữ liệu Oracle là do kết nối máy khách-máy chủ và vòng lặp mạng, không tồn tại khi ứng dụng liên kết trực tiếp với cơ sở dữ liệu TimesTen trong bộ nhớ. Các ứng dụng cũng có thể kết nối với TimesTen thông qua máy khách / máy chủ TCP / IP.

Tạo Cơ sở dữ liệu TimesTen

Xác định DSN

• Thuộc tính DataStore:Chỉ định tên thư mục của các tệp điểm kiểm tra của cơ sở dữ liệu, ví dụ:DataStore=/data/TTDEMO/TTDEMO-DSN1/TTDEMO-DSN1

• Thuộc tính LogDir:Chỉ định tên thư mục cho các tệp nhật ký giao dịch. Nhật ký giao dịch chứa các bản ghi nhật ký cho mỗi lần cập nhật, cam kết và khôi phục cơ sở dữ liệu.

• Thuộc tính DatabaseCharacterSet:Tập ký tự trong đó dữ liệu được lưu trữ Chia lôgic thành hai vùng bộ nhớ riêng biệt

• Vùng bộ nhớ cơ sở dữ liệu

- Permanent region 
-   PermSize DSN attribute configures its allocated size.
 -  Region stores persistent database elements (ex: tables, indexes)
  - Region is written to disk during a checkpoint operation.
  - Temporary region 
  -TempSize DSN attribute configures its allocated size
  -Region stores transient data and information generated when executing statements.( temp tables, stored result sets..)

• Cơ sở dữ liệu sẽ được tạo tự động khi quản trị viên phiên bản kết nối với cơ sở dữ liệu

                       $ttisql <DSN name>

• Tiện ích Ttisql kết nối trực tiếp với DSN máy chủ và tiện ích ttIsqlCS kết nối với DSN máy khách TimesTen.

               $ttisql connStr "DSN=TTDEMO-DSN1;UID=timesten;pwd=timesten"

• Chính sách RAM:Xác định thời điểm cơ sở dữ liệu được tải vào và tải xuống từ bộ nhớ.

             inUse: The database is in memory if it is in use (default policy). 
            always: The database is always kept resident in memory. 
            manual: The database is manually loaded into and unloaded from memory.

GitOps có thể tạo nền tảng hiệu quả để xây dựng các ứng dụng Cloud Native. Các nguyên tắc chính của GitOps nêu bật những lợi ích sau đây cho các tổ chức:

Bộ nhớ cache trong Cơ sở dữ liệu trong Bộ nhớ

Nguồn hình ảnh:https://www.oracle.com/database/technologies/timesten-cache.html

• Lưu vào bộ nhớ cache các bảng cơ sở dữ liệu Oracle trong tầng ứng dụng

  1. Lưu vào bộ nhớ cache các bảng riêng lẻ và các bảng có liên quan
  2. Lưu vào bộ nhớ cache tất cả hoặc tập hợp con các hàng và cột

• Cơ sở dữ liệu bộ nhớ cache chỉ đọc và có thể cập nhật

  1. Truy cập các bảng được lưu trong bộ nhớ cache giống như các bảng cơ sở dữ liệu SQL thông thường
  2. Tham gia / tìm kiếm, chèn / cập nhật / xóa

• Đồng bộ hóa dữ liệu tự động

  1. TimesTen cho Oracle
  2. Oracle thành TimesTen

Oracle IMDB Cache

Nhóm Cache là gì?

A set of cached tables created in TimesTen database that correspond to tables in Oracle Database

Nhóm bộ nhớ cache chỉ đọc

Các thao tác đọc được thực hiện trong TimesTen

Các thao tác ghi được chuyển qua Oracle và tự động được làm mới thành TimesTen

Nguồn hình ảnh:https://docs.oracle.com/cd/E18283_01/timesten.112/e14261/cache.htm

Cache Connect trong Oracle cho phép người dùng lưu vào bộ nhớ cache một tập hợp con của cơ sở dữ liệu Oracle của họ vào TimesTen để cung cấp thời gian phản hồi và thông lượng tốt hơn cho dữ liệu được truy cập thường xuyên.

Bạn có thể lưu vào bộ nhớ cache các bảng chọn đầy đủ, tập hợp con của các hàng hoặc tập hợp con của các cột. Bộ nhớ cache có thể ở chế độ chỉ đọc hoặc có thể cập nhật. ghi xuyên qua hoặc ghi không đồng bộ.Bạn có thể có nhiều trường hợp bộ nhớ đệm được lưu vào bộ nhớ đệm từ cùng một Oracle DB; mỗi phiên bản bộ đệm có thể có bộ nội dung được lưu trong bộ đệm khác nhau của riêng nó.

Quản trị IMDB Cache &Các phương pháp hay nhất

• Thiết lập bộ nhớ cache một lần trong cả cơ sở dữ liệu Oracle và TimesTen (mỗi tài liệu triển khai)

• Đặt chính sách khởi động lại tác nhân bộ nhớ cache:Thủ công, luôn luôn, không khởi động lại

• Chỉ định khoảng thời gian AUTOREFRESH

  • Tạo kích hoạt CHÈN, CẬP NHẬT và XÓA trên (các) bảng Oracle trong nhóm bộ nhớ cache
  • Trình kích hoạt chèn một hàng nhỏ vào bảng ghi nhật ký mà TimesTen giữ trong Oracle
  • Tác nhân TimesTen truy vấn bảng này và làm mới dữ liệu trong khoảng thời gian bạn chỉ định • Các thay đổi Định nghĩa dữ liệu trong Oracle sẽ yêu cầu các NHÓM LOAD, UNLOAD, FLUSH, REFRESH CACHE

Kết luận

TimesTen là Cơ sở dữ liệu quan hệ trong bộ nhớ cung cấp độ trễ rất thấp và thông lượng cực cao cho SQLoperations đồng thời cung cấp chức năng cơ sở dữ liệu quan hệ tiêu chuẩn thông qua các API tiêu chuẩn. Nó có thể được triển khai dưới dạng cơ sở dữ liệu astandalone hoặc như một bộ đệm quan hệ hiệu suất cao cho Cơ sở dữ liệu Oracle.

Sử dụng tab Phản hồi để đưa ra bất kỳ nhận xét hoặc đặt câu hỏi nào. Bạn cũng có thể bắt đầu cuộc trò chuyện với chúng tôi.