Skip to content

Commit

Permalink
Update tags for most posts
Browse files Browse the repository at this point in the history
  • Loading branch information
zedware committed Mar 31, 2023
1 parent ce3b4fd commit c19dddd
Show file tree
Hide file tree
Showing 110 changed files with 297 additions and 24 deletions.
2 changes: 1 addition & 1 deletion _includes/tag_cloud.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<h2>Archive</h2>
<h2>Tag Cloud</h2>
{% capture temptags %}
{% for tag in site.tags %}
{{ tag[1].size | plus: 1000 }}#{{ tag[0] }}#{{ tag[1].size }}
Expand Down
1 change: 1 addition & 0 deletions _posts/2003-03-04-NULL.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: 空值的问题
original: https://blog.csdn.net/zedware/article/details/20488167
tags: sql
---

空值的问题[1]()
Expand Down
1 change: 1 addition & 0 deletions _posts/2003-04-04-UPDATABLE-VIEW.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: 可更新视图
original: https://blog.csdn.net/zedware/article/details/20488069
tags: sql view
---

视图是从一个或多个基表(或视图)导出的表。通常视图仅仅是一个虚表,即数据库中只存放视图的定义信息等元数据,而不存放视图对应的数据。 视图上的操作和基表类似,但是 DBMS对视图的更新操作(INSERT、DELETE、UPDATE)往往存在一定的限制。 DBMS对视图进行的权限管理和基表也有所不同。
Expand Down
1 change: 1 addition & 0 deletions _posts/2004-06-01-DATA-TYPES.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: 数据库中的数据类型
original: https://blog.csdn.net/zedware/article/details/21247193
tags: sql
---

数据库中的数据类型通常有很多种,也有不同的分类方法。例如最常见的数值型、字符型、日期时间型,也有不太常见的布尔型、枚举型、集合型等。要在DBMS中实现某种具体数据类型(例如最简单的INTEGER)的支持,我们可以从以下几个方面来考虑。
Expand Down
1 change: 1 addition & 0 deletions _posts/2004-06-01-SQL-TOPN.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: 用SQL找出前N名
original: https://blog.csdn.net/zedware/article/details/50926404
tags: sql
---

业务系统中经常会有排名的需求,考试和比赛中则更普遍了。Excel 中也有个 Rank 函数供排名之用,数据库中更不例外了。假设需要找出工资最高的前三个员工工资(及其员工号)。不过,“前三名”的具体含义需要准确的定义,不然查出来的可能不是想要的结果。首先,因为表中记录数可能就少于三,查出来的记录可能等于三条也可能少于三条。其次,需要考虑并列名次的处理。
Expand Down
2 changes: 2 additions & 0 deletions _posts/2004-07-01-SOURCEINSIGHT.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
layout: post
title: 在SourceInsight中集成版本管理工具
original: https://blog.csdn.net/zedware/article/details/20487555
tags: source-insight
---

    SourceInsight是一个功能强大的源码阅读和编辑工具,它也支持用户自定义的命令。我们可以选取主菜单中的“View”->“Toolbars”中的“Source Control”和“Build”以便显示版本管理和构建工具栏。
![si-toolbars.jpg](/images/si-toolbars.png "si-toolbars")
    这两个工具栏所对应的命令都是可以定制的,更多的定制命令可以在“Options”->“Custom Commands...”中看到和修改:
Expand Down
1 change: 1 addition & 0 deletions _posts/2005-02-16-TYPE-DISCRIMINATION.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: SQL 数据类型辨析
tags: sql
---

* * *
Expand Down
1 change: 1 addition & 0 deletions _posts/2005-08-05-ISOLATION-LEVEL.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: 事务的隔离级别(Transaction Isolation Level)
tags: sql
---

事务隔离级别是对事务之间的隔离性作出的一个度量。它通常以下面的几个现象进行考察。注意这些现象都是从读的角度来分析的,即分析写操作对读操作的影响。
Expand Down
1 change: 1 addition & 0 deletions _posts/2005-08-31-TPMC-WAREHOUSE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: tpmC per Warehouse in TPC-C
tags: tpc-c tpmc
---

As defined in the TPC-C specification, their is an upper bound in the tpmC metric as calculated by the number of warehouses. To get a higher tpmC, vendors have to load more number of warehouses.
Expand Down
1 change: 1 addition & 0 deletions _posts/2005-10-14-GPROF.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: GNU gprof 的使用以及常见问题
tags: gprof
---

