「トランザクションファイル」を含む日記 RSS

はてなキーワード: トランザクションファイルとは

2020-01-08

無印良品ウェブサイトが止まってる件について思うこと

この件⇒ https://togetter.com/li/1452558

ユニケージbashパイプで作られた、RDBMSを使わずテキストファイルによる空白区切り行志向レコードへのデータ処理(だいたいプログラム1本の処理内容がメインフレームCOBOLのそれと同じくSQLクエリ1個に相当する)で、同形式によるマスタとトランザクションファイルRDBMS内部のredoログに相当)を使う(データに含まれる空白文字0x20はアンダーバー0x5Fに置換する、アンダーバー複数存在するデータ場合どう扱うかは知らない)

開発と更新は早いんだけど参照が(テキストファイルなので)インデクスが効かないためシャーディングするしかなく、要するに検索機能の柔軟性がなく、リアルタイム性を損なう

おそらく基幹系というか在庫管理をユニケージでやっているので、ウェブサイト自体はユニケージ実装されていないかもしれないけど、しかし根幹に上記のような手作りデータベース実装があるし、RDBMSに移行するとなると全部を止めてマスタとトランザクションファイルマージしてインポートすることになる

追記トランザクションファイルのマスタへのマージ営業時間後の日次バッチとかでやるはず

システムを止めている間も店舗運営を続けているなら、たとえば店頭在庫を潤沢に積んだうえで、店舗間での在庫の融通は禁止し、店頭での売り上げ分はどこかでRDBMSに計上しなければならない

追記テキストファイルに対するインデクスをつくって行頭へのシーク高速化をすること自体はもちろん一般的には可能だけど、ユニケージ方法論だとそれをする標準的方法はないはず。ユニケージRDBでもNoSQLでもなく、バイト位置でのシークという操作自体がない世界なので。sedとかで行の差し替えをした場合SQLのUPDATE相当)当然行頭のバイト位置が変更した行以降ですべてずれてしま可能性があるのでインデクスの更新がひどく非効率になる

追記文章下手ですみません。ユニケージの良いところはRDBMS実装の基礎を理解できるところ(これはDate先生教科書を読んだりOracle Silverの勉強をしたりSQLの書き方を工夫したりクエリプランを読んだりするよりずっと効率的に学べる、ただしファイル編成法の知識ちゃんとした教科書で補う必要がある)、アプリケーション実装技術について横断的な理解ができるところだと思います(USP研究所シェルスクリプトマガジンには実際勉強になりそうな記事が多い)自分はユニケージへの移行案件を生き残れなかったクチなので。。

追記:Tsukubaiは好きになれませんでした。

追記anond:20200115152201

 
ログイン ユーザー登録
ようこそ ゲスト さん