跳到主要内容

38 篇博文 含有标签「pawsql」

查看所有标签

PawSQL for TDSQL:金融级分布式数据库性能优化全攻略

· 阅读需 11 分钟
PawSQL Team
Optimize your SQL Queries by Clicks!

在金融行业的数字化转型浪潮中,分布式数据库凭借其高扩展性、高可用性和高性能等优势,成为金融机构构建核心业务系统的首选。TDSQL 作为腾讯云推出的分布式数据库,广泛应用于金融、互联网、政务等领域。然而,随着业务的不断增长和数据量的爆炸式增长,如何优化 TDSQL 数据库的性能,成为众多企业和开发者面临的挑战。本文将介绍 PawSQL 为 TDSQL 数据库提供的专项优化指南,助力用户充分发挥 TDSQL 数据库的性能潜力。

一、TDSQL 数据库性能优化的重要性​

TDSQL 数据库在金融级应用中,面临着高并发、大数据量、高可靠性等严峻挑战。性能优化不仅关乎业务响应速度和用户体验,更直接影响到金融机构的运营效率和风险控制能力。通过优化 TDSQL 数据库,可以实现以下目标:

  • 提升业务响应速度 :减少查询延迟,提高交易处理速度,为用户提供更流畅的服务体验。
  • 降低运营成本 :优化资源利用率,减少硬件投入和运维成本,提高企业的经济效益。
  • 增强系统稳定性 :通过合理的优化策略,提高数据库的稳定性和可靠性,降低系统故障风险。

二、PawSQL for TDSQL 的专项优化能力​

1.TDSQL 深度 SQL 语法支持​

PawSQL 为 TDSQL 数据库提供了深度的 SQL 语法支持,帮助用户更好地利用 TDSQL 的特性进行性能优化。

  • 完整支持 MySQL 语法体系 :TDSQL 基于 MySQL 开发,PawSQL 完整支持 MySQL 语法体系,确保用户在使用 PawSQL 进行 SQL 优化时,能够无缝兼容 TDSQL 的语法要求。
  • 完整解析 TDSQL 特有 DDL 语法 :TDSQL 具有一些特有的 DDL 语法,如分布式表的创建、分区表的定义等。PawSQL 能够完整解析这些特有语法,为用户提供准确的 SQL 优化建议。
-- hash分片或广播表
CREATE TABLE [IF NOT EXISTS] tbl_name
[(create_definition)]
[local_table_options]
shardkey=column_name|noshardkey_allset

-- range或list分片
CREATE TABLE [IF NOT EXISTS] tbl_name
[(create_definition)]
[local_table_options]
TDSQL_DISTRIBUTED BY range|list (column_name) [partition_options]

2.优化规则体系升级​

PawSQL 针对 TDSQL 数据库的分布式特性,新增了多项优化规则,帮助用户避免常见的性能问题。

  • 分布式 SQL 设计规范 :
    • 避免表关联字段不是分布键 :在分布式数据库中,表关联字段如果不是分布键,会导致数据跨节点传输,增加网络开销。PawSQL 提醒用户在设计表关联时,尽量使用分布键作为关联字段。
    • 分布式数据库 DML 应避免表关联 :在分布式环境下,DML 操作涉及表关联时,可能会导致复杂的分布式事务处理,影响性能。PawSQL 建议用户尽量避免在 DML 操作中进行表关联。
    • 分布式数据库 DML 缺少分片字段的等值条件 :在分布式数据库中,DML 操作缺少分片字段的等值条件,会导致全表扫描,严重影响性能。PawSQL 提醒用户在 DML 操作中,务必包含分片字段的等值条件。
  • 分布键设计规范 :
    • 分布键不建议使用多个字段 :使用多个字段作为分布键,可能会导致数据分布不均匀,增加查询复杂度。PawSQL 建议用户尽量使用单个字段作为分布键。
    • 分布键应使用区分度大的字段 :分布键的区分度越大,数据分布越均匀,查询性能越好。PawSQL 提醒用户选择区分度大的字段作为分布键。
  • 分布策略设计规范 :
    • 大表不建议使用复制分布 :大表使用复制分布,会导致数据存储冗余,增加存储成本和网络开销。PawSQL 建议用户对大表使用 hash 分布或 range 分布。
    • 分布方式建议使用 hash 分布 :hash 分布能够实现数据的均匀分布,提高查询性能。PawSQL 建议用户优先选择 hash 分布方式。
    • 避免使用非分布表 :非分布表在分布式数据库中可能会导致数据集中存储,影响系统的扩展性和性能。PawSQL 提醒用户尽量避免使用非分布表。

