XSQL 开源项目教程
项目介绍
XSQL 是一款低门槛、更稳定的跨数据源查询引擎。它提供了使用标准 SQL 读写 NoSQL 数据库的解决方案,能够大幅降低学习曲线,节省人力成本。XSQL 通过对 SQL 的优化以及一系列监控插件,为用户任务的稳定运行保驾护航。通过 XSQL,用户可以避免数据迁移和时间浪费,更加专注于业务本身。
项目快速启动
编译环境依赖
- JDK 1.8+
编译步骤
-
源码下载
git clone https://github.com/Qihoo360/XSQL.git -
执行编译命令
cd XSQL ./build-plugin.sh -
编译成功后,源码根目录将出现
xsql-0.6.0-plugin-spark-2.4.3.tgz。
启动 XSQL
-
解压编译后的文件
tar -zxvf xsql-0.6.0-plugin-spark-2.4.3.tgz -
启动 XSQL CLI
./bin/xsql-cli
应用案例和最佳实践
案例一:跨数据源查询
小张是新来数据部门的社招生,有五年的数据开发经验。由于当前产品有从海量数据中按照关键字进行搜索的需求,因此部门决定使用 Elasticsearch。小张在 Elasticsearch 面前完全是一个小白。通过 XSQL,小张可以直接使用 SQL 语句对 Elasticsearch 中的数据进行检索和加工。
案例二:数据关联查询
A 部门的业务数据大多都维护在一些 MySQL 表中,其中有一张 customer 表用来记录用户的基本信息。同时,一些博客文档的数据却存储在 MongoDB 的 blogs 集合中。部门产品新增的需求是,在用户的“个人中心”展示用户的博客列表。通过 XSQL,工程师可以直接将 customer 表和 blogs 集合进行关联查询。
最佳实践
- 统一视图:XSQL 采用数据源(DataSource)、数据库(Database)、数据表(Table)的三层元信息,为异构数据源提供了统一视图。
- SQL Everything:将程序与数据源具体版本解耦,程序迁移能力得到加强。
- 下推优化:允许用户将聚合、过滤、投影等操作下推至数据源计算引擎,实现毫秒级响应。
典型生态项目
Spark
XSQL 作为 Spark 插件,与 Spark 生态紧密结合。用户可以在 Spark 环境中直接使用 XSQL 进行跨数据源查询,无需额外配置。
Elasticsearch
XSQL 支持 Elasticsearch 作为数据源,用户可以直接使用 SQL 语句对 Elasticsearch 中的数据进行查询和分析。
MongoDB
XSQL 支持 MongoDB 作为数据源,用户可以轻松实现对 MongoDB 数据的 SQL 查询,简化数据处理流程。
MySQL
XSQL 支持 MySQL 作为数据源,用户可以在不改变原有 SQL 语句的情况下,实现对 MySQL 数据的查询和分析。
通过以上模块的介绍,用户可以快速了解和上手 XSQL 开源项目,实现跨数据源的查询和数据处理。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C0105
baihu-dataset异构数据集“白虎”正式开源——首批开放10w+条真实机器人动作数据,构建具身智能标准化训练基座。00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python059
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7GLM-4.7上线并开源。新版本面向Coding场景强化了编码能力、长程任务规划与工具协同,并在多项主流公开基准测试中取得开源模型中的领先表现。 目前,GLM-4.7已通过BigModel.cn提供API,并在z.ai全栈开发模式中上线Skills模块,支持多模态任务的统一规划与协作。Jinja00
AgentCPM-Explore没有万亿参数的算力堆砌,没有百万级数据的暴力灌入,清华大学自然语言处理实验室、中国人民大学、面壁智能与 OpenBMB 开源社区联合研发的 AgentCPM-Explore 智能体模型基于仅 4B 参数的模型,在深度探索类任务上取得同尺寸模型 SOTA、越级赶上甚至超越 8B 级 SOTA 模型、比肩部分 30B 级以上和闭源大模型的效果,真正让大模型的长程任务处理能力有望部署于端侧。Jinja00