核心内容摘要
StructBERT情感分析:从部署到实战全流程
GizmoSQL — 面向云端的高性能 SQL 服务器 什么是 GizmoSQLGizmoSQL是一个轻量级、高性能的 SQL 服务器构建于 DuckDB 或 ️ SQLite用于查询执行 Apache Arrow Flight SQL提供快速、现代化的连接性 基于中间件的身份验证支持可选的 TLS 和 JWT最初从sqlflite分叉而来——现已在 Apache
0 许可证下增强为更可扩展、可用于生产环境的平台。
版本GizmoSQL 提供两个版本特性核心版企业版DuckDB 和 SQLite 后端✅✅Arrow Flight SQL 协议✅✅TLS 和 mTLS 认证✅✅JWT 令牌认证✅✅查询超时✅✅会话监控❌✅终止会话❌✅按目录权限管理❌✅GizmoSQL Core核心版免费且开源采用 Apache
0 许可证。
GizmoSQL Enterprise企业版需要商业许可证。
请联系 salesgizmodata.com 获取授权信息。
更多详情请参阅 版本文档。
为什么选择 GizmoSQL️随处部署— 可作为容器、原生二进制文件或在 Kubernetes 中运行列式快速— 利用 Arrow 列式格式进行高速传输⚙️双后端支持— 可在运行时在 DuckDB 和 SQLite 之间切换内置 TLS 认证— 基于密码的登录 签名 JWT 令牌极低成本分析— 在 Azure 上以约
17 美元的成本在 161 秒内完成 TPC-H SF 1000 测试CLI、Python、JDBC、SQLAlchemy、Ibis、WebSocket— 按需选择接口 组件版本组件版本DuckDBv
1.
4SQLite
3.
5
1Apache Arrow (Flight SQL)
23.
0jwt-cppv
0.
1nlohmann/jsonv
3.
1
0 文档如需详细说明和配置信息请参阅我们的完整文档GizmoSQL 文档 快速开始选项 1通过 Docker 运行dockerrun --name gizmosql\--detach\--rm\--tty\--init\--publish31337:31337\--envTLS_ENABLED1\--envGIZMOSQL_PASSWORDgizmosql_password\--envPRINT_QUERIES1\--pull always\gizmodata/gizmosql:latest选项 2挂载您自己的 DuckDB 数据库文件duckdb ./tpch_sf
duckdbEOF INSTALL tpch; LOAD tpch; CALL dbgen(sf
; EOFdockerrun --name gizmosql\--detach\--rm\--tty\--init\--publish31337:31337\--envTLS_ENABLED1\--envGIZMOSQL_PASSWORDgizmosql_password\--pull always\--mounttypebind,source$(pwd),target/opt/gizmosql/data\--envDATABASE_FILENAMEdata/tpch_sf
duckdb\gizmodata/gizmosql:latest选项 3通过 Homebrew 安装 (macOS 和 Linux)brew tap gizmodata/tap brewinstallgizmosql支持的平台macOS (Apple Silicon / ARM
Linux (x
/ AMD
Linux (ARM
然后运行服务器GIZMOSQL_PASSWORDgizmosql_passwordgizmosql_server --database-filename your.duckdb --print-queries 客户端和工具 JDBC与 DBeaver 或其他 JDBC 客户端配合使用jdbc:arrow-flight-sql://localhost:31337?useEncryptiontrueusergizmosql_usernamepasswordgizmosql_passworddisableCertificateVerificationtrue更多信息设置指南 Python (ADBC)importosfromadbc_driver_flightsqlimportdbapiasgizmosql,DatabaseOptionswithgizmosql.connect(urigrpctls://localhost:31337,db_kwargs{username:os.getenv(GIZMOSQL_USERNAME,gizmosql_username),password:os.getenv(GIZMOSQL_PASSWORD,gizmosql_password),DatabaseOptions.TLS_SKIP_VERIFY.value:true# 如果使用受信任的 CA 签名的 TLS 证书则不需要此项},autocommitTrue)asconn:withconn.cursor()ascur:cur.execute(SELECT n_nationkey, n_name FROM nation WHERE n_nationkey ?,parameters[24])xcur.fetch_arrow_table()print(x) 令牌认证请参阅https://github.com/gizmodata/generate-gizmosql-token了解如何生成令牌并与 GizmoSQL 配合使用的示例。
CLI 客户端gizmosql_client --command Execute --host localhost --port31337--username gizmosql_username --password gizmosql_password --querySELECT version()--use-tls --tls-skip-verify️ 从源代码构建 (可选)gitclone https://github.com/gizmodata/gizmosql --recurse-submodulescdgizmosql cmake -S.-B build -G Ninja -DCMAKE_INSTALL_PREFIX/usr/local cmake --build build --targetinstall然后运行GIZMOSQL_PASSWORD...gizmosql_server --database-filename ./data/your.db --print-queries 高级功能✅ 支持 DuckDB 和 SQLite 后端✅ TLS 和可选的 mTLS✅ 基于 JWT 的身份验证自动签发服务器端签名✅ 通过INIT_SQL_COMMANDS或INIT_SQL_COMMANDS_FILE进行服务器初始化✅ 轻量级 Docker 镜像占用最小运行时资源️ 后端选择# DuckDB (默认)gizmosql_server -B duckdb --database-filename data/foo.duckdb# SQLitegizmosql_server -B sqlite --database-filename data/foo.sqlite[!TIP]现在可以使用--query-timeout参数来设置服务器的最大查询超时秒。
运行时间超过超时设置的查询将被终止。
默认值0表示无限制。
示例gizmosql_server (其他参数...) --query-timeout 10将为所有查询设置 10 秒的超时。
[!TIP]健康检查查询可以使用--health-check-query或GIZMOSQL_HEALTH_CHECK_QUERY环境变量进行自定义。
默认为SELECT 1。
当您需要为部署进行更具体的健康检查时这很有用。
示例gizmosql_server (其他参数...) --health-check-query SELECT 1 FROM my_table LIMIT 1 扩展与集成 GizmoSQL UI 新 SQLAlchemy 方言 兼容 Apache Superset 的 SQLAlchemy 驱动程序 Ibis 适配器 通过 WebSocket 代理的 Flight SQL Metabase 驱动程序⚙️ dbt 适配器 SQLMesh 适配器 新✨ PySpark SQLFrame 适配器 新 Query.Farm 的 ADBC 扫描器 新⚓️ Kubernetes Operator 新 GizmoSQLLine JDBC CLI 客户端新 Grafana 插件新️ JavaScript/TypeScript 客户端新 性能 在 Azure 虚拟机Standard_E64pds_v6约
74 美元/小时上TPC-H SF 1000 基准测试⏱️
1
4 秒 总计约
17 美元 速度制胜性能低廉。
许可证GizmoSQL Core核心版遵循 Apache License, Version
0 许可证。
企业版功能位于src/enterprise/中是专有的需要获得 GizmoData LLC 的商业许可证。
详情请参阅 src/enterprise/LICENSE。
联系方式有疑问或咨询需求 infogizmodata.com https://gizmodata.com由 GizmoData™ 用 ❤️ 构建