三、SQL 优化全生命周期矩阵​

1.开发测试阶段:智能 SQL 优化​

在开发测试阶段,PawSQL 为应用开发人员和测试人员提供了一站式的在线 SQL 优化工具。

  • 查询重写优化 :PawSQL 能够自动对 SQL 查询进行重写优化,如将复杂的子查询转换为更高效的连接查询,优化查询条件的顺序等,帮助用户提高查询性能。
  • 智能索引推荐 :PawSQL 根据 SQL 查询的特点和数据分布情况,为用户提供智能的索引推荐。通过创建合适的索引,可以显著提高查询速度,减少数据扫描量。

PawSQL 优化平台已经完成了和常用 IDE 的集成(VSCode 及 Jetbrains),开发人员无需离开开发环境即可进行 SQL 优化,提高工作效率。

plugin

2.代码集成阶段:完备的 SQL 审核​

在代码集成阶段,PawSQL 审核平台凭借其领先的核心技术,为 SQL 质量管理团队提供全面且精准的智能 SQL 审核能力。

  • 自研 SQL 解析器 :PawSQL 的自研 SQL 解析器能够准确解析各种复杂的 SQL 语句,为后续的规则匹配和优化建议提供准确的语法信息。
  • 基于语法树的规则匹配 :PawSQL 通过构建 SQL 语法树,对 SQL 语句进行深度分析,匹配各种优化规则,确保审核结果的准确性。
  • 上下文信息更新 :PawSQL 能够根据 SQL 语句的上下文信息,动态更新审核结果,提供更贴合实际的优化建议。

PawSQL 从语法规范、性能效率、安全性等多个维度进行全面检查,并提供针对性的优化建议,助力企业提升 SQL 性能和应用程序效率。针对 TDSQL 数据库的分布式特性,PawSQL 提供专门的分布式查询优化建议,其适用规则数据超过了 190 个。

3.运维阶段:性能巡检平台​

在运维阶段,PawSQL 数据库性能巡检平台能够自动定期抓取数据库中产生的慢查询,并提供 SQL 优化建议。

  • 慢查询巡检 :PawSQL 能够自动捕获数据库中的慢查询语句,分析其执行计划和性能瓶颈,为用户提供详细的优化建议。通过优化慢查询,可以显著提高数据库的整体性能。
  • 数据库对象巡检 :PawSQL 还能够自动定期对数据库中的对象进行巡检,识别可能的性能、安全性、可维护性等问题隐患,并提供优化建议。例如,检查索引的使用情况、表的空间利用率等,帮助用户及时发现和解决潜在问题。

PawSQL 支持 TDSQL 数据库的慢查询巡检及数据库对象巡检,为运维人员提供全方位的性能监控和优化支持。

四、总结​

PawSQL for TDSQL 数据库为用户提供了一站式的性能优化解决方案。从开发测试阶段的智能 SQL 优化,到代码集成阶段的完备 SQL 审核,再到运维阶段的性能巡检平台,PawSQL 贯穿了数据库性能优化的整个生命周期。通过使用 PawSQL,用户可以充分发挥 TDSQL 数据库的性能潜力,提升业务响应速度,降低运营成本,增强系统稳定性。

在金融级分布式数据库的应用中,性能优化是一项长期而艰巨的任务。PawSQL 将持续关注 TDSQL 数据库的发展和用户需求,不断优化和完善优化规则体系,为用户提供更优质、更高效的性能优化服务。立即体验 PawSQL,释放 TDSQL 数据库的性能潜力,为您的业务发展保驾护航!

立刻体验:https://www.pawsql.com/app

下载破万!PawSQL Advisor:国产SQL优化工具如何在困境中逆势突围?

