mysql:7428
From: "Kondo Tatsuya" <"Kondo Tatsuya" <konet@xxxxxxxxxx>>
Date: Wed, 9 Apr 2003 01:26:45 +0900
Subject: [mysql 07428] Re: 数値型の許容範囲を越えそうな場合の処理方法
途中で送信してしまいました。 再送いたします。 ---------------- 近藤です。 森口さん、かわじさん、返信ありがとうございます。 かわじさん > とかして、data_name ごとに date_id を採番するやり方です。 > http://www.mysql.gr.jp/mysqlml/msg.cgi?ml=mysql&id=4267 参考になります。^^ 情報ありがとうございます。 森口さん > 1秒間に1000件ずつ増加し続けても上限に達するまでに5億年以上かかります。 > というわけでBIGINT(20)なら「date_idに格納出来る許容範囲を越えてしまう」 > ことまで普通は考えなくても良いのではないでしょうか。 はい、まったくその通りですね。 現状のDB構造では、多くても1時間で2000レコード程度の増加なので、 「date_idに格納出来る許容範囲を越えてしまう」は気にしなくて済みそうです。 ですが、1時間で2000レコードの増加は多いですよね? 現在、日時・時間別のアクセスカウンターを作成しています。 ------------------------------------------------------ CREATE TABLE count_tb ( count_id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, count_user_id CHAR(255) NOT NULL, count_date BIGINT(20) UNSIGNED NOT NULL, count_time TINYINT(2) UNSIGNED NOT NULL, count_pc BIGINT(20) UNSIGNED DEFAULT 0 NOT NULL, count_i BIGINT(20) UNSIGNED DEFAULT 0 NOT NULL, count_j BIGINT(20) UNSIGNED DEFAULT 0 NOT NULL, count_e BIGINT(20) UNSIGNED DEFAULT 0 NOT NULL, RIMARY KEY (count_id), INDEX (count_id) ) ------------------------------------------------------ CREATE TABLE user_tb ( user_id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, user_name CHAR(255) NOT NULL ) insert user_tb set user_name = '田中次郎' insert user_tb set user_name = '近藤竜也' insert user_tb set user_name = '山田太郎' ------------------------------------------------------ CREATE TABLE date_tb ( date_id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, date_date DATE NOT NULL ) insert date_tb set date_date = '2003-4-1' insert date_tb set date_date = '2003-4-2' insert date_tb set date_date = '2003-4-3' insert date_tb set date_date = '2003-4-4' insert date_tb set date_date = '2003-4-5' ........ ------------------------------------------------------ CREATE TABLE time_tb ( time_id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, time_date TINYINT(2) TIME NOT NULL ) insert time_tb set time_date = 0 insert time_tb set time_date = 1 ........ insert time_tb set time_date = 23 ------------------------------------------------------ 現在、この様に作成しているのですが、これだと、user_tb すなわち、 アクセスカウンターを管理する者が2000人になると、最高で、 1時間2,000レコードがinsertされます。 アクセスのカウント自体は、update なので心配ないのですが.... DBの構造自体に問題があるのでしょうか?。 よろしくお願いいたします。
7409 2003-04-07 05:12 ["Kondo Tatsuya" <kon] 数値型の許容範囲を越えそうな場合の処理方法 7410 2003-04-07 07:58 ┣[MORIGUCHI Hirokazu <] 7427 2003-04-09 01:11 ┃┣["Kondo Tatsuya" <kon] 7429 2003-04-09 10:02 ┃┃┗["JUNSIK LIM" <koniwe] UNION のようなもの? 7430 2003-04-09 10:52 ┃┃ ┗[Shinya Kawaji <kawaj] 7497 2003-04-16 13:51 ┃┃ ┗["janreno" <janreno@x] auto_increment でレコードの無しの場合常に 1 から始めたい。 7499 2003-04-16 15:20 ┃┃ ┗[GUSTAV <beatle@xxxxx] Re: auto_increment でレコードの無しの場合常に 1 7500 2003-04-16 15:35 ┃┃ ┗[Isao Tanaka <isao@xx] 7502 2003-04-16 17:00 ┃┃ ┣[<lavlav@xxxxxxxxxx> ] 7505 2003-04-16 18:40 ┃┃ ┗["janreno" <janreno@x] 7506 2003-04-16 18:57 ┃┃ ┣[Isao Tanaka <isao@xx] 7508 2003-04-16 19:05 ┃┃ ┣[GUSTAV <beatle@xxxxx] 7515 2003-04-17 01:16 ┃┃ ┣[とみたまさひろ <tomm] 7518 2003-04-17 01:44 ┃┃ ┃┗["Kondo Tatsuya" <kon] 7519 2003-04-17 10:15 ┃┃ ┗[takeyuki miyagawa <m] 7525 2003-04-17 16:20 ┃┃ ┗["janreno" <janreno@x] 7526 2003-04-17 16:57 ┃┃ ┗[とみたまさひろ <tomm] 7528 2003-04-17 17:35 ┃┃ ┗["janreno" <janreno@x] 7531 2003-04-17 18:20 ┃┃ ┗[とみたまさひろ <tomm] -> 7428 2003-04-09 01:26 ┃┗["Kondo Tatsuya" <kon] 7434 2003-04-10 01:16 ┃ ┗["Kondo Tatsuya" <kon] 7411 2003-04-07 12:32 ┗[Shinya Kawaji <kawaj]