ガジェカツ~在宅SEのガジェット活動ブログ~

在宅SEな筆者がガジェットネタやIT、プログラミングネタを書き連ねるブログ

開発中TwitterのDB仕様書

Sqlite3を使用。
テーブルはPost管理、ユーザー管理。
またユーザー管理は常に保存する。

Post管理DB(Posts)

  • PostID(INTEGER)
    • PostIDは主キーで0から順番に付けられていく。
  • UserID(TEXT)
    • UserIDは下のUser管理DBと関連づけられた物。
  • ResID(TEXT)
    • ResIDは「clownboyzuzu zuzu clown」のように半角スペースで区切られる。
  • Unread(INTEGER=0,1)
    • Unreadは未読フラグ。0で未読、1で既読。
  • PostDate(TEXT)
    • PostDataは140文字が限界のUTF-8

User管理DB(Users)

  • ID(INTEGER)
    • User管理DBのID=0は常に自分。
  • UserID(TEXT)
  • ScreenName(TEXT)
  • Icon(BLOB)
  • Following(INTEGER=0,1)
  • Followers(INTEGER=0,1)

新規UserIDを見つけた場合は自動的に追加されていく。
また新規レス時には毎回、FollowersとFollowersかどうかをチェックする。
Iconの格納はまだ悩み中。他のいい方法があったら教えて。

他の仕様

Post管理DBはオンメモリーであり、取得Post数が12000を超えた時点で自動的にリセットされる。