· 阅读需 7 分钟
PawSQL Team
Optimize your SQL Queries by Clicks!

PawSQL Advisor作为一款国产收费SQL优化工具,近期在Jetbrains应用市场的下载量突破10000次。然而,这一成绩的背后,是国产工具在技术、市场、用户习惯等多重挑战下的艰难突围。本文将分享其面临的困境与破局之道,展现一款本土化技术产品的成长韧性。


一、国产工具的困境:付费意愿、信任壁垒与生态压力​

  1. 国内个人用户付费意愿低
    相较于海外开发者习惯订阅付费模式,国内个人用户更倾向于免费工具,付费意愿普遍较低。PawSQL Advisor虽提供免费SaaS版(PawSQL Cloud),但Jetbrains插件需付费使用,这直接限制了个人用户的转化率。国内市场的付费习惯迫使其必须依赖企业级私域部署作为主要收入来源。

  2. 技术信任与用户教育难题
    作为新兴工具,用户对自动化优化建议的准确性存在疑虑。例如,性能验证需连接真实数据库,可能引发生产环境资源占用的担忧;复杂的索引推荐逻辑也需要用户具备一定数据库知识才能理解。如何让开发者信任工具的“黑箱”优化能力,成为初期推广的核心障碍。

  3. 生态适配与国产化兼容挑战
    面对国产数据库(如达梦、金仓)的复杂技术生态,PawSQL需投入大量资源适配不同方言的SQL解析器,并确保优化规则兼容性。此外,国内企业对“自主可控”的严格要求,也增加了产品认证与合规成本。


二、破局之道:技术差异化、场景深耕与生态整合​

尽管困难重重,PawSQL Advisor仍以**“技术+场景”双轮驱动**实现逆势增长:

  1. 技术闭环构建差异化优势
    相比EverSQL等竞品,PawSQL Advisor不仅提供索引推荐,还整合了性能验证与执行计划可视化功能,解决“优化建议是否有效”的信任问题。其内置190余条优化规则,覆盖HAVING条件下推、窗口函数优化等复杂场景,附加智能索引推荐功能,形成强大的技术护城河。

  2. 分层策略覆盖全用户场景

    • 个人用户:通过免费SaaS版降低使用门槛,引导体验后再转化付费插件用户;
    • 企业用户:提供私域部署的PawSQL Engine,支持与CI/CD流程集成,满足金融、电信等对数据安全要求高的行业需求;
    • 国产化适配:深度支持达梦、金仓等国产数据库,成为信创领域少有的性能优化解决方案。
  3. 生态融合提升开发者粘性
    作为Jetbrains插件,PawSQL Advisor无缝嵌入IDEA、DataGrip等主流工具,支持右键一键优化选中SQL或批量处理文件。此外,VSCode插件扩展了用户群体,形成跨平台覆盖。这种“工具即工作流”的设计,大幅降低了用户学习成本。


三、用户认可:真实场景中的效率革命​

用户的主动选择,是对产品价值的最佳验证:

  • 金融行业案例:某银行通过PawSQL优化OceanBase数据库,将分钟级复杂查询压缩至秒级响应,减少30%的硬件资源占用;
  • 开发者社区反馈:自动化规则(如避免SELECT *、隐式类型转换优化)帮助团队减少50%的代码审查工作量;
  • 技术口碑积累:在知乎SQL优化挑战赛中,其自动优化能力甚至超越人工专家,性能提升效果引发技术圈热议。

四、未来挑战:持续创新与生态扩张​

  1. AI技术融合的探索
    团队正尝试将大语言模型(如DeepSeek)融入SQL解析与优化建议生成,以应对更复杂的查询场景。但如何平衡AI的“创造性”与优化规则的“确定性”,仍需技术突破。

  2. 国产化生态的深度绑定
    随着信创政策的推进,PawSQL需进一步适配更多国产数据库,并争取进入政府、央企采购名录。这要求产品在兼容性、安全性上达到更高标准。

  3. 全球化市场的试探
    尽管以国内市场为主,但Jetbrains插件的海外下载量占比超30%,团队计划推出多语言版本,探索东南亚、欧洲等新兴市场,以分散单一市场风险。


