当前位置: 首页 > news >正文

DeepSeek辅助总结的GizmoSQL数据库自述文件

🚀 GizmoSQL — 面向云端的高性能 SQL 服务器


🌟 什么是 GizmoSQL?

GizmoSQL是一个轻量级、高性能的 SQL 服务器,构建于:

  • 🦆 DuckDB 或 🗃️ SQLite,用于查询执行
  • 🚀 Apache Arrow Flight SQL,提供快速、现代化的连接性
  • 🔒 基于中间件的身份验证,支持可选的 TLS 和 JWT

最初从sqlflite分叉而来——现已在 Apache 2.0 许可证下增强为更可扩展、可用于生产环境的平台。


📦 版本

GizmoSQL 提供两个版本:

特性核心版企业版
DuckDB 和 SQLite 后端
Arrow Flight SQL 协议
TLS 和 mTLS 认证
JWT 令牌认证
查询超时
会话监控
终止会话
按目录权限管理

GizmoSQL Core(核心版)免费且开源,采用 Apache 2.0 许可证。

GizmoSQL Enterprise(企业版)需要商业许可证。请联系 sales@gizmodata.com 获取授权信息。

更多详情,请参阅 版本文档。


🧠 为什么选择 GizmoSQL?

  • 🛰️随处部署— 可作为容器、原生二进制文件或在 Kubernetes 中运行
  • 📦列式快速— 利用 Arrow 列式格式进行高速传输
  • ⚙️双后端支持— 可在运行时在 DuckDB 和 SQLite 之间切换
  • 🔐内置 TLS + 认证— 基于密码的登录 + 签名 JWT 令牌
  • 📈极低成本分析— 在 Azure 上以约 0.17 美元的成本在 161 秒内完成 TPC-H SF 1000 测试
  • 🧪CLI、Python、JDBC、SQLAlchemy、Ibis、WebSocket— 按需选择接口

📦 组件版本

组件版本
DuckDBv1.4.4
SQLite3.51.1
Apache Arrow (Flight SQL)23.0.0
jwt-cppv0.7.1
nlohmann/jsonv3.12.0

📚 文档

如需详细说明和配置信息,请参阅我们的完整文档:

GizmoSQL 文档


🚀 快速开始

选项 1:通过 Docker 运行

dockerrun --name gizmosql\--detach\--rm\--tty\--init\--publish31337:31337\--envTLS_ENABLED="1"\--envGIZMOSQL_PASSWORD="gizmosql_password"\--envPRINT_QUERIES="1"\--pull always\gizmodata/gizmosql:latest

选项 2:挂载您自己的 DuckDB 数据库文件

duckdb ./tpch_sf1.duckdb<<EOF INSTALL tpch; LOAD tpch; CALL dbgen(sf=1); EOFdockerrun --name gizmosql\--detach\--rm\--tty\--init\--publish31337:31337\--envTLS_ENABLED="1"\--envGIZMOSQL_PASSWORD="gizmosql_password"\--pull always\--mounttype=bind,source=$(pwd),target=/opt/gizmosql/data\--envDATABASE_FILENAME="data/tpch_sf1.duckdb"\gizmodata/gizmosql:latest

选项 3:通过 Homebrew 安装 (macOS 和 Linux)

brew tap gizmodata/tap brewinstallgizmosql

支持的平台:

  • macOS (Apple Silicon / ARM64)
  • Linux (x86-64 / AMD64)
  • Linux (ARM64)

然后运行服务器:

GIZMOSQL_PASSWORD="gizmosql_password"gizmosql_server --database-filename your.duckdb --print-queries

🧰 客户端和工具

🔗 JDBC

与 DBeaver 或其他 JDBC 客户端配合使用:

jdbc:arrow-flight-sql://localhost:31337?useEncryption=true&user=gizmosql_username&password=gizmosql_password&disableCertificateVerification=true

更多信息:设置指南


🐍 Python (ADBC)

