最后
如果觉得本文对你有帮助的话,不妨给我点个赞,关注一下吧!
- 将数据库分离成
读数据库
和写数据库
④分表分库+水平拆分+mysql集群
-
将庞大的数据库拆分成数据库集群
-
每个集群分成
读数据库
和写数据库
⑤MySQL的扩展性瓶颈
-
库内存放大文本字段
-
表结构更改困难
-
能很好的应付所有的应用场景(中国人亲戚关系)
-
MySQL的扩展性差
⑥今天是什么样子?
⑦为什么用NoSQL
今天我们可以通过第三方平台(如:Google,Facebook等)可以很容易的访问和抓取数据。用户的个人信息,社交网络,地理位置,用户生成的数据和用户操作日志已经成倍的增加。我们如果要对这些用户数据进行挖掘,那SQL数据库已经不适合这些应用了, NoSQL数据库的发展也却能很好的处理这些大的数据。
2、是什么
-
NoSQL(NoSQL = Not Only SQL ),意即“
不仅仅是SQL
”,泛指非关系型的数据库。 -
NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题,包括超大规模数据的存储。
-
(例如谷歌或Facebook每天为他们的用户收集万亿比特的数据)。
这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。
3、能干嘛
①易扩展
-
变成一个大Map,去里面取数据
-
数据之间没有关系
NoSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展。也无形之间,在架构的层面上带来了可扩展的能力。
②大数据量高性能
NoSQL数据库都具有非常高的读写性能
一秒钟,可写入8W次,可读入11W次
③多样灵活的数据模型
-
NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。
-
而在关系数据库里,增删字段是一件非常麻烦的事情。如果是非常大数据量的表,增加字段简直就是一个噩梦
④传统RDBMS VS NOSQL
RDBMS:
-
高度组织化结构化数据
-
结构化查询语言(SQL)
-
数据和关系都存储在单独的表中。
-
数据操纵语言,数据定义语言
-
严格的一致性
-
基础事务
NoSQL:
-
代表着不仅仅是SQL
-
没有声明性查询语言
-
没有预定义的模式
-键 - 值对存储,列存储,文档存储,图形数据库
-
最终一致性,而非ACID属性
-
非结构化和不可预知的数据
-
CAP定理
-
高性能,高可用性和可伸缩性
4、去哪下
-
Redis
-
Memcache
-
Mongdb
5、怎么玩
-
KV(键值对)key_value
-
Cache(缓存)
-
Persistence(持久化)
1、大数据时代的3V
-
海量Volume
-
多样Variety
-
实时Velocity
2、互联网需求的3高
-
高并发
-
高可扩
-
高性能
1、当下的应用是sql和nosql一起使用
2、阿里巴巴中文站商品信息如何存放
①看看阿里巴巴中文网站首页以女装/女包包为例
a.架构发展历程
1、演变过程
2、第5代
3、第5代架构使命
4、…
b.和我们相关的,多数据源多数据类型的存储问题
②商品基本信息
-
名称、价格,出厂日期,生产厂商等
-
关系型数据库:mysql/oracle目前淘宝在去O化(也即拿掉Oracle),
注意,淘宝内部用的Mysql是里面的大牛自己改造过的
为什么去IOE
最后
现在其实从大厂招聘需求可见,在招聘要求上有高并发经验优先,包括很多朋友之前都是做传统行业或者外包项目,一直在小公司,技术搞的比较简单,没有怎么搞过分布式系统,但是现在互联网公司一般都是做分布式系统。
所以说,如果你想进大厂,想脱离传统行业,这些技术知识都是你必备的,下面自己手打了一份Java并发体系思维导图,希望对你有所帮助。
以说,如果你想进大厂,想脱离传统行业,这些技术知识都是你必备的,下面自己手打了一份Java并发体系思维导图,希望对你有所帮助。
[外链图片转存中…(img-KSJs0S2q-1715625310264)]