结语
PawSQL Advisor的10000次下载,不仅是数据的突破,更是国产工具在技术自信与市场策略上的双重胜利。它证明:即便面对付费习惯、生态壁垒等“先天劣势”,通过精准定位、技术深耕与生态融合,本土产品依然能在细分领域占据一席之地。未来,随着AI与国产化浪潮的推进,PawSQL或将成为中国技术出海的又一标杆。

立即体验:访问Jetbrains Marketplace安装插件,或前往官网获取企业级解决方案。

PawSQL增强版:SQL Server语法解析器全面升级

· 阅读需 9 分钟
PawSQL Team
Optimize your SQL Queries by Clicks!

PawSQL最新版本现已全面支持SQL Server特有语法,为数据库开发人员和管理员提供更智能、更高效的SQL优化体验。本文将详细介绍SQL Server与MySQL之间的主要语法差异,以及PawSQL如何通过增强解析能力解决这些差异带来的挑战。

SQL Server与MySQL语法差异概览​

特性SQL ServerMySQLPawSQL支持
1. 标识符引用使用[]方括号使用`反引号✓ 智能识别
2. 语句分隔符使用GO或;使用分号;✓ 智能识别
3. 临时表使用#(会话级)和##(全局级)使用TEMPORARY TABLE✓ 智能识别
4. 自增字段IDENTITY(seed, increment)AUTO_INCREMENT✓ 智能识别
5. 大文本VARCHAR(MAX)/NVARCHAR(MAX)TEXT/LONGTEXT✓ 智能识别
6. 布尔值BITBOOLEAN/TINYINT(1)✓ 智能识别
7. 表连接扩展支持CROSS/OUTER APPLYLateral Join (8.0+)✓ 智能识别
8.TOP 和 LIMITTOPLIMIT✓ 智能识别
9. 分页查询OFFSET-FETCH或ROW_NUMBER()LIMIT offset, count✓ 智能识别
10. 多表更新UPDATE与FROM子句直接UPDATE多表连接✓ 智能识别
11. Query HintsOPTION (RECOMPILE)注释✓ 智能识别
12. 锁定语法表提示WITH (LOCK)FOR UPDATE子句✓ 智能识别
13. 执行计划获取SET SHOWPLAN_XML ONEXPLAIN✓ 智能识别

标识符引用与语句分割符​

1. 标识符引用​

在 SQL Server 中,标识符(如表名、列名)通常使用方括号 [] 来引用,尤其是在标识符包含空格或特殊字符时。例如:

SELECT [User ID], [First Name] FROM [Users];

而在 MySQL 中,标识符通常用反引号 ` 来引用:

SELECT `User ID`, `First Name` FROM `Users`;

PawSQL 的解析器能够智能识别 SQL Server 和 MySQL 中的标识符引用方式,确保在解析时不会出现误解。

2. 语句分隔符​

此外,SQL Server 特有的 GO 关键字,用于分隔批处理命令,同时也可以分割多个SQL语句。例如:

CREATE TABLE TestTable (ID INT)
GO
INSERT INTO TestTable VALUES (1);

在 MySQL 中并没有类似的关键字,所有 SQL 语句通过分号 ; 结束:

CREATE TABLE TestTable (ID INT);
INSERT INTO TestTable VALUES (1);

PawSQL 的解析器也能准确识别并处理 SQL Server 的 GO 关键字,确保批处理语句的正确执行。

对象定义 ( DDL )​

3. 临时表语法​

SQL Server 支持局部临时表和全局临时表,分别使用 # 和 ## 前缀。例如:

CREATE TABLE #TempTable (ID INT);
CREATE TABLE ##GlobalTempTable (ID INT);

而在 MySQL 中,临时表是通过 CREATE TEMPORARY TABLE 来创建的:

CREATE TEMPORARY TABLE TempTable (ID INT);

PawSQL 的解析器能准确处理 SQL Server 和 MySQL 的临时表定义,确保在执行时不会出错。

4. 自增字段​

SQL Server 中,自增字段使用 IDENTITY 关键字定义:

CREATE TABLE Users (ID INT IDENTITY(1,1), Name NVARCHAR(50));

而 MySQL 使用 AUTO_INCREMENT 来定义自增字段:

CREATE TABLE Users (ID INT AUTO_INCREMENT, Name VARCHAR(50));

PawSQL 的解析器能够轻松识别两者的差异,并正确解析 SQL Server 的 IDENTITY 关键字。

5. 大文本字段​

SQL Server 使用 NVARCHAR(MAX) 或 VARCHAR(MAX) 来存储大文本数据:

CREATE TABLE Articles (ID INT, Content NVARCHAR(MAX));

MySQL 则使用 TEXT 或 LONGTEXT 来存储大文本:

CREATE TABLE Articles (ID INT, Content LONGTEXT);

PawSQL 的解析器支持 SQL Server 的大文本字段类型,并能够正确处理类似数据。

6. 布尔类型​

SQL Server 使用 BIT 类型表示布尔值:

CREATE TABLE Logs (ID INT, IsSuccess BIT, Timestamp DATETIME);

MySQL 使用 TINYINT(1) 来表示布尔值:

CREATE TABLE Logs (ID INT, IsSuccess TINYINT(1), Timestamp TIMESTAMP);

PawSQL 解析器能够准确处理 SQL Server 和 MySQL 中布尔值的差异。

查询与数据操作​

7. 分页查询​

SQL Server 使用 OFFSET 和 FETCH NEXT 来实现分页查询:

SELECT * FROM Users ORDER BY ID OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY;

而 MySQL 使用 LIMIT 和 OFFSET 来实现分页:

SELECT * FROM Users ORDER BY ID LIMIT 10 OFFSET 10;

PawSQL 能够准确解析两种分页查询语法,保证分页查询的顺利执行。

8. TOP 和 LIMIT​

SQL Server 使用 TOP 关键字来限制查询结果的行数:

SELECT TOP 10 * FROM Users ORDER BY ID;

MySQL 则使用 LIMIT 来实现这一功能:

SELECT * FROM Users ORDER BY ID LIMIT 10;

PawSQL 解析器能够正确识别并处理这两种语法,确保查询的准确执行。

9. 多表更新​

SQL Server 支持使用 UPDATE 语句与 JOIN 联合更新多个表:

UPDATE Users
SET Users.Name = Departments.DepartmentName
FROM Users
INNER JOIN Departments ON Users.DepartmentID = Departments.ID;

MySQL 同样支持 JOIN 更新,但语法略有不同:

UPDATE Users
INNER JOIN Departments ON Users.DepartmentID = Departments.ID
SET Users.Name = Departments.DepartmentName;

PawSQL 的解析器能够识别两者的差异,确保多表更新语句的正确执行。

10. CROSS APPLY 和 OUTER APPLY​

SQL Server 支持 CROSS APPLY 和 OUTER APPLY,可以用于动态关联表值函数或子查询:

SELECT u.ID, o.OrderID
FROM Users u
OUTER APPLY (SELECT TOP 1 * FROM Orders WHERE UserID = u.ID) o;

MySQL 并不支持 APPLY,可以通过子查询或 JOIN 来实现类似的功能:

SELECT u.ID, o.OrderID
FROM Users u
LEFT JOIN (SELECT * FROM Orders WHERE UserID = u.ID LIMIT 1) o ON TRUE;

PawSQL 能够识别 SQL Server 中的 CROSS APPLY 和 OUTER APPLY,并正确解析。

11. 查询提示(Query Hints)​

SQL Server 使用 OPTION 子句添加查询提示:

sql复制

SELECT * FROM Users WITH (NOLOCK) OPTION (RECOMPILE);

MySQL 使用 /*+ ... */ 语法:

sql复制

SELECT /*+ MAX_EXECUTION_TIME(1000) */ * FROM Users;

PawSQL 的解析器能够识别 SQL Server 的查询提示语法,并在解析过程中正确处理。

锁和事务​

12. 锁语法​

SQL Server 使用 WITH (ROWLOCK) 来指定行级锁:

SELECT * FROM Users WITH (ROWLOCK);

