可扩展数据架构浅析

51单片机项目避坑指南:超声波倒车报警系统里,EEPROM数据保存和蜂鸣器PWM调频那些事儿 本文深入探讨51单片机在超声波倒车报警系统中的关键技术与常见问题,重点解析EEPROM数据持久化与蜂鸣器PWM调频的进阶技巧。通过AT24C02存储芯片的时序优化、数据校验机制,以及定时器PWM模式的精细控制,实现专业级的报警效果和可靠数据存储。文章还提供系统级优化方案,包括电源管理、抗干扰设计和性能测试方法,为超声波测距系统的产品化开发提供实用指导。 阅读详情

上篇讲了一点用mysql架构saas数据库的观点,主要是节点向外扩展的思路,这篇再叨叨一下,主要是针对数据库存储再加以说明,现在大多数解决方案还是停留在类似阿里的解决方案上,弱化企业的逻辑流程,saas现在还是停留在共性化很强的中小企业应用上,我想saas再发展,她会慢慢的过渡到相对比较复杂的企业应用。所以做系统有一点就非常的重要,可扩展性,这个词在做并行计算系统和分布式系统的时候,是最重要的衡量参数。
   可扩展不只是tenant可扩展,还要有其他可扩展,这里有这样几个概念:
   第一:界面可扩展;
   这个很容易理解,用户菜单可以定义,这个一般是程序实现和数据库的关系不是很大,如果按照面向界面编程的思路进行下去的话,这个非常简单,在面向界面编程的时候再说明清楚。
   第二:功能可扩展;
   这个主要是soa的思想和跨界迁移,理解起来也不是很复杂,核心是uddi。
   第三:数据表结构可扩展;
   数据表结构可扩展,很多人认为就自定义字段,这个只是表段扩展的初级阶,为什么呢?因为一个信息的属性到底有多少,开发人员是不可预测的,动态改变数据表结构是一作个非常危险的动,现在很多架构师提出来应该是独享表结构而共享数据库,但是你可以想象,举例:一个租户的两个用户,a用户insert数据,b 用户在alter表结构,这是一个高风险度的操作。所以建议不要这样做,而是采用视图进行行列装换的策略,这个应用最好的算是facebook,给每个被扩展的数据表,建立扩展数据表,表结构如果下:
被扩展数据表A

 primaryid name
 1 测试1

这个数据表很容易理解,就是信息的基础数据表,比如name。
数据表A的扩展记录表
A_extend

 primaryidfield
 type length descript ......
 1 number int 10 数量 
 2 addtime date  上架时间 

这个数据表和基础数据表应该是一一对应的关系,记录扩展信息,简单的应用就是上边的这种,复杂的应用比如产品可能根据不同的分类所扩展的还有所不一样,这个数据表中就可以进行处理。
数据表A的扩展数据表
A_extend_data

 Aid field int varchar date ......
 1 number 1234   
 1 addtime   17:49:22 

这个数据表是该思路的核心,列是field和数据类型的集合,一条扩展信息,根据属性划分成多行,这样避免数据表结构的更改,但是又有一个新的问题就是在这些扩展属性上进行检索的时候就非常困难,下边的视图解决这个问题。这里还有一个问题就是:为什么不设计成一个混合类型的字段,那样不是更加简单吗?还要按照类型进行分开存储,实际上每行只有一个存储有效单元,其他都是null,这个主要是为了提供更多的检索条件,因为数字123和字符123存储显然不一样的,数字123可以用>比较符,而字符123则是无意义的。同理在该表上建立的视图也就有清晰的类型,和应用系统中的类型相匹配,而不在需要转换。当然你的应用系统如果是php这样的弱类型语言,那就多余了。
在A_extend_data创建视图A_extend_data_view

 primaryid number addtime
 1 1234 17:49:22
 2 2342 17:49:25