gprof 对于 profiling 非常有用,不过初学者可能会遇到一些障碍。下面我们从最简单的例子开始,一步步深入,希望能够容易明白一点了。
Expand Down
1 change: 1 addition & 0 deletions _posts/2006-05-18-NULL-AGAIN.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: 此NULL非彼NULL
tags: sql
---

* * *
Expand Down
1 change: 1 addition & 0 deletions _posts/2006-05-18-ROWNO.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: 从给查询结果集增加行号说起
tags: sql shell
---

* * *
Expand Down
1 change: 1 addition & 0 deletions _posts/2006-05-18-SYMLINK.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: 符号链接、硬链接、快捷方式和Junctions
tags: file-system
---

* * *
Expand Down
1 change: 1 addition & 0 deletions _posts/2006-06-30-COREDUMP.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: 在Linux下产生并调试core文件
tags: coredump
---

* * *
Expand Down
1 change: 1 addition & 0 deletions _posts/2006-07-10-NAMESPACE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: Ambiguous call to overloaded function
tags: cplusplus
---

* * *
Expand Down
1 change: 1 addition & 0 deletions _posts/2006-07-17-HELLOWORLD.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: 各种语言写就的“hello world”程序
tags: hello-world
---

* * *
Expand Down
1 change: 1 addition & 0 deletions _posts/2006-08-10-STACKOVERFLOW.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
layout: post
title: What's stack overflow?
tags: stack-overflow
---

* * *
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
layout: post
title: 用尽量少的语句和C语言关键字实现一个函数
original: https://blog.csdn.net/zedware/article/details/1685101
tags: c
---