importosfromadbc_driver_flightsqlimportdbapiasgizmosql,DatabaseOptionswithgizmosql.connect(uri="grpc+tls://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 证书则不需要此项},autocommit=True)asconn:withconn.cursor()ascur:cur.execute("SELECT n_nationkey, n_name FROM nation WHERE n_nationkey = ?",parameters=[24])x=cur.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 --query"SELECT 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_COMMANDSINIT_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-queryGIZMOSQL_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(约 3.74 美元/小时)上:

  • TPC-H SF 1000 基准测试:
    ⏱️ 161.4 秒
    💰 总计约 0.17 美元

🏁 速度制胜,性能低廉。


🔒 许可证

GizmoSQL Core(核心版)遵循 Apache License, Version 2.0 许可证。

企业版功能(位于src/enterprise/中)是专有的,需要获得 GizmoData LLC 的商业许可证。详情请参阅 src/enterprise/LICENSE。


📫 联系方式

有疑问或咨询需求?

📧 info@gizmodata.com
🌐 https://gizmodata.com


由 GizmoData™ 用 ❤️ 构建

http://www.jsqmd.com/news/318291/

相关文章:

  • 线段树优化建图
  • 智慧农业之花卉识别 花草病虫害目标检测 花卉品种识别 植物病虫害预警 花卉品类及病虫害的精准识别 植物病虫害识别 毛毛虫识别第10455期
  • 基于MATLAB r2021b小波散射网络的空气压缩机故障诊断研究
  • AP6256 WIFI模块的低功耗模式psm
  • Quora 多账号内容营销:如何避免被判定为“操纵舆论”?
  • 飞滴网约车项目Day01
  • 2026年女性/ 植发际线 / 美学 / 高颅顶 /鬓角 植发 技术好的植发机构推荐好评榜 美学设计/自然原生感/无尴尬期/全生命周期管理
  • Leetcode会员尊享100题:270.最接近的二叉树值
  • 大数据深度学习|计算机毕设项目|计算机毕设答辩|静脉输液液位检测系统
  • 告别题海战术:主管技师备考的数字化备考方案
  • 剪辑IP口播完整版本
  • 编程作为IT行业中不可或缺的职位
  • 研读主管技师备考攻略:高效掌握考试难点
  • 食品异物检测技术:X光机如何守护食品安全
  • Ollama 远程访问完整实战:One-API + 内网穿透 + Cloudflare Tunnel 全方案解析
  • 实用指南:Rust 动态分发(dyn Trait)详解
  • 生产计划和排产计划一混,ERP再怎么用管理也乱!
  • 2026年女性/ 植发际线 / 美学 / 高颅顶 /鬓角 植发 技术好的植发机构推荐排行榜 美学设计/自然原生感/无尴尬期/全生命周期管理
  • GEO优化:提升本地搜索可见度的关键技术解析
  • 蒙特卡洛模拟电动汽车的有序充放电策略及其在优化调度、微电网与综合能源、储能、新能源方向的基础入...
  • 供应链商城系统推荐|千匠网络表现突出,成传统产业首选服务商
  • 2026年女性植发/发际线植发/头顶稀疏/不剃发植发/恢复效果成功案例丰富多样的植发机构推荐榜 美学定制/无尴尬期/全周期养固
  • 2026年女性植发/发际线植发/头顶稀疏/不剃发植发/恢复效果成功案例丰富多样的植发机构推荐榜 美学定制/无尴尬期
  • 突破 select 的 1024 文件描述符限制?真相与实践
  • 完整教程:【Linux】理解其中的权限
  • 2026年女性植发/发际线植发/头顶稀疏/不剃发植发/恢复效果成功案例丰富多样的植发机构推荐榜 美学设计/不剃发植发/养固体系
  • 解码罗克韦尔Modbus-RTU通讯程序:实现高效工业控制
  • 广州靠谱律师事务所怎么选?2026年专业解析与适配建议
  • 决策树算法在疾病诊断中的应用
  • Quora多账号内容营销:如何避免被判定为“操纵舆论”?