视图,这个就很清晰了,检索的时候也很方便,和一般的数据表检索是没有什么两样,在创建视图的时候,用一个存储过程,进行行列转换。
就大概说下,有兴趣的可以再进一步交流。

浅析架构设计——架构之道学习笔记 什么是架构 1、架构是将【组织】按照一定的【结构】进行组织【连接】起来 2、组件:软件差分后的物理形态,它可是子系统、模块、应用服务或者是一个类。 3、结构:是架构之后的轮廓,是组件组织后产出物。不同的软件系统会有不同的结构,这些结构是为了解决不同应用场景而设计。 4、链接:把差分的组件有机组装出来,链接关系可以是JVM内部调用, 架构设计的原则: 1、合适原则: a、匹配业务发展所处的当前阶段 b、充分结合业务实际的应用场景 c、考虑业务近1年到2年的发展规模 2、简单原则:大道. 阅读详情

相关推荐

糖尿病预测(深度学习pytorch实现-最新)

本次做的项目是糖尿病的预测,也是来自kaggle上面的一个小项目。根据一个人的怀孕次数、血糖、血压、皮肤厚度、胰岛素指标、身体质量指数、糖尿病谱系指数、年龄等身体参数来预测一个人是否患有糖尿病。

NangoGreen的博客 5358

23 可扩展的数据结构

传统的关系数据库为了保证关系运算(通过SQL语句)的正确性,在设计数据库表 结构的时候,就需要指定表的schema——字段名称,数据类型等,并要遵循特定的设计 范式。这些规范带来的一个问题就是僵硬的数据结构难以面对需求变更带来的挑战,有 些应用系统设计者通过预先设计一些冗余字段来应对,不过显然这是一种糟糕的数据库 设计。 那么有没有办法能够做到可扩展的数据结构设计呢?无需修改表结构就可以新增字 段呢?许多NoSQL数据库使用的ColumnFamily (列族)设计就是一个解决方案。 ColumnFamily

water Wang 3940

Ubuntu安装pytorch3d的最便捷方法【原创】

Ubuntu安装pytorch3d的最便捷方法

qq_54900679的博客 2924

[架构师之路] 高可扩展表结构系列

http://chuansong.me/n/1298388046739 啥,又要为表增加一列属性? 2016-12-14 http://chuansong.me/n/1311070246933 这才是真正的表扩展方案 2016-12-15 http://chuansong.me/n/1496202646316 100亿数据1万属性数据架构设计 2017-01-18 完整展示了通过 Ext 字段进行无限扩展的方案和实现原理,同时也详解了58同城相关的三大核心组件。

qijiqiguai的专栏 1万+

车联网ECU、TSP与TBOX通信流程

对比维度ECU(电子控制单元)BMS(电池管理系统)应用场景传统燃油车 + 新能源汽车仅限新能源汽车核心作用控制整车各系统运行管理动力电池安全与寿命车联网角色数据采集与传输的核心载体提供电池相关的核心数据。

tecoes的博客 1230

用C#和MQTTnet在WinForm里做个简易物联网监控后台(附完整源码)

本文详细介绍了如何使用C#和MQTTnet库在WinForm中构建一个简易物联网监控后台。通过实战案例,包括环境配置、MQTT服务端实现、客户端监控功能及高级优化技巧,帮助开发者快速搭建高效的物联网监控系统,适用于工业自动化和智能家居场景。

weixin_29540599的博客 392

数据库扩展性架构设计

前篇:《无限容量数据库架构设计》《MQ消息可达性+幂等性+延时性架构设计》《高可用+高并发+负载均衡架构设计》都收到网友好评:系统性,全局性看问题体会更深刻简单易懂本文再...

shenjian58的博客 769

iOS WKWebView H5微信支付跳转

