首页 文章 精选 留言 我的

精选列表

搜索[读写分离],共10000篇文章
优秀的个人博客,低调大师

存储与计算分离:OSS构建表 + 计算引擎对接

看到标题,可能有用户要问:OSS不是用来存图片、视频、及文件的吗,还可以在上面建表、数仓?计算效率和经济性表现怎么样? 本文先给出基本结论: OSS是什么? 对象存储(Object Storage Service,简称OSS)是基于阿里云飞天分布式系统的海量、安全和高可靠的云存储服务,是一种面向互联网的大规模、通用存储,提供RESTful API,具备容量和处理的弹性扩展能力。 基于OSS是否可以创建数据表? 既然可以把摄像头推流接到OSS,建表属于小Case了。并且2016年在亦龙大神的帮助下,Hadoop社区在官方版本中支持OSS,开启了阿里云存储与开源融合的新里程碑。 OSS上建表是否易用? 今天为了降低OSS上建表的门槛,日志服务(原SLS)LogHub可以支持OSS上表的实时写入(表类型包括TextFile,列存储Parquet),支

优秀的个人博客,低调大师

用中文 API 让正则表达式更易读写

木兰语言重现项目中用到了不少正则表达式,其中不乏不那么一目了然的(Python实现): 标识符:r'\$?[_a-zA-Z\u4e00-\u9fa5][_a-zA-Z0-9\u4e00-\u9fa5]*' 双引号字符串: r'(\")((?<!\\)\\\1|.)*?\1' 字符串插值相关:r'\\\(([^\\\)]*)\\\)|`([^`]*)`' 由此想到是否有 API 能够构建正则表达式。找到 PythonVerbalExpressions,它首页上一个示例如下: verbal_expression. start_of_line(). find('http'). maybe('s'). find('://'). maybe('www.'). anything_but(' '). end_of_line() 对应正则: ^(http)(s)?(\:\/\/)(www\.)?([^\ ]*)$ 看起来的确比较可读,而且如果改为中文 API 的话,命名会更简短: 开头(). 寻找('http'). 或许('s'). 寻找('://'). 或许('www.'). 除了(' '). 结尾() 问题是这个库的功能似乎有限,仅支持小部分正则语法,于是考虑改进。 设想中的 API 示例 以开头的木兰实现中的几个正则为例,用设想中的 API 表达后进行对比 标识符: 至多一个("$").一个("_", 大小写英文, 中文).任意个("_", 大小写英文, 数字, 中文) 原始正则表达式对比:r'\$?[_a-zA-Z\u4e00-\u9fa5][_a-zA-Z0-9\u4e00-\u9fa5]*' 双引号字符串: 分组(双引号) .最小匹配( 任意个( 分组( 皆可( 前面不是(反斜杠).一个(反斜杠).一个(引用分组(1)), 一个(非换行字符)) ) ) ) .引用分组(1) r'(\")((?<!\\)\\\1|.)*?\1' 字符串插值相关: 皆可( 一个(反斜杠).一个(左小括号).分组(任意个(不是(反斜杠, 右小括号))).一个(反斜杠).一个(右小括号), 一个(反引号).分组(任意个(不是(反引号))).一个(反引号) ) r'\\\(([^\\\)]*)\\\)|`([^`]*)`' 相对原始正则表达式,在可读性之外还有几个优势: 不需为正则的特殊意义字符加反斜杠,如 \,(,) 等 明确运算优先级,比如双引号字符串中的 | 和 (?<!)... 在易写方面,相对于正则的符号语法,API 语义更加直白。 欢迎意见建议。

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。