佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

搜索
查看: 1784|回复: 26

做Database工作相关的朋友,可以来交流下吗?

[复制链接]
发表于 15-7-2013 03:05 PM | 显示全部楼层 |阅读模式
如果一个DB不好,系统慢,是程序员的错还是Team leader的错。书本上真的学不到这么设计一个好的DB。
回复

使用道具 举报


ADVERTISEMENT

发表于 15-7-2013 03:35 PM | 显示全部楼层
两个都有错! 如果你两都没错,那就是DB的错。我猜你应该是用standard DBMS , MSSQL ,mysql or oracle??如有机会用用no-sql 吧,standard db 没得来!
回复

使用道具 举报

发表于 15-7-2013 03:41 PM | 显示全部楼层
如果是normal db的,你有用indexing吗?用db clustering? load balacing ? server scale?   你可以用peformance diagram 去check哪一个queries,或tables, store procedures 是heavy read/write.
回复

使用道具 举报

发表于 15-7-2013 04:40 PM | 显示全部楼层
谁说书上没教...
db会慢, 首先不是应该说谁的错, 是该找出原因, 目前的db都有提供足够的features来分析db的performance
就拿oracle来说, 其中1个方法是generate awr report, 然后从中分析到底是I/O问题, 还是特定的SP慢, 再通过上面大大说的indexing, 或者加强hardware, 总之就要对症下药

其实你要跟同事争论时, 谁是程式员谁是tech lead重要吗? 不是应该看谁是designer吗? 不是该叫1个人去找出问题所在吗? 真的看不到你问题的point在哪里

还有就是, 这个帖子不是应该开在-->电脑联盟›软件研发专区› 数据库专区的吗?
回复

使用道具 举报

发表于 16-7-2013 02:11 PM | 显示全部楼层
alvinyoong2003 发表于 15-7-2013 03:35 PM
两个都有错! 如果你两都没错,那就是DB的错。我猜你应该是用standard DBMS , MSSQL ,mysql or oracle??如 ...

可以分享下,怎么没得来法?
回复

使用道具 举报

发表于 16-7-2013 02:31 PM | 显示全部楼层
alvinyoong2003 发表于 15-7-2013 03:35 PM
两个都有错! 如果你两都没错,那就是DB的错。我猜你应该是用standard DBMS , MSSQL ,mysql or oracle??如 ...

如果一个 PO 有很多 items,standard db 有的来吗?
回复

使用道具 举报

Follow Us
发表于 16-7-2013 03:04 PM | 显示全部楼层
是Microsoft/Oracle的错
回复

使用道具 举报

发表于 16-7-2013 08:35 PM | 显示全部楼层
hui_wooi 发表于 16-7-2013 02:11 PM
可以分享下,怎么没得来法?

No-sql只是key-value store是很low base 的file storage schema.大多都是用in-memory来做开段,就像CDN server and file server 做后段。比起standard db 只是主重方便users而让software跟好卖,但core system还是没改,所以不够快。如果你论哪一个db peformance 最好, 就要看哪一个db most scalability。因为只以一个server来论peformance 是很没意思的。
我们就那FB来做例子。开此的fb是用mysql,但发意识到mysql不能成受大量的traffic,所以就更改mysql core system。但未来不是办法,因为mysql license 还会有问题的,之后自发cassandra 来solve.
可见big data , no-sql为来大有做为!
回复

使用道具 举报


ADVERTISEMENT

发表于 16-7-2013 08:40 PM | 显示全部楼层
hooi1983 发表于 16-7-2013 02:31 PM
如果一个 PO 有很多 items,standard db 有的来吗?

看是谁用。当然大众人来用跟定没standard db来的好!
回复

使用道具 举报

发表于 16-7-2013 08:42 PM | 显示全部楼层
cheah85 发表于 16-7-2013 03:04 PM
是Microsoft/Oracle的错

对对!给我们太多翻版
回复

使用道具 举报

发表于 16-7-2013 09:08 PM | 显示全部楼层
比较有兴趣知道 DBA 的薪水。

评分

参与人数 1人气 +3 收起 理由
weiwei318 + 3 天文数字

查看全部评分

回复

使用道具 举报

发表于 16-7-2013 11:39 PM | 显示全部楼层
alvinyoong2003 发表于 16-7-2013 08:35 PM
No-sql只是key-value store是很low base 的file storage schema.大多都是用in-memory来做开段,就像CDN s ...

既然你拿 Facebook 来讲,虽然我还是 noob,不过也看到你给错资料
FB 在 2010 年已经停止使用 Cassandra,转去用 HBase。
现在 FB 用 MySQL,而且还是 InnoDB,不是类似 no sql 的 MyISAM。

回复

使用道具 举报