MySQL 使用 FOR UPDATE 来实现锁定:

SELECT * FROM Users FOR UPDATE;

PawSQL 解析器支持 SQL Server 的锁语法,并确保解析无误。

13. 执行计划获取​

SQL Server 使用 SET SHOWPLAN_XML ON 或 EXPLAIN 来获取执行计划:

SET SHOWPLAN_XML ON;
SELECT * FROM Users;

MySQL 使用 EXPLAIN:

EXPLAIN SELECT * FROM Users;

PawSQL 能够识别 SQL Server 的执行计划获取语法,确保用户能够正确分析查询性能。

6. 总结​

PawSQL 的 SQL 解析器通过全面支持 SQL Server 特有的语法,帮助开发人员轻松跨平台工作。无论是在标识符引用、批处理命令、临时表定义,还是在自增字段、分页查询、大文本字段等方面,PawSQL 都能保证 SQL 语句的准确解析与高效执行。通过增强的解析能力,PawSQL 让 SQL 开发与优化变得更加智能和简便,极大提升了开发人员的工作效率。

PawSQL for SQL Server, 完整的 SQL优化 解决方案

· 阅读需 4 分钟
PawSQL Team
Optimize your SQL Queries by Clicks!

0. 概述​

在PawSQL的最新版本中,PawSQL 为 SQL Server 数据库提供了全方位的SQL优化、SQL审核、性能巡检支持,覆盖SQL开发、测试、运维的整个生命周期,助力用户充分发挥 SQL Server 数据库的性能潜力。

1. 纳管SQL Server数据库​

工作空间是SQL优化的工作环境,PawSQL支持两种方式为SQL Server 创建SQL优化任务的工作空间:

  • 离线 - DDL解析:通过解析数据库的DDL文件,构建工作空间。
  • 在线 - 元数据获取:直接从SQL Server 数据库中获取元数据,快速建立工作空间。

2. 完备的SQL审查规则集​

PawSQL凭借其领先的核心技术:自研SQL解析器、基于语法树的规则匹配和上下文信息更新,为SQL质量管理团队提供全面且精准的智能SQL审核能力。它从语法规范、性能效率、安全性等多个维度进行全面检查,并提供针对性的优化建议,助力企业提升SQL性能和应用程序效率。

3. 丰富的查询重写优化​

PawSQL提供基于启发式规则和基于代价的SQL重写优化算法,为SQL Server 推荐语义上等价但性能更优的SQL。同时,提供重写前后的SQL文本对比,并高亮显示重写部分。

4. 智能索引推荐​

PawSQL的智能索引推荐引擎为 SQL Server 上的应用查询提供最优索引策略,以适应各种SQL语法需求,显著提升查询效率。

5. 执行计划可视化(PPV)​

PawSQL的执行计划可视化工具(PawSQL Plan Visualizer)支持对 SQL Server 的执行计划进行图示化展示和分析,帮助用户轻松理解查询的执行过程,快速定位性能瓶颈。

6. 性能验证​

PawSQL自动采集SQL优化前后的 SQL Server 数据库的执行计划,获取优化前后的执行代价,确保推荐的优化建议能够真实提升数据库性能。

7. 慢查询自动采集和管理​

PawSQL性能巡检平台支持对 SQL Server 的慢查询进行采集和管理,支持基于crontab的定时采集和手工采集。

8. 数据库对象巡检​

PawSQL性能巡检平台支持对KingbaseES V8的数据库对象进行定时或手动巡检,覆盖表、列、字符集、索引、约束等各种数据库对象,以识别潜在的安全、性能等潜在问题,并给出警示。

9. IDE 集成​

PawSQL 优化平台已经完成了和常用 IDE 的集成(VSCode 及 Jetbrains),开发人员无需离开开发环境即可进行 SQL 优化,提高工作效率。

plugin

🌟 总结​

PawSQL for SQL Server,SQL Server 数据库的全方位SQL优化解决方案,无论是日常查询还是复杂数据处理,PawSQL都以专业、高效的解决方案,助力您的数据库性能提升。

PawSQL for OceanBase数据库:全面的性能优化解决方案