```
/*
 * 问题:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: 微软的数据访问技术(From MDAC to Windows DAC)
original: https://blog.csdn.net/zedware/article/details/4917233
tags: mdac
---

在过去的很多年中,微软发展了很多种具体的数据访问技术。然而,随着技术的发展和进步,很多技术现在都显得很过时了;有些技术因为被非常广泛的使用,仍然得到了一定程度的维护和支持。10多年前被视为主流的技术,到今天不是被彻底抛弃就是被视为 Legacy 了。这里是微软的:[Data Access Technologies Road Map](http://msdn.microsoft.com/en-us/library/ms810810.aspx)。它的维护历史为:January 2002;Revised December 2008,这也基本说明了最近的这些年中,被称为 MDAC 的这部分技术没有什么实质的发展,而是处于一个维护状态。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
layout: post
title: MySQL将会像BSD、Linux那样弄出不同的分支和发行版?
original: https://blog.csdn.net/zedware/article/details/5015062
tags: mysql
---

    从用户的角度看,MySQL被Sun收购,又被Oracle收购可能真不是什么好事。MySQL本来就被Oracle通过并购其依赖的存储引擎Innobase、BerkeleyDB折腾的不行,又在被Sun收购后发生了[Monty创建新分支MariaDB](http://askmonty.org/wiki/index.php/MariaDB)这样的事情,最终还是随着Sun一起被Oracle并购,没有逃脱Larry Elison的魔爪。也许,开源软件的好处就在于选择比较多,可以适合不同人的口味,而且你觉得不合适的,自己就可以去做些改造。不过对于普通的用户甚至开发者而言,选择太多了也不见得是什么好事——会弄得无所适从,不知道身在何处。
    说起[自由软件](http://www.fsf.org)[开源软件](http://www.opensource.org),它们的发展已经有很多年了,可以说其年纪比我们很多从业者的年龄都要大了。简单的回顾一下历史,也许能为MySQL的未来走向作出一点有意义的推测。BSD、Linux等典型开源软件在其发展的历史中都出现了众多的分支和变种,MySQL也不会例外。开源软件这东西就和生物一样,存在着多样性,而且会不断的进化发展。多样性虽然带来了复杂性,但是它也带来了生机和活力,一代比一代更强悍。不过目前看来,MySQL到底会发展成个什么样子,还是谁也说不清楚。
2 changes: 2 additions & 0 deletions _posts/2009-12-23-Google Public DNS.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,7 @@
layout: post
title: Google Public DNS
original: https://blog.csdn.net/zedware/article/details/5058973
tags: dns
---

   已经有了一个叫做OpenDNS的非Open Source DNS服务,现在又出来了一个号称Public的Google Public DNS。从[http://code.google.com/intl/zh-CN/speed/public-dns/](http://code.google.com/intl/zh-CN/speed/public-dns/)可以看到,Google提供的这两个DNS服务的IP地址很好记:8.8.8.8和8.8.4.4。要是大家都将DNS解析大集中到Google,那好,Google更可以容易的知道你整天都访问了哪些站点了。
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ layout: post
title: 介绍Stonebraker和DeWitt教授的文章
original: https://blog.csdn.net/zedware/article/details/5094852
---

*以下引用的两篇文章作者为:David J. DeWitt and Michael Stonebraker* 
[MapReduce: A major step backwards](http://databasecolumn.vertica.com/database-innovation/mapreduce-a-major-step-backwards/ "MapReduce: A major step backwards"),说明了MapReduce虽然很热也可能很好,但是: 
1. A giant step backward in the programming paradigm for large-scale data intensive applications  
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: Oracle Makes Commitments to Customers, Developers and Users of MySQL
original: https://blog.csdn.net/zedware/article/details/5102723
tags: mysql
---
[Oracle Makes Commitments to Customers, Developers and Users of MySQL](http://www.marketwire.com/press-release/Oracle-Corporation-NASDAQ-ORCL-1090000.html),半个月前,著名的甲骨文受不了欧盟的反垄断折腾了,做出了这么10条承诺。不过我觉得这么写承诺未必有什么实质的意义,也许只是给欧盟个回应,以后并购后该怎么样还是怎么样。虽然Oracle早几年就视MySQL为一个潜在的威胁,使出了釜底抽薪的把戏,购买了MySQL的存储引擎Innobase和BerkeleyDB;但是,经过Sun折腾过一次的MySQL对于Oracle来说还不是并购的主要目的。

Expand Down
4 changes: 3 additions & 1 deletion _posts/2010-03-11-表达式的求值顺序.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@
layout: post
title: 表达式的求值顺序
original: https://blog.csdn.net/zedware/article/details/5371715
tags: sql
---
      在C等高级语言中,对表达式求值时一般都有一套较为固定的规则。例如按照从左到右的顺序求值,如果算到某处可以得出结果就忽略后续的表达式(Short Circuit)。举个例子:

在C等高级语言中,对表达式求值时一般都有一套较为固定的规则。例如按照从左到右的顺序求值,如果算到某处可以得出结果就忽略后续的表达式(Short Circuit)。举个例子:

x = 1;
if (x != 0 && foo())
Expand Down
2 changes: 2 additions & 0 deletions _posts/2010-04-23-自治事务(Autonomous Transaction).md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
layout: post
title: 自治事务(Autonomous Transaction)
original: https://blog.csdn.net/zedware/article/details/5521392
tags: sql
---

    “事务”是一个大家耳熟能详的名词了。事务具有四个基本的特性,我们分别将其称为原子性(Atomic)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。统称为ACID。与事务有关的还有“分布式事务”、“超长事务”等正式和非正式的名词。这里要说的是“自治事务”(Autonomous Transaction)。

    自治事务可能是Oracle首先引入的,[在DB2 9.7中也有了类似的概念](http://www.ibm.com/developerworks/data/library/techarticle/dm-0907autonomoustransactions/index.html)。在开发实际应用的过程中,有时我们希望能够将事务执行过程中的错误或被执行到的语句记录下来,以便做日后的问题分析或当做审计记录。可是,在没有自治事务之前,依靠数据库的事务机制很难完成这个任务。因为事务具备原子性,如果事务成功提交了,我们在事务中插入的错误/语句记录语句会按照期望的结果被提交;但是,如果事务回滚了呢?我们的记录也被系统给回滚了。在普通的事务处理中,一个会话一般对应于一个服务器的服务处理者(进程或线程),会话中的工作可以理解为一个接一个的事务。因此,一个会话中在同一时刻只会有一个事务。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: Oracle与MySQL中“可串行化”的对比测试
original: https://blog.csdn.net/zedware/article/details/5529389
tags: mysql oracle
---

Thomas Kyte (Oracle 世界中那个著名的 Tom)在“Oracle 9i&10g编程艺术”一书中为了说明事务的隔离级别,提供了一些例子。这里我们来看看“可串行化”级别下的表现。
Expand Down
1 change: 1 addition & 0 deletions _posts/2010-08-27-Again, Notes on Alignment.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: Again, Notes on Alignment
original: https://blog.csdn.net/zedware/article/details/5844522
tags: c
---

Alignment 是编程时比较普遍的问题。例如采用 C/C++ 之类的语言进行编程时经常要考虑不同 CPU 体系结构带来的字节对齐问题,有时甚至要考虑 cache line 的对齐问题,以避免不必要的性能损失。不幸的是,随着硬盘技术的发展,它也出现了 Alignment 的问题。因为扇区大小从以前大家熟知的 512 Byte 增长到了 4096 Byte:[http://bugs.gentoo.org/show_bug.cgi?id=304727](http://bugs.gentoo.org/show_bug.cgi?id=304727)
Expand Down
1 change: 1 addition & 0 deletions _posts/2010-09-05-heap mgmt and multi-threaded..md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: heap mgmt and multi-threaded.
original: https://blog.csdn.net/zedware/article/details/5865181
tags: c
---

Refereces:
Expand Down
1 change: 1 addition & 0 deletions _posts/2011-04-09-PORTABLE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: 可移植性真的很重要:on shell and tr
original: https://blog.csdn.net/zedware/article/details/6311400
tags: shell
---

道理很简单,但是不小心造成的麻烦会很大!
Expand Down
1 change: 1 addition & 0 deletions _posts/2011-06-01-GNUDOT.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: 状态转换图和目录结构图
original: https://blog.csdn.net/zedware/article/details/21339839
tags: dot
---

```
Expand Down
23 changes: 15 additions & 8 deletions _posts/2011-08-07-有关系统性能优化的一点思考.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,28 @@
layout: post
title: 有关系统性能优化的一点思考
original: https://blog.csdn.net/zedware/article/details/6667214
tags: perf
---
        系统性能优化的目标就是“更高,更快,更强”。系统性能优化是每个工程师都可能遇到的问题。这个问题非常容易理解,所以不管是技术人员还是非技术人员都可以就此谈谈自己的见解。系统性能指标通常都可以转换为一个数字,例如:高铁的平均时速为380公里/小时,GDP增速要超过10%,IOPS要达到100万,开机时间要少于10秒。可是,如果只是一味的追求数量,而要不顾及质量,甚至要牺牲质量,那将走向一条充满风险的不归路。片面追求数量的典型例子包括中国的GDP、高铁、论文等。        系统性能优化可能存在于产品的不同阶段。例如系统部署后的性能优化、系统开发后的Benchmark测试、系统开发中的性能对比也优化。所有这些优化看起来粒度不同,目的也不同,但是都有章可循。粗略的说来,提高性能要遵循的一般步骤为:
系统性能优化的目标就是“更高,更快,更强”。系统性能优化是每个工程师都可能遇到的问题。这个问题非常容易理解,所以不管是技术人员还是非技术人员都可以就此谈谈自己的见解。系统性能指标通常都可以转换为一个数字,例如:高铁的平均时速为380公里/小时,GDP增速要超过10%,IOPS要达到100万,开机时间要少于10秒。可是,如果只是一味的追求数量,而要不顾及质量,甚至要牺牲质量,那将走向一条充满风险的不归路。片面追求数量的典型例子包括中国的GDP、高铁、论文等。        系统性能优化可能存在于产品的不同阶段。例如系统部署后的性能优化、系统开发后的Benchmark测试、系统开发中的性能对比也优化。所有这些优化看起来粒度不同,目的也不同,但是都有章可循。粗略的说来,提高性能要遵循的一般步骤为:
1、确定系统性能的度量指标。
2、确定如何测量系统性能的度量指标。
3、如果测量出来的指标已经达到要求,则继续步骤7。否则继续步骤4。
4、寻找系统性能的瓶颈。
5、消除系统性能的瓶颈。
6、测量改进后系统的性能。继续步骤3。
7、结束。
        第一步,确定系统性能的度量指标。这是最基础的也是最先要做的一步。试想,如果我们连什么叫性能好,什么叫性能不好都搞不清楚,后面的事情将怎么开展?确定指标需要根据具体的工作来定。例如业务要求的可能是提高某个具体业务流程的性能,也可能是针对某个测试集的性能。常见的性能指标有某个业务流程的响应时间,整个系统的吞吐量等。
        第二步,要明确如何来测试系统的这些指标。度量指标必须明确并可以比较容易的测量,千万不能弄成德育指标。
        第三步,略。
        第四步,寻找系统性能的瓶颈。这一步非常重要,也是实际系统开发中最花费脑力的一步。所谓的瓶颈,就是在它上面做改进之后,使得度量指标可以得到最大改进的部分。假设我们要优化总体执行时间,某一个模块的执行只占整个时间的1%。假设我们费了九牛二虎之力,将它提高了十倍,则整体的执行时间才提高了:1 - (1%/10 + 99%) = 0.9%。这不是我们想要的结果。
        第五步,消除系统性能的瓶颈。如果前一步做得很准确,这里就是对症下药了,有可能需要较多的体力劳动,投入较多的开发时间。
        第六步,测量改进后系统的性能。至于我们在第四步找到的是不是瓶颈,在第五步开的药方到底对不对,还需要测量和分析来验证。很多时间,寻找性能瓶颈、消除系统性能瓶颈都不是一件一蹴而就的事情,需要来来回回折腾很多次。
        系统性能优化的范围可能很大(例如从处于上层的应用的角度考虑),也可能很小(例如从系统中某个具体的小模块去考虑)。考虑的范围越大的时候,可能的优化方法就越多。例如对于一个已经部署完毕的Web应用,用户可能并不关心你是从应用逻辑、数据库、操作系统、网络、存储的哪个层次做的优化(不过实际应用中数据库的调优余地可能最大)。对于Exadata等盒子类产品,用户关心的是TCO,更不管里头哪些地方做了优化。