iOS WKWebView H5微信支付跳转 需求:iOS客户端实现嵌入H5进行微信支付跳转到微信客户端,支付完成后再跳转回我们的APP,解决WKWebView无法跳转回APP的BUG. 阅读前提: 了解WKWebView基本初始化及使用 了解如何利用URL Schemes进行应用间跳转 公司或个人已经在微信后台注册了一级域名 GitHub地址(附代码) :iOS WKWebView H5微信支付跳转 简书地址 :iOS WKWebView H5微信支付跳转 博客地址 :iOS WKWe...

ForeverMyheart的博客 2046

可扩展的分布式数据库架构

可扩展的分布式数据库架构

lengyuhong的专栏 1412

瑞芯微RV1126B芯片实战:如何用3Tops NPU打造智能安防摄像头(附配置指南)

本文详细介绍了基于瑞芯微RV1126B芯片构建高性能智能安防摄像头的实战经验。文章深入剖析了其3Tops NPU与独立AI-ISP的协同优势,提供了从硬件选型、开发环境搭建、AI模型部署到系统调优的全流程配置指南,帮助开发者充分发挥芯片潜力,实现高效、稳定的智能视觉应用。

weixin_29281915的博客 443

第9.3章 从CMake基础到自动驾驶实战:构建跨平台C/C++项目的全能指南

《CMake构建实战:项目开发卷》精要指南 本文系统梳理了许宏旭《CMake构建实战》核心内容,涵盖C++构建全流程: 基础构建:详解MSVC/GCC编译器使用、Makefile编写及静态/动态库构建方法 CMake核心:解析语法结构、变量控制、文件操作等关键命令,阐述项目全生命周期管理 实战应用:通过快速排序、手写数字识别项目演示现代CMake实践,特别针对自动驾驶领域给出多传感器融合、SLAM等场景的CMake配置方案 特色价值:本书填补了官方文档实例不足的空白,提供300+代码示例,是掌握工业级C++

行知SLAM 1343

可扩展数据架构浅析--还需要理解

可扩展不只是tenant可扩展,还要有其他可扩展,这里有这样几个概念: 第一:界面可扩展; 这个很容易理解,用户菜单可以定义,这个一般是程序实现和数据库的关系不是很大,如果按照面向界面编程的思路进行下去的话,这个非常简单,在...

cisiruan3500的博客 250

芒果YOLOv12改进108:基于QARep提出多种<独家原创结构>:ReNLANQARep, QARep, CSCQARep, C3QARep, C2fQARep等,即插即用提升小目标检测

芒果YOLOv12改进108:基于QARep提出多种<独家原创结构>:ReNLANQARep, QARep, CSCQARep, C3QARep, C2fQARep等,即插即用提升小目标检测

包括YOLOv5、YOLOv7、YOLOv8等模型改进 755

浅析中国大数据技术与市场趋势

原标题:中国大数据市场对存储的需求 中桥国际调研咨询(以下或简称“中桥”)近日为戴尔完成的大数据对存储需求的调研报告简要介绍了中国大数据技术和市场的趋势,并结合5个典型大数据应用场景,浅析了存储,特别是戴尔流动数据架构,如何满足企业在大数据通过IT创造价值的过程中的需求。 大数据创造业务价值 有效利用大数据,不仅可以实时监控各种潜在风险,提高生产效率,更重

u014741335的专栏 817

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

浅析专网通信领域的前端架构设计

专网通信领域的前端架构设计

we452366的博客 502

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

浅析数仓分层:DB+ODS+DW+DM

本期将从结构层面了解数据仓库分层的几个名词和简单理解。 文章目录1 理想的数据分层总体结构2 DB层:关系型数据库和非关系型数据库2.1 关系型数据库RDB2.2 非关系型数据库NoSQL3 ODS层:操作数据存储层3.1 ODS产生背景3.2 ODS在企业数据架构中担任的角色3.3 ODS层的特征3.4 ODS层的功能4 DW层:数据仓库 1 理想的数据分层总体结构 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CFfRleTt-1607275403838)(C:%5C.

q1042960848的博客 3349

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

机器学习系统架构的10个要素

这是一个AI赋能的时代,而机器学习则是实现AI的一种重要技术手段。那么,是否存在一个通用的通用的机器学习系统架构呢?在老码农的认知范围内,Anything is nothing,对系统架构而言尤其如此。但是,如果适用于大多数机器学习驱动的系统或用例,构建一个可扩展的、可靠的机器学习系统架构还是可能的。从机器学习生命周期的角度来看,这个所谓的通用架构涵盖了关键的机器学习阶段,从开发机器学习模型,到部...

我相信...... 1541

大数据领域数据建模:促进数据共享与流通的桥梁

随着企业数字化转型的深入,数据孤岛问题导致的"数据难以共享、业务难以协同"成为制约数据价值释放的核心瓶颈。据Gartner调研显示,73%的企业数据处于未被充分利用的"暗数据"状态。本文聚焦大数据领域数据建模技术,系统阐述如何通过科学的数据建模方法,构建跨系统、跨领域的数据共享基础设施,实现数据从"资源"到"资产"的质变。研究范围涵盖数据建模基础理论、核心技术方法、行业应用实践及工具生态,适用于数据架构师、数据治理专员、企业CIO等技术与管理岗位。

专注搜索引擎技术 707

(课程设计)django赛事积分管理系统-计算机毕设 附源码43709

普通用户功能: 首页:展示最新赛事信息、新闻动态及重要通知,为用户提供一站式的信息获取平台。 通知公告:发布并展示系统的重要通知和公告事项,确保用户及时了解最新消息。 新闻资讯:提供丰富的行业新闻和赛事相关信息,帮助用户掌握第一手资讯。 赛事信息:列出所有可参与的赛事详情,包括时间、地点和项目介绍,方便用户报名参赛。 排名信息:显示各类赛事的最新排名情况,允许用户查看详细排名并进行互动。 我的账户:支持用户编辑个人信息、查看账户状态,确保个人资料的准确与安全。 个人中心:集中管理用户的报名记录、赛事结果、获

ID3461074420的博客 235

构建可扩展的表结构

围绕PRODUCT表构建可扩展的表结构

observething的专栏 325

可扩展的用户表设计

用户表结构的设计,算是整个应用架构的基石。如果基石不稳,待到后面需求跟进了发现不能应付,回过头来反复修改用户表,要大大小小作改动的地方也不少,甚至有些情况下无从下手,因此我们应该怎么设计用户表呢? 需求分析# 多种登录方式:包括手机号、微信、QQ、微博等; 可进行绑定和解绑或者更换绑定:用户使用任意方式登录后可绑定和解绑或者更换绑定其他 登录授权; 支持 unionid(针对 QQ / 微信等):如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的 unionid 来区分用户的唯一性,

follow your heart 4862

数据库字段动态扩展设计

最近讨论数据库有关产品方案的项目自动扩展问题,即每个方案都有多个项目,而每个方案的项目或多或少,也有不一样的,方案以后也坑能随之增加新的项目。因此需要数据库设计一套可扩展的方案。

3万+

MySQL性能调优与架构设计——第 14 章 可扩展性设计之数据切分

第 14 章 可扩展性设计之数据切分 前言 通过 MySQL Replication 功能所实现的扩展总是会受到数据库大小的限制,一旦数据库过于庞大,尤其是当写入过于频繁,很难由一台主机支撑的时候,我们还是会面临到扩展瓶颈。这时候,我们就必须许找其他技术手段来解决这个瓶颈,那就是我们这一章所要介绍恶的数据切分技术。 14.1 何谓数据切分 可能很多读者朋友在网上或者杂志上面都已经多次见到关...

weixin_30522183的博客 189
上一篇: Web前端-HTTP Cache-control
下一篇: Microsoft Operations Manager 2005 使用心得
netbug2009
博客等级 码龄17年 21粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值