Hiroaki Sakuma
hiroa****@sakum*****
2005年 4月 2日 (土) 23:22:56 JST
佐久間です. > > 佐久間です. > > > :省略 > > > 3文字ならいかがでしょうか?私も計算して驚いたのですが(^^; > > > [A-Za-z0-9]の62文字 ** 3文字(3乗) = 238,328ページ > > > 十分でしょう。 > > > > MS系OSを考えると,A-Za-zは止めた方がよさそうですね. > > おぉ、そちらを忘れてました(^^; > Win版perlでのmktempはどのようになってるのですかね? > http://search.cpan.org/~tjenness/File-Temp-0.16/Temp.pm > なんて見つけたので楽出来ると思ったのです。 > Win系だと、 > [A-Z0-9]の36文字 ** 3文字(3乗) = 46,656ページ > になりますか。それが溢れたら桁上がりすることにすると。 > いずれにしろOSとかPerlとかDBMの便利な機能を使わない手はないと思うのでそ > れらを前提にID文字を議論した方がよいかなと思っています。 > 数値化はBase64デコードとか手はあると思いますし。 Win版は使ったことが無いのですが,Winでは何かとAaを区別しないようなので,この ままファイル名とかに使おうとすると,ファイルシステムの制限もあったりします. # "temp"と"Temp"は同じファイルになるようです # MSの人が書いたドキュメントやコードでも,大文字・小文字が凄いテキトーらしい # です > > 例えば、将来、本文の内容を表わす > > 短いセンテンス(あるいはキーワード群)を自動的に抽出できるような > > 技術ができて、内容的な共通性に基いて自動的にリンクができるよう > > になれば、題名をどう付けるか、ということはさほど重要ではなくなる > > だろうと思うのです。また、一つのページが > > 複数のキーワードを持っていたり、一つのキーワードが複数のページを > > 指していたりするほうが(脳の連想能力と照らして)自然だと思うのです。 > > なんてアイデアも面白そうなのでおいおい考えてみたい。 確かに,一つのリンクが一つのページしか指さない,というのは固定観念に近いです よね.最近だと,デッドリンクを嫌ってGoogleの検索結果にリンクを張ったりする人 も居るので,自然な考え方だと思います. また,文章を解析して要約を作るような機能は,英語のワードプロセッサなんかだと 実装されてますよね.性能はどうか分かりませんが. ワードプロセッサソフトも,日本語版は大幅に機能が削られてたりするので,知らな い人が多そうです.(MS WORDも日本語版は機能が少ないみたいですね) ただ,こちらも言語依存性が高くなってしまい,i18nを目指すときに障壁になってし まいますね. > > > ファイルシステムだとmktempがあります。RDBMは詳しくないですが、Accessは > > > シーケンシャルもしくはランダムなIDを自動的にふることが出来ますね。他の > > > RDBMもそういったID生成機能はありそうです。この場合、使用できる文字の限 > > > 定はあまりしない方がやりやすいですね。 > > > #ただしURLエンコードされない文字、[A-Za-z0-9_.*-]に限りたい > > > ##mozilla以外で"_.*-"がエンコードされないかどなたか確認していただけま > > > せん > > > ? > > > > RDBMSではシーケンシャルに付ける方法が多いと思います. > > RDBMSでは,データ構造を設計する際,使う,使わないは関係なく,シーケンシャ > > ル > > なIDを付けるのがコツです.単純なSELECT(行選択)だけなら関係ないのですが, > > LEFT > > JOINのようなTABLEを超えたリレーショナルな操作をする際に,シーケンシャルな > > ID > > を付けておいて,INDEXを生成すると動作が速くなるためです. > > その際のIDの桁数に上限はありますかね? > まぁ32bitなら問題はでなさそうですが、おそらく運用しだすと簡単に拡張は出 > 来ないですよね…… RDBMSの場合,AUTO_INCREMENTのキーワードでカラムを作るので,カラムの型依存で すね. カラムの型とサイズは,アーキテクチャとDBによるのですが,MySQLの場合, UNSIGINED INT 4バイト UNSIGINED BIGINT 8バイト なので,INTでもほぼ問題になる数ではなさそうです. http://dev.mysql.com/doc/mysql/ja/numeric-types.html なお,上限に達すると,インクリメントされないようです.1バイトのTINY INTなら 最大が128なので,手動でテストできそうですね(^^; MySQLに限っていうと,型の変更は可能です.ただし,BIGINが最大サイズなので,8 バイトを超えると手に負えませんが,インクリメント数が8バイトを超えるなんてい う使い方は現実的ではないです. # 作ったページが次々消えていくような使い方をしても,HDDの寿命の方が速そうで # す 2^64 = 18E(エクサ) > > なお,Operaでは_.*-はエンコードされません. > ありがとうございます。Firefoxは多分mozillaと同じでしょう。 > IE、safariはどうなのかな? Firefoxもエンコードしませんでした.Lynxもエンコードしないようです. ===================== Sakuma,Hiroaki hiroa****@sakum*****