第一步,确定系统性能的度量指标。这是最基础的也是最先要做的一步。试想,如果我们连什么叫性能好,什么叫性能不好都搞不清楚,后面的事情将怎么开展?确定指标需要根据具体的工作来定。例如业务要求的可能是提高某个具体业务流程的性能,也可能是针对某个测试集的性能。常见的性能指标有某个业务流程的响应时间,整个系统的吞吐量等。

第二步,要明确如何来测试系统的这些指标。度量指标必须明确并可以比较容易的测量,千万不能弄成德育指标。

第三步,略。

第四步,寻找系统性能的瓶颈。这一步非常重要,也是实际系统开发中最花费脑力的一步。所谓的瓶颈,就是在它上面做改进之后,使得度量指标可以得到最大改进的部分。假设我们要优化总体执行时间,某一个模块的执行只占整个时间的1%。假设我们费了九牛二虎之力,将它提高了十倍,则整体的执行时间才提高了:1 - (1%/10 + 99%) = 0.9%。这不是我们想要的结果。

第五步,消除系统性能的瓶颈。如果前一步做得很准确,这里就是对症下药了,有可能需要较多的体力劳动,投入较多的开发时间。

第六步,测量改进后系统的性能。至于我们在第四步找到的是不是瓶颈,在第五步开的药方到底对不对,还需要测量和分析来验证。很多时间,寻找性能瓶颈、消除系统性能瓶颈都不是一件一蹴而就的事情,需要来来回回折腾很多次。

系统性能优化的范围可能很大(例如从处于上层的应用的角度考虑),也可能很小(例如从系统中某个具体的小模块去考虑)。考虑的范围越大的时候,可能的优化方法就越多。例如对于一个已经部署完毕的Web应用,用户可能并不关心你是从应用逻辑、数据库、操作系统、网络、存储的哪个层次做的优化(不过实际应用中数据库的调优余地可能最大)。对于Exadata等盒子类产品,用户关心的是TCO,更不管里头哪些地方做了优化。
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: MySQL嵌入式版本的小程序例子
original: https://blog.csdn.net/zedware/article/details/18818045
tags: mysql
---

MySQL 嵌入式版本越来越式微了。碰巧有个小应用用到了它,顺便记录一下。
Expand Down
1 change: 1 addition & 0 deletions _posts/2014-01-29-MySQL thread pool.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
layout: post
title: MySQL thread pool
original: https://blog.csdn.net/zedware/article/details/18862813
tags: mysql
---

### 这是 Oracle MySQL 的实现:http://mikaelronstrom.blogspot.com/2011/10/mysql-thread-pool-summary.html
Expand Down
Loading

0 comments on commit c19dddd

Please sign in to comment.