糖尿病の合併症には、インスリンの作用の高度な不足によって起きる急性の合併症と、長期にわたる慢性的な高血糖の結果起きる慢性の合併症とがある。前者には、糖尿病昏睡、感染症、後者には糖尿病網膜症、糖尿病性腎症、糖尿病神経障害、糖尿病足病変、動脈硬化性疾患がそれぞれあげられる。
図 1: 第2期糖尿病性腎症の早期診断基準
図 2:糖尿病性腎症の病期分類と主な治療法
腎症の診断のための検査として、尿中アルブミン排泄量(早期尿、随時尿、24時間尿を尿クレアチニン値で補正)、尿蛋白定量、クレアチニンクリアランスなどがあげられる。
糖尿病が発症すると、高血糖により糸球体が傷害され、内皮細胞とメサンギウム細胞の過形成、上皮細胞の肥大により糸球体容量が増加し、代償性のGFR上昇が見られる。この時点で強力に血糖コントロールを行なえば、腎臓の変化はまだ可逆的なので腎臓は正常の状態に戻ることができる。
次第に、傷害された上皮細胞が失われて密度が低くなり、機能ネフロンが次々に失われ、上皮細胞の退縮が顕著になり、微量アルブミン尿が見られるようになる。この時期では、すでに上皮細胞、ネフロンが失われ始めているため、降圧治療が必要となり、130/80mmHgが目標値となる。
ネフロンの傷害が顕著になると、持続性の蛋白尿が見られるようになる。この時点では、代償性に、ネフロン一つあたりのGFRが増加しているため、依然GFRの低下はあまり見られない。蛋白摂取はGFRを15-40%程度上昇させるので、すでに代償性にGFRが上昇し、負荷のかかっている数少ない正常なネフロンを更に傷害する。このため、この時期からは、第2期の治療法に加えて、たんぱくの摂取制限が必要となる。
ネフロンの傷害がすすみ、GFRが減少しはじめ、この期からは、降圧治療の目標値が125/75mmHgとなる。この時期は、1日当たりの尿中たんぱくが1g以上である。
血清中クレアチニンが上昇し、GFRが著明に低下しはじめる。正常に機能するネフロンはほとんど存在せず、透析の導入も視野に入る。
透析の導入であるが、5年生存率は50%程度と非常に低く、この病期に入らないよう努力する。以上の病期においての降圧薬として、ACEIやARBが第1選択であり、GFRの増大を防止し、糸球体内圧を低く保つことで腎機能低下を防ぐことを目標とする。
1,441名の1型糖尿病患者を対象とし、強化療法により網膜症発症、進展、微量アルブミン尿出現、顕性腎症発症、神経発症が有意に抑制されることがわかった。/血糖コントロールによる合併症の発症・進行抑制効果が、その後も持続することがわかった。
110名の2型糖尿病を対象とし、2型糖尿病患者における厳格な血糖コントロールの有効性が初めて実証され、細小血管障害発症阻止のための適性コントロール目標は、空腹時血糖値<110、食後血糖値<180、HbA1c<6.5%である。
2型糖尿病5102名を対象とし、血糖および血圧を強力にコントロールすることで合併症は減り、強化療法群(HbA1c 7.0%)では、一般療法群(HbA1c 7.9%)に比べてリスクが減少し、厳格な血圧コントロール群(144/82mmHg)では、ゆるやかな血圧コントロール群(154/87mmHg)に比べてリスクが減少することがわかった。
That's not helpful. When a project doesn't release a new version, some people say "Oh, don't use it! They don't release new versions!" When a project does release a new version, some people say "Oh, don't use it! It's not perfect yet!" Meanwhile, the so-called reliable state of the art is a jumble of Perl which writes cross platform shell scripts to install Perl code, and you customize that by writing a superclass from which platform-specific modules inherit pseudo-methods which use regular expressions to search and replace cross-platform cross-shell code, with all of the cross-platform and cross-shell quoting issues that entails. I wish I were making any of this up. (I wrote tests for part of it.) This is why we can't have nice things. -- chromatic -- "Re: Module::Build 0.30 is released" ( http://www.nntp.perl.org/group/perl.perl5.porters/2008/09/msg140206.html ) Let me walk you through a quick example. To make this example as simple as possible, I'm going to imagine a very predictable programmer, John, whose whole job is writing those one-line getter and setter functions that inferior programming languages require. All day long this is all he does: private int width; public int getWidth () { return width; } public void setWidth (int _width} { width = _width; } I know, I know... it's a deliberately dumb example, but you know you've met someone like this. Anyway. Each getter or setter takes him 2 hours. So his task estimates look like this: {2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ... } Now, this poor guy has a boss who interrupts him every once in a while with a two-hour conversation about marlin fishing. Now, of course, John could have a task on his schedule called "Painful conversations about marlin," and put that on his timesheet, but this might not be politically prudent. Instead, John just keeps the clock running. So his actual times look like this: {2, 2, 2, 2, 4, 2, 2, 2, 2, 4, 2, ... } And his velocities are: {1, 1, 1, 1, 0.5, 1, 1, 1, 1, 0.5, 1, ... } -- Joel Spolsky -- "Evidence Based Scheduling" ( http://www.joelonsoftware.com/items/2007/10/26.html )