C++20 镶 SQL
C++20 ❤ SQL John R Bandela, MDOverview u SQL u C++ Example u Implementation techniques u fixed_string u meta_struct u Parsing compile time strings into meta_structsOverview v SQL v C++ Example {price_from_user};Avoiding SQL Injection Attacks SELECT orders.id, name, item, price, discount_code FROM orders JOIN customers ON customers.id = customerid WHERE price > ?;SQL Library Options u Traditional Lots of information available u Vulnerable to sql injection of developer not careful u Use dynamic typingDomain Specific Language u Use types to encode SQL u Looks more like regular C++ u Typically requires0 码力 | 46 页 | 775.02 KB | 5 月前3PromQL Got a BOOST: 用 Rust 重写 Prometheus 的查询引擎
第三届中国 Rust 开发者大会 PromQL Got a BOOST: 用 Rust 重写 Prometheus 的查询引擎 Ruihang Xia @greptime.com Ruihang GitHub: waynexia Losing hair at Greptime Wanna sleep 10 hrs/day Learn JS every year Healing distributed) SQL and table model WHY REWRITE Target to be the most powerful drop-in replacement PromQL has a good UX for time-series data And it can be better if combine with SQL RIIR, super cooooooool larger dataset ? more computation resources SQL is extended introducing the new concept we have just made ? SQL WHAT ARE BOOSTED SQL T(elemetry)QL PromQL is extended ? multi-field0 码力 | 39 页 | 6.95 MB | 1 年前3⽤ egg 孵化你的 SQL 优化器 - 王润基
第三届中国Rust开发者⼤会 ⽤ egg 孵化你的 SQL 优化器 王润基 RisingWave 内核开发⼯程师 ? Parser Binder Optimizer Executor SQL AST Logical Plan Physical Plan Table Catalog Storage RisingLight 查询引擎的整体结构 SELECT name, url url FROM t1 JOIN t2 WHERE t1.id = t2.id AND name = ‘Bob’ SQL Logical Plan Physical Plan Projection name, url Filter t1.id = t2.id name = “Bob” Join Scan t1(id, name) Scan t2(id, url) Filter Filter #1 = “Bob” Hash Join #0 = #2 Scan $1.1, $1.2 Scan $2.1, $2.2 Projection #1, #3 ⼀个 SQL 语句优化的例⼦ 基于规则的优化 (RBO) 基于代价的优化 (CBO) 谓词下推 Join Filter A B Join Filter A B Filter Join A Join0 码力 | 39 页 | 6.48 MB | 1 年前3ThinkJS 3.0 中文文档
true|options , options 参见 https://github.com/chriso/validator.js 。 order 需要为数据库查询 order,如:name DESC, order: true 。 field 需要为数据库查询的字段,如:name,title, field: true 。 image 上传的文件需要为图片, image: true 。 startWith mysql Mysql数据库方式 file 文件方式 redis Redis方式 Mysql session 使用 mysql 类型的 Session 需要创建对应的数据表,可以用下面的 SQL 语句创建 DROP TABLE IF EXISTS `think_session`; CREATE TABLE `think_session` ( `id` int(11) unsigned 模型中支持链式调用的方法有: where , 用于查询或者更新条件的定义 table , 用于定义要操作的数据表名称 alias , 用于给当前数据表定义别名 data , 用于新增或者更新数据之前的数据对象赋值 field , 用于定义要查询的字段,也支持字段排除 order , 用于对结果进行排序 limit , 用于限制查询结果数据 page , 用于查询分页,生成 sql 语句时会自动转换为 limit0 码力 | 129 页 | 2.12 MB | 1 年前3ThinkJS 2.2 中文文档
return this.success(); } } 上面的代码我们使用了 ES6 里的 class , export , let 以及 ES7 里的 async/await 等特性,虽然 查询数据库和写入 Session 都是异步操作,但借助 async/await ,代码都是同步书写的。最后 使用 Babel 进行编译,就可以稳定运行在 Node.js 的环境中了。 支持 TypeScript 项目需要进行扩展。 支持丰富的数据库 ThinkJS 支持 mysql , mongodb , sqlite 等常见的数据库,并且封装了很多操作数据库的接口, 无需手动拼接 SQL 语句,还可以自动防止 SQL 注入等安全漏洞。同时支持事务、关联模型等高级 功能。 代码自动更新 ThinkJS 内置了一套代码自动更新的机制,文件修改后立即生效,不用重启 Node.js 服务,也不用 借助第三方模块。 of full and half-width c hars', validate_order: '{name} need a valid sql order string', validate_field: '{name} need a valid sql field string', validate_image: '{name} need a valid image file', validate_startWith:0 码力 | 277 页 | 3.61 MB | 1 年前3ThinkJS 1.2 中文文档
value) 获取或者设置 header action(name, data) 调⽤用其他 Controller 的⽅方法,可以跨分组 Action ⾥里⼀一般会从多个地⽅方拉取数据,如:从数据库中查询数据,这些接⼝口⼀一般都是异步的,并且包装成了 Promise。 我们知道,Promise 会通过 try{}catch(e){} 来捕获异常,然后传递到 catch ⾥里。如: 如果不加 c 赋值给变量供内部使⽤用。 在使⽤用 ThinkJS 开发项⺫⽬目中,推荐使⽤用 self 作为这个变量名。如: 在 ThinkJS 中基础的模型类就是 Model 类,该类完成了基本的增删改查、连贯操作和统计查询,同时还有 thenadd, countSelect 等功能,更⾼高级的功能封装在另外的模型扩展中。 模型并⾮非必须定义,只有当存在独⽴立的业务逻辑或者属性的时候才需要定义 模型类通常都需要继承系统的 来实现的。 使⽤用⾮非常简单,如:要查询⽤用户表中 name 为 welefen 的部分⽤用户信息,可以⽤用下⾯面的⽅方式: 注意: 由于数据库操作都是异步的,执⾏行 find() ⽅方法后,并不能返回结果,⽽而是返回⼀一个 promise,在 promise.then ⽅方法⾥里可以拿到对应的数据。 系统⽀支持的链式调⽤用有: where , ⽤用于查询或者更新条件的定义 table0 码力 | 104 页 | 1.29 MB | 1 年前3Go Web编程
4.表单 4.1 处理表单的输入 4.2 验证表单的输入 4.3 预防跨站脚本 4.4 防止多次递交表单 4.5 处理文件上传 4.6 小结 5.访问数据库 5.1 database/sql接口 5.2 使用MySQL数据库 5.3 使用SQLite数据库 5.4 使用PostgreSQL数据库 5.5 使用beedb库进行ORM开发 5.6 NOSQL数据库操作 5.7 小结 6.session和数据存储 Socket编程 8.2 WebSocket 8.3 REST 8.4 RPC 8.5 小结 9.安全与加密 9.1 预防CSRF攻击 9.2 确保输入过滤 9.3 避免XSS攻击 9.4 避免SQL注入 9.5 存储密码 9.6 加密和解密数据 9.7 小结 10.国际化和本地化 10.1 设置默认地区 10.2 本地化资源 10.3 国际化站点 4 10.4 小结 11.错误处理,调试和测试 通过命令在命令行执行 godoc -http=:端口号 比如godoc -http=:8080。然后在浏览器中打开 127.0.0.1:8080,你将会看到一个golang.org的本地copy版本,通过它你可以查询pkg文档等其它内容。如果你设 置了GOPATH,在pkg分类下,不但会列出标准包的文档,还会列出你本地GOPATH中所有项目的相关文档,这对于经常 被墙的用户来说是一个不错的选择。 其它命令 其它命令0 码力 | 295 页 | 5.91 MB | 1 年前3FISCO BCOS 2.1.0 中文文档
0+部署多群组区块链、构建第一个区块链应用,请 参考 教程 深入了解FISCO BCOS 2.0+功能请看 配置文件和配置项、节点准入、 并行交易、分布式存储、国密 等请参考 使用手册 控制台:交互式命令行工具,可访问区块链节点,查询区块链状态,部 署并调用合约等。 企业级部署工具(Generator):支持建链、扩容等操作,推荐构建企业级 区块链时使用,快速使用方法可参考 教程 Web3SDK:提供访问节点状态、修改区块链系统配置以及节点发送交 支持分布式存储,使存储突破单机限制,支持横向扩展。计算和存储分 离,提高了系统健壮性,即使节点执行服务器故障,数据也不会受影 响。分布式存储定义了标准的数据访问CRUD接口,可以适配多种存储 系统,同时支持SQL和NoSQL两种数据管理方式,可以更简便地支持多 种业务场景。 实现预编译合约框架,突破EVM性能瓶颈。支持交易并发处理,大幅提 升交易处理吞吐量。预编译合约采用C++实现,内置于底层系统中,区 块 持数据简便 快速地扩容; 将计算和数据隔离,节点故障不会导致数据异常; 数据在远端存储,数据可以在更安全的隔离区存储,这在很多场景中非 常有意义; 分布式存储不仅支持Key-Value形式,还支持SQL方式,使得业务开发更 为简便; 世界状态的存储从原来的MPT存储结构转为分布式存储,避免了世界状 态急剧膨胀导致性能下降的问题; 优化了数据存储的结构,更节约存储空间。 同时,2.0版本仍然兼容10 码力 | 1058 页 | 740.85 KB | 1 年前32022年美团技术年货 合辑
端智能在大众点评搜索重排序的应用实践 216 对话摘要技术在美团的探索(SIGIR) 238 异构广告混排在美团到店业务的探索与实践 258 短视频内容理解与生成技术在美团的创新实践 271 美团搜索中查询改写技术的探索与实践 297 美团内部讲座 | 清华大学崔鹏:因果启发的学习、推断和决策 325 NeurIPS 2021 | Twins:重新思考高效的视觉注意力模型设计 339 目录 从 0 到 1:美团端侧 CDN 容灾解决方案 589 美团高性能终端实时日志系统建设实践 608 后端 622 可视化全链路日志追踪 622 设计模式二三事 647 基于代价的慢查询优化建议 670 Java 系列 | 远程热部署在美团的落地实践 692 日志导致线程 Block 的这些坑,你不得不防 713 基于 AI 算法的数据库异常监测系统的设计与实现 775 提升资源利用率与保障服务质量,鱼与熊掌不可兼得? 971 标准化思想及组装式架构在后端 BFF 中的实践 992 外卖广告大规模深度学习模型工程实践 | 美团外卖广告工程实践专题连载 1013 数据库全量 SQL 分析与审计系统性能优化之旅 1048 数据库异常智能分析与诊断 1059 美团外卖广告智能算力的探索与实践(二) 1079 Linux 下跨语言调用 C++ 实践 1101 GPU0 码力 | 1356 页 | 45.90 MB | 1 年前3FISCO BCOS 2.3.0 中文文档
0+部署多群组区块链、构建第一个区块链应用,请 参考 教程 深入了解FISCO BCOS 2.0+功能请看 配置文件和配置项、节点准入、 并行交易、分布式存储、国密 等请参考 使用手册 控制台:交互式命令行工具,可访问区块链节点,查询区块链状态,部 署并调用合约等。 运维部署工具(Generator):支持建链、扩容等操作,推荐构建企业级区 块链时使用,快速使用方法可参考 教程 SDK:提供访问节点状态、修改区块链系统配置以及节点发送交易等接 支持分布式存储,使存储突破单机限制,支持横向扩展。计算和存储分 离,提高了系统健壮性,即使节点执行服务器故障,数据也不会受影 响。分布式存储定义了标准的数据访问CRUD接口,可以适配多种存储 系统,同时支持SQL和NoSQL两种数据管理方式,可以更简便地支持多 种业务场景。 实现预编译合约框架,突破EVM性能瓶颈。支持交易并发处理,大幅提 升交易处理吞吐量。预编译合约采用C++实现,内置于底层系统中,区 块 持数据简便 快速地扩容; 将计算和数据隔离,节点故障不会导致数据异常; 数据在远端存储,数据可以在更安全的隔离区存储,这在很多场景中非 常有意义; 分布式存储不仅支持Key-Value形式,还支持SQL方式,使得业务开发更 为简便; 世界状态的存储从原来的MPT存储结构转为分布式存储,避免了世界状 态急剧膨胀导致性能下降的问题; 优化了数据存储的结构,更节约存储空间。 同时,2.0版本仍然兼容10 码力 | 1227 页 | 10.79 MB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100