bên trong
Để hoàn thành hướng dẫn này, bạn cần thiết lập một số phần mềm. Dưới đây là bảng phân tích những gì bạn sẽ cần:
Cài đặt: Nếu bạn đang bắt đầu mới,
Sau khi cài đặt Docker Desktop hoặc kết hợp Docker và Docker Compose, bạn có thể xác minh sự hiện diện của chúng bằng cách chạy lệnh sau trong terminal của mình:
docker-compose --version
Bạn cũng sẽ cần giấy phép SingleStore mà bạn có thể nhận được
Hãy lưu ý cả mã cấp phép và mật khẩu gốc của bạn. Mật khẩu gốc ngẫu nhiên sẽ được gán cho tài khoản của bạn, nhưng bạn có thể thay đổi mật khẩu gốc bằng Giao diện người dùng SingleStore.
Hướng dẫn này phụ thuộc vào
Tệp quan trọng nhất trong kho lưu trữ này là docker-compose.yaml
mô tả môi trường Docker với cơ sở dữ liệu SingleStore ( singlestore
), phiên bản MinIO ( minio
) và vùng chứa mc
phụ thuộc vào dịch vụ MinIO.
Vùng chứa mc chứa tập lệnh entrypoint
, trước tiên đợi cho đến khi có thể truy cập được MinIO, thêm MinIO làm máy chủ lưu trữ, tạo nhóm classic-books
, tải lên tệp books.txt
chứa dữ liệu sách, đặt chính sách nhóm thành công khai rồi thoát.
version: '3.7' services: singlestore: image: 'singlestore/cluster-in-a-box' ports: - "3306:3306" - "8080:8080" environment: LICENSE_KEY: "" ROOT_PASSWORD: "" START_AFTER_INIT: 'Y' minio: image: minio/minio:latest ports: - "9000:9000" - "9001:9001" volumes: - data1-1:/data1 - data1-2:/data2 environment: MINIO_ROOT_USER: minioadmin MINIO_ROOT_PASSWORD: minioadmin command: ["server", "/data1", "/data2", "--console-address", ":9001"] mc: image: minio/mc:latest depends_on: - minio entrypoint: > /bin/sh -c " until (/usr/bin/mc config host add --quiet --api s3v4 local http://minio:9000 minioadmin minioadmin) do echo '...waiting...' && sleep 1; done; echo 'Title,Author,Year' > books.txt; echo 'The Catcher in the Rye,JD Salinger,1945' >> books.txt; echo 'Pride and Prejudice,Jane Austen,1813' >> books.txt; echo 'Of Mice and Men,John Steinbeck,1937' >> books.txt; echo 'Frankenstein,Mary Shelley,1818' >> books.txt; /usr/bin/mc cp books.txt local/classic-books/books.txt; /usr/bin/mc policy set public local/classic-books; exit 0; " volumes: data1-1: data1-2:
Sử dụng trình chỉnh sửa tài liệu, thay thế phần giữ chỗ bằng khóa cấp phép và mật khẩu gốc của bạn.
Trong cửa sổ terminal, điều hướng đến nơi bạn đã sao chép repo và chạy lệnh sau để khởi động tất cả các vùng chứa:
docker-compose up
Mở cửa sổ trình duyệt điều hướng đến
Hướng đếnminioadmin:minioadmin
. Bạn sẽ thấy rằng thùng chứa mc đã tạo một thùng có tên là classic-books
và có một đối tượng trong thùng.
Trong SingleStore, điều hướng đến SQL Editor và chạy phần sau
-- Create a new database named 'books' CREATE DATABASE books; -- Switch to the 'books' database USE books; -- Create a table named 'classic_books' to store information about classic books CREATE TABLE classic_books ( title VARCHAR(255), author VARCHAR(255), date VARCHAR(255) ); -- Define a pipeline named 'minio' to load data from an S3 bucket called 'classic-books' -- The pipeline loads data into the 'classic_books' table CREATE PIPELINE IF NOT EXISTS minio AS LOAD DATA S3 'classic-books' CONFIG '{"region": "us-east-1", "endpoint_url":"http://minio:9000/"}' CREDENTIALS '{"aws_access_key_id": "minioadmin", "aws_secret_access_key": "minioadmin"}' INTO TABLE classic_books FIELDS TERMINATED BY ','; -- Start the 'minio' pipeline to initiate data loading START PIPELINE minio; -- Retrieve and display all records from the 'classic_books' table SELECT * FROM classic_books; -- Drop the 'minio' pipeline to stop data loading DROP PIPELINE minio; -- Drop the 'classic_books' table to remove it from the database DROP TABLE classic_books; -- Drop the 'books' database to remove it entirely DROP DATABASE books;
Tập lệnh SQL này khởi tạo một chuỗi hành động để xử lý dữ liệu liên quan đến sách cổ điển. Nó bắt đầu bằng việc thiết lập một cơ sở dữ liệu mới có tên books
. Trong cơ sở dữ liệu này, một bảng có tên classic_books
được tạo, được thiết kế để chứa các thông tin chi tiết như tiêu đề, tác giả và ngày xuất bản.
Sau đó, một quy trình có tên minio
được thiết lập để trích xuất dữ liệu từ nhóm S3 có nhãn classic-books
và tải dữ liệu đó vào bảng classic_books
. Các tham số cấu hình cho quy trình này, bao gồm khu vực, URL điểm cuối và thông tin xác thực, đều được xác định.
Sau đó, đường dẫn 'minio' được kích hoạt để bắt đầu quá trình truy xuất và tổng hợp dữ liệu. Sau khi dữ liệu được tải thành công vào bảng, truy vấn SELECT sẽ truy xuất và hiển thị tất cả các bản ghi được lưu trữ trong classic_books
.
Sau khi hoàn thành việc trích xuất và xem dữ liệu, đường dẫn minio
bị tạm dừng và xóa, bảng classic_books
bị xóa khỏi cơ sở dữ liệu books
và chính cơ sở dữ liệu books
cũng bị xóa, đảm bảo một bảng xếp hạng sạch sẽ và kết thúc các hoạt động quản lý dữ liệu. Tập lệnh này sẽ giúp bạn bắt đầu thử nghiệm với dữ liệu trong MinIO trong SingleStore.
Hướng dẫn này nhanh chóng thiết lập một ngăn xếp dữ liệu mạnh mẽ cho phép thử nghiệm việc lưu trữ, xử lý và truy vấn dữ liệu trong bộ lưu trữ đối tượng. Việc tích hợp SingleStore, một cơ sở dữ liệu dựa trên nền tảng đám mây nổi tiếng với tốc độ và tính linh hoạt, với MinIO tạo thành một viên gạch quan trọng trong ngăn xếp datalake hiện đại.
Khi xu hướng của ngành nghiêng về việc phân chia bộ nhớ và điện toán, thiết lập này trao quyền cho các nhà phát triển khám phá các chiến lược quản lý dữ liệu đổi mới. Cho dù bạn quan tâm đến việc xây dựng các ứng dụng sử dụng nhiều dữ liệu, triển khai phân tích nâng cao hay thử nghiệm khối lượng công việc AI, hướng dẫn này sẽ đóng vai trò là bệ phóng.
Chúng tôi mời bạn xây dựng dựa trên ngăn xếp dữ liệu này, thử nghiệm với các bộ dữ liệu và cấu hình khác nhau, đồng thời giải phóng toàn bộ tiềm năng của các ứng dụng dựa trên dữ liệu của bạn. Nếu có bất kỳ câu hỏi hoặc ý tưởng nào, vui lòng liên hệ với chúng tôi theo địa chỉ [email protected] hoặc tham gia