Xin lưu ý rằng phiên bản trình điều khiển JDBC Amazon Redshift mã nguồn mở đã được cập nhật lên 2. 0. x trong tương lai, trong khi phiên bản mã nguồn đóng trước đó sẽ tiếp tục được duy trì trên 1. x chi nhánh cho đến khi có thông báo mới.
Trong blog này, chúng tôi sẽ giới thiệu khả năng kết nối Cơ sở dữ liệu Java [JDBC] của GridDB bằng cách ghép nối nó với mô-đun JDBC Python phổ biến. Mô-đun trong trường hợp này, JayDeBeApi, cho phép nhà phát triển kết nối cơ sở mã Python của họ với JDBC; . Để giải quyết vấn đề rõ ràng, vui lòng đảm bảo rằng bạn đã cài đặt GridDB, cùng với ứng dụng khách Python
điều kiện tiên quyết
$ pip3 install griddb-python --user
Sau khi chắc chắn rằng cụm GridDB của bạn đã được thiết lập và đang chạy, bước tiếp theo là tải xuống trình điều khiển GridDB JDBC. Hướng dẫn có thể được tìm thấy ở đây. Blog
Đây là một bản tóm tắt nhanh chóng
$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
Cài đặt JayDeBeApi
Và bây giờ vào điểm thu hút chính. Để cài đặt JayDeBeApi, chúng ta cần cài đặt chính gói đó, cùng với JPype1
$ pip3 install JayDeBeApi --user
$ pip3 install JPype1==0.6.3 --user
Nếu bạn làm theo hướng dẫn JDBC từ blog trước của chúng tôi, thì CLASSPATH của bạn đã được trỏ đến trình điều khiển JDBC
$ export CLASSPATH=${CLASSPATH}:/user/share/java/gridstore-jdbc-4.5.0.jar
Tiếp theo là chạy một mẫu để đảm bảo rằng nó đang kết nối đúng cách. Vì vậy, hãy chạy mẫu có trong kho lưu trữ GridDB JDBC
Như một lưu ý, xin vui lòng nhìn vào mã dưới đây. Nó có một đường dẫn đến gridstore-jdbc. tệp jar. Bạn sẽ cần thay đổi đường dẫn để trỏ đến thư mục /usr/share/java của mình
import jaydebeapi
import sys
argv = sys.argv
multicast_address = argv[1] # default : 239.0.0.1
port_no = argv[2] # default : 41999
cluster_name = argv[3]
username = argv[4]
password = argv[5]
url = "jdbc:gs://" + multicast_address + ":" + port_no + "/" + cluster_name
conn = jaydebeapi.connect["com.toshiba.mwcloud.gs.sql.Driver",
url, [username, password], "./gridstore-jdbc.jar"]
curs = conn.cursor[]
curs.execute["DROP TABLE IF EXISTS Sample"]
curs.execute["CREATE TABLE IF NOT EXISTS Sample [ id integer PRIMARY KEY, value string ]"]
print['SQL Create Table name=Sample']
curs.execute["INSERT INTO Sample values [0, 'test0'],[1, 'test1'],[2, 'test2'],[3, 'test3'],[4, 'test4']"]
print['SQL Insert']
curs.execute["SELECT * from Sample where ID > 2"]
print[curs.fetchall[]]
curs.close[]
conn.close[]
print['success!']
$ cp jdbc/sample/en/python-db-api/DBAPISelect.py .
Mục tiêu của mã mẫu chỉ đơn giản là để xác minh rằng bạn có thể chạy mã Python của mình cùng với JDBC. Ở đây, mã Python tạo một vùng chứa có tên là Mẫu và chèn một số dữ liệu — một lần nữa, chỉ để xác minh mọi thứ đang hoạt động bình thường
Bây giờ thực sự chạy mẫu
$ pip3 install JayDeBeApi --user
6________số 8_______
SQL Create Table name=Sample SQL Insert [[3, 'test3'], [4, 'test4']] success!
Xin chúc mừng, giờ đây bạn có thể giao tiếp với JDBC/GridDB bằng Python
Sử dụng với Máy tính xách tay Jupyter
Khi bạn đã thiết lập và chạy jdbc, bạn có thể dễ dàng cài đặt Jupyter Notebook để thực sự làm cho toàn bộ trải nghiệm đẹp hơn rất nhiều
$ pip3 install jupyterlab --user
Bây giờ chỉ cần mở jupyter
$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
0Và đó là nó
docker
Cập nhật. Chúng tôi đã nhận được đóng góp từ Mr. Rönsch sử dụng Docker Compose cho phép quá trình thiết lập dễ dàng hơn. Chúng tôi khuyến khích bạn kiểm tra repo bắt đầu nhanh mà anh ấy đã rất vui lòng tạo ra để giúp quá trình này. https. //github. com/roenschg/griddb-jupyter-quikstart. Điều này sẽ cho phép bạn thiết lập và chạy trong khi sử dụng GridDB v4. 5.
Ngoài ra, bạn có thể sử dụng Docker để chạy JDBC và JayDeBeApi. Blog bao gồm một vùng chứa cho cả máy chủ GridDB và máy khách Python [các tệp nguồn nằm ở cuối blog]. Nếu bạn quyết định theo dõi blog trước đây của chúng tôi, vui lòng đảm bảo bạn cập nhật
$ pip3 install JayDeBeApi --user
7 để tải xuống Máy chủ GridDB mới nhất$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
1Bạn cũng sẽ cần thay đổi start_griddb. sh để cập nhật địa chỉ thông báo của hệ thống [từ 10080 –> 10040]
$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
2Khi bộ chứa Docker máy chủ GridDB của bạn đang chạy, bạn có thể lấy địa chỉ IP của nó bằng lệnh sau
$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
3HOẶC LÀ
$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
4Jupyter [Docker]
Đây là cách bạn cũng có thể cài đặt Jupyter qua docker container
$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
5Sau đó, sao chép url [http. //127. 0. 0. 1. 8888/?token=xxxx] và dán vào trình duyệt của bạn để khởi động jupyter notebook
Đăng nhập vào vùng chứa docker mới được tạo của bạn
$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
6và chạy các lệnh sau để cài đặt các phụ thuộc mới
$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
7$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
8$ wget //repo1.maven.org/maven2/com/github/griddb/gridstore-jdbc/4.5.0/gridstore-jdbc-4.5.0.jar
$ pip3 install JayDeBeApi --user
0$ pip3 install JayDeBeApi --user
1Và bây giờ bạn có thể hoàn thành phần còn lại của hướng dẫn qua Jupyter trong trình duyệt của mình. Đầu tiên, nhập các thư viện cần thiết
$ pip3 install JayDeBeApi --user
2Tạo kết nối với bộ chứa GridDB
$ pip3 install JayDeBeApi --user
3Tạo bảng chuỗi thời gian/vùng chứa và truy vấn qua JDBC
$ pip3 install JayDeBeApi --user
4Bạn cũng có thể sử dụng thư viện gấu trúc
$ pip3 install JayDeBeApi --user
5Phần kết luận
Chúng tôi đã cung cấp cho bạn hai phương pháp khác nhau để cài đặt và sử dụng Jupyter và JayDeBeApi cùng với máy chủ GridDB của bạn để có thêm các phương pháp giao tiếp với cơ sở dữ liệu chuỗi thời gian