发表于 17-7-2013 11:46 AM | 显示全部楼层
hooi1983 发表于 16-7-2013 11:39 PM
既然你拿 Facebook 来讲,虽然我还是 noob,不过也看到你给错资料
FB 在 2010 年已经停止使用 Cassandra ...

第一我没讲你noob。如果因为我讲到不detail,我向你说对不起。
我拿fb canssandra来做例子是因为它和mysql是fb由standard db转去nosql的一个大突破。
果真的要讲fb的,fb所用的software还很多。如你说fb还用mysql,哪fb也没停止使用 Cassandra 。hbase 也是取代Cassandra 其中的real-time messaging。还有in-box messages search,search indexing 等等。。。fb 也不单单用mysql,Cassandra 或 hbase。还有memcached, hadoop,hive,bigpipe,haystack 等等。。。最重要的是一个software 的peformance 是很看它的scalability。big data (hbase), no sql cassandra  都是为来大有做为。fb ceo 讲过要善用不同的software在不同区域的需求。
















回复

使用道具 举报

发表于 17-7-2013 01:35 PM | 显示全部楼层
alvinyoong2003 发表于 17-7-2013 11:46 AM
第一我没讲你noob。如果因为我讲到不detail,我向你说对不起。
我拿fb canssandra来做例子是因为它和m ...

不过LZ的program可能只有几个人在用而已
我也不确定LZ是不是team lead, 是的话我估计project budget不超过5k

我猜的, 从他之前开的帖猜的
回复

使用道具 举报

发表于 17-7-2013 02:31 PM | 显示全部楼层
alvinyoong2003 发表于 17-7-2013 11:46 AM
第一我没讲你noob。如果因为我讲到不detail,我向你说对不起。
我拿fb canssandra来做例子是因为它和m ...

如果之前的语气令到你不快,请见谅。

我想过用 hybrid,mysql innodb + no sql / mysql myisam。
当 data 进来的时候,先收在 mysql innodb,然后 read 的时候,先去 no sql 的 db query,如果没有 data,才去 mysql innodb query,然后 insert 进 no sql db。
所以下次再 read 的就可以在 no sql db query 到了。

这样会不会快点,还是有何高见?
回复

使用道具 举报

发表于 17-7-2013 02:36 PM | 显示全部楼层
btw,看看 FB 如何将 MySQL 淋漓尽致

https://www.facebook.com/MySQLatFacebook
回复

使用道具 举报


ADVERTISEMENT

发表于 17-7-2013 03:52 PM | 显示全部楼层
hooi1983 发表于 17-7-2013 02:31 PM
如果之前的语气令到你不快,请见谅。

我想过用 hybrid,mysql innodb + no sql / mysql myisam。

没关系,大家都是分想经验。
概念上你的想法是会快一点。但你要做到innodb 和 nosql synchronized 是很难,如果high traffic一直有update的时后,innodb 和 nosql之间的delay 就会很频繁,哪nosql 就变了一个负担来拖慢peformance?这想法用在某些是可行,但在high write traffic 的就不能了。如果还要scale的就跟难。

其实mongodb , redis 就好像你说的想法。只是它们把你说的想法成一个software。它们的front-end memory base会identify哪些是high read/write,就放它去high priority,low就low priority,因为memory必竟是有限的。你也可以为你的需求而改变memory 模式, like First come first serve or last come first serve。还有它们的scabilities也是一绝的。就像mongodb用shard scalability,可以分开大file to 一片片store在不同的server来分担每一个server 的storage。 就算上千万数据都不是问题。
       

回复

使用道具 举报

发表于 17-7-2013 03:54 PM | 显示全部楼层
hooi1983 发表于 17-7-2013 02:36 PM
btw,看看 FB 如何将 MySQL 淋漓尽致

https://www.facebook.com/MySQLatFacebook

我没有否认FB用mysql好像神将,fb还customize 自己的storage engines。但有些是mysql做不来的。
回复

使用道具 举报

发表于 17-7-2013 04:13 PM | 显示全部楼层
alvinyoong2003 发表于 17-7-2013 03:54 PM
我没有否认FB用mysql好像神将,fb还customize 自己的storage engines。但有些是mysql做不来的。

FB 不知将 MySQL 用到神酱,也将 PHP 变成了神。
回复

使用道具 举报

发表于 17-7-2013 04:15 PM | 显示全部楼层
alvinyoong2003 发表于 17-7-2013 03:52 PM
没关系,大家都是分想经验。
概念上你的想法是会快一点。但你要做到innodb 和 nosql synchronized 是很难 ...

还在想着如何将 existing 的 innodb db 配合 no sql。
key value 的 table 就比较适合 no sql,
不过如果商业软件,有很多 transaction 和 join table 的话,我还是觉得 standard db 比较适合。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

所属分类: 办公美食


ADVERTISEMENT


本周最热论坛帖子本周最热论坛帖子

ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2026 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 11-5-2026 04:35 AM , Processed in 0.074611 second(s), 17 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表