· 阅读需 6 分钟
PawSQL Team
Optimize your SQL Queries by Clicks!

OceanBase数据库作为国产自主可控的分布式数据库,凭借其高可用性、强一致性和高性能等特点,在金融、电商、政务等领域得到广泛应用。随着业务规模的扩大和数据量的激增,优化OceanBase数据库的查询性能变得愈发重要。PawSQL为OceanBase数据库提供了全方位的性能优化支持,助力用户充分发挥OceanBase数据库的性能潜力。

一、优化核心技术​

PawSQL针对Oceanbase数据库,推出两大专项能力:

1. Oceanbase深度SQL语法支持

  • 双模式兼容:完整支持MySQL/Oracle语法体系

  • 完整解析OceanBase特有DDL语法:

    CREATE TABLE nation_d (
    n_nationkey INTEGER NOT NULL PRIMARY KEY,
    n_name CHAR(25) NOT NULL,
    n_regionkey INTEGER NOT NULL,
    n_comment VARCHAR(152)
    ) duplicate_scope = cluster/none;

    CREATE TABLE part (
    p_partkey int NOT NULL PRIMARY KEY,
    p_name VARCHAR(55) NOT NULL,
    p_mfgr CHAR(25) NOT NULL,
    p_brand CHAR(10) NOT NULL,
    p_type VARCHAR(25) NOT NULL,
    p_size NUMBER NOT NULL,
    p_container CHAR(10) NOT NULL,
    p_retailprice NUMBER(15,2) NOT NULL,
    p_comment VARCHAR(23)
    ) PARTITION BY HASH(p_partkey) PARTITIONS 16;

2. 规则体系升级

  • 新增三项分布式设计规范:

    • 避免表关联字段不是分布键
    • 分布式数据库的DML应避免表关联
    • 分布式数据库中DML操作没有分片字段的等值条件
  • 新增三项分布键设计规范

    • 分布式数据库不建议创建本地表
    • 分布键不建议使用多个字段
    • 分布键应使用区分度大的字段

    新增两项分布策略设计规范

    • 大表不建议使用复制(Replicated)分布
    • 分布方式建议使用hash分布

二、SQL全生命周期产品矩阵​

2.1 开发测试阶段:智能SQL优化​

PawSQL优化平台是一个面向应用开发和测试人员的一站式在线SQL优化工具,整合了业界关于关系数据库查询优化的最佳实践,通过查询重写优化、智能索引推荐,帮助应用开发人员及数据库管理人员一站式解决SQL性能问题。PawSQL优化平台已经完成了和常用IDE的集成,让开发人员不用离开开发环境即可进行SQL优化。

PawSQL优化平台是一款面向开发者和DBA的在线SQL优化工具,集成了业界领先的查询优化技术,包括:

  • 智能查询重写:自动优化低效SQL语句
  • 索引推荐引擎:精准推荐最优索引组合
  • 分布式优化策略:针对OceanBase的分布式特性,提供专属优化建议

2.2 代码集成阶段:智能SQL审核​

PawSQL审核平台凭借其领先的核心技术,如自研SQL解析器、基于语法树的规则匹配和上下文信息更新,为SQL质量管理团队提供全面且精准(正确率超过95%)的智能SQL审核能力。它从语法规范、性能效率、安全性等多个维度进行全面检查,并提供针对性的优化建议,助力企业提升SQL性能和应用程序效率。

针对OceanBase数据库的分布式特性,PawSQL提供专门的分布式查询优化建议,其适用规则数据超过了190个。

审核规则数

2.3 运维阶段:性能巡检平台​

PawSQL数据库性能巡检平台自动定期抓取数据库中产生的慢查询,并提供SQL优化建议,包括自动SQL重写、智能索引推荐、现有冗余索引分析等;自动定期对数据库中的对象进行巡检,识别可能的性能、安全性、可维护性等问题隐患,并提供优化建议。

oceanbase 巡检

三. 总结​

PawSQL for OceanBase数据库为您提供一站式的性能优化解决方案。从日常查询优化到复杂的分布式场景处理,PawSQL都能助您轻松应对。🚀 立即体验PawSQL,释放OceanBase数据库的性能潜力!