「トランザクション」を含む日記 RSS

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

2019-05-28

適当発言

最近特定技術への拘りがなくなってきた。

最近レバレッジが効く言語フレームワークを好きになるようになってきた。

もう言語何でもいいわ。やっぱ静的言語がいいのと十分に熟練度がついてきたのでAPI開発ではGolang使って開発するのは良い。PHP(Laravel)、Ruby(Rails)はやはり生産性が高いので良い。ScalaMonad Transformerを使ってモナドスタック解決していく程度あれでやっていき、あまり悩まないような構成になっていればサクサクやっていけそう。

実はJavaが一番いいんじゃないか…。Springガッツリやったこと無いけど、トランザクションとかもいい感じに効いてくれそうだし、そこそこ生産性高そうだし。

知らんけど。

なんでもいいや。

2019-05-21

池袋暴走死亡事故トランザクションの中での悪い奴

最も罪深いのは運転手だが、悪は「上級国民上級国民!」と加害者家族を的にして石を投げまくる人間にあると思うんだよ。

何故ならそれらの5割くらいがやりたいことは被害者の救済でなく、上級国民が叩かれること、没落を見て日ごろの留飲を下げたいことなんじゃないかと。

いや、自然だよ。人は自分のために行動するからな。でも被害者を『利用して』加害者属性を持つ人間を叩く行為は悪だろ。

被害者家族気持ちとして、今こういう時に世論が石を投げてくれるのは正直なところ「もっとやってくれ」と思うだろう。俺なら思う。

でも時間がたち先方と話したり考えたりするなかで、温度感は変わってくる。世論温度感がズレてくる。

そうなったとき当事者である自分を置いてけぼりにして石を投げ続ける人間に疑問がでる。てかイラついてくる。「おめーら関係ないだろ!」って。

でも強くは言えない。自分もかつてそれを望んでいたし、一応「自分たちのために」やってるという建前が向こうにあるから

温度感がズレれば矛先を変えるのは早い。「お前らだけの問題じゃない!」「お前が良ければいいって話じゃない!」「言いくるめられた!」「鈍感なんだ!」

果ては被害者叩きに到達する。(そういやこの前性別確認インタビューとかあったな)

俺は、復讐ってのは正しい感情だと思ってる。例えば今被害者家族運転手を殺しても、それは罪だが、悪ではないと思う。(そして罪だから償う必要がある)

だが何かに便乗して(ましてや人の死に便乗)、自分欲求のはけ口に誰かを攻撃したりすることは、悪だと思っている。

そういう攻撃をすることを、俺は悪だと思うから、それをやめて、再発防止の議論をしてほしいと思うんだ。被害者のためって言うなら、すべきはそれじゃないか

攻撃にくらべてこれは面倒くさいし欲求も満たせない。でも面倒なことをやるなら、それは確かに人のためだと言えるんじゃないか


罪を裁くのは裁判だ。妥当で公正なものを。それが人類にはハードルが高いのは分かる。しかし、頼む。

2019-04-10

anond:20190410160005

QRスマホ(読取装置)と電波(決済システムとの通信)が要るだろうが。

トランザクションとやらも発生するだろう?違うのか?

増田どもって、片方ばかり担ぐのな、普段から思考が偏ってる連中。

anond:20190410155649

Felicaリーダーの事ならその通りだが、Felicaで決済するためには読み取ったカード情報からなんか決済サーバーに決済トランザクション情報を送ったりなんだりせなあかんのやで。

まりPCが無いとダメなんだが、多分2019年現在でもそういうFelica決済を行えるPOS端末は月額1万円切るか切らないかくらいの費用が掛かるはず。

それよりは安いし導入しやすいやろ。

2019-03-24

anond:20190324094739

SQLアンチパターンではないが、デッドロックについても投げっぱなしのあのSELECT FOR UPDATEの説明はなんなのかね。

1回のトランザクションでupdateを2回発行する場合と1回のSQL複数行のアップデートをする時はデッドロックリスク考慮するってだけで、かなり初心者にはありがたいと思うんだけどね。

1回のトランザクション複数回update文を投げるケース

tA =# begin;
tA =# update t1 set column = value where id = 1;

tB =# begin;
tB =# update t1 set column = value where id = 2;

tA =# update t1 set column = value where id = 2;
tB =# update t1 set column = value where id = 1;
tB =# ERROR:  デッドロックを検出しました

1回のSQL複数行のアップデート文を発行するケース

tA =# begin;
tA =# update t1 set column = value where id = 1;

tB =# begin;
tB =# update t1 set column = value -- update all record

tA =# update t1 set column = value where id = 2;
tA =# ERROR:  デッドロックを検出しました

あと、先勝ち後負けを実現するのはSELECT FOR UPDATEではなく楽観的ロックな。

tA =# begin;
tA =# select updated_at from t1 where id = 1;
         updated_at         
----------------------------
 2019-03-24 06:17:37.952893

tB =# begin;
tB =# select updated_at from t1 where id = 1;
         updated_at         
----------------------------
 2019-03-24 06:17:37.952893

tA =# update t1 set column = column - 1 where id = 1 and update_at = '2019-03-24 06:17:37.952893' and column > 0;
UPDATE 1
tB =# update t1 set column = column - 1 where id = 1 and update_at = '2019-03-24 06:17:37.952893' and column > 0;
UPDATE 0

MySQL存在しないレコード更新しようとするとギャップロックになるから注意な。

SQLアンチパターンコピペするアンチパターン

キーレスエントリー(外部キー嫌い)

外部キー嫌いがアンチパターンなのは同意だが、間違った外部キーの使い方するほうがよっぽどアンチパターンじゃないか

外部キー貼らなかったことによって、俺はこんな被害だしたぜっての是非教えてほしい。

すぐに思いついたケースは

とかを思いついたがこんなケースで合ってるのか?こんなケースより間違った外部キーの使い方したほうが家に帰れなくなるケースのほうが多いと思うぞ。間違った使い方をしていて、システムが太ってくるとこんなケースが出てくる。

特に下2つは害悪で、SQLアンチパターンコピペして、「おまえらw外部キー嫌いはアンチパターンだぞwww」ってやるのもいいけど、同じくらい間違った使い方を注意喚起したほうがいいと思うよ。DB識者のなかでは「そんなの常識w」かもしれないが何もしらない初心者が真似をしてお家に帰れなくなるのは辛くないか

そんな経験していると、DB初心者は「せや!ユーザテーブルに退会フラグ論理削除フラグ持ったろwww うはw天才www」とかなって今度は削除フラグ持つなおじさんが出てくるぞ。しまいにはこれですよ。

http://b.hatena.ne.jp/entry/s/qiita.com/ponkotuy/items/6049388d564fb4385f4e

初心者どうしたらいいんでしょうね(*_*) 是非、DB識者には明るい未来を示して欲しいね

俺?俺はAndroidエンジニアSQLiteは使わないか関係いね

RDB初心者の俺が恐れ多くも案を出すと、FK作成する前に、そのテーブル性質予測することが大事なんじゃないかね?大量に発生するログデータなのか、大事トランザクションデータなのか、第2正規化しただけのただの情報テーブルなのか。大事トランザクションデータだったら親が削除された時にどこにどうやって退避するか。大量のログデータだったら、親が削除される時どうアプローチするか。とか恐れ多くも予測するね。

ちなみに外部キーいかER図出せないってのはそれはツールの作りであって、FK制約とは関係ないんじゃないの。バリデーション(外部キー)はセキュリティ対策(ER図を作成する)の為、実装するってのと個人的に同じことだと思っている。

から先ずは外部キー使用していなくて「こんな被害を出した」ってのを聞いてみたい。

2019-03-17

anond:20190317195914

用途の違い

マスター辞書みたいなので社員コード社員名とかを対応させる表

トランザクションは日々の処理だから日時の売上データ等を格納する

2019-02-06

COBOLってこんな言語

日経xTECHの元記事を読んでもCOBOLの特徴があんまり伝わってこない感じだし、かといってそれをディスってもしょうがないので、書いてみた。

https://anond.hatelabo.jp/20190205192741

COBOL本質的にはDSLなんだけど、一見汎用プログラミング言語に見えてしまってRubyPythonなんかと比較するのが誤解のもとではあると思う。今の人でも知ってそうなCOBOLに似ている言語はたぶんSQLで、データを処理するための専用言語。ただ、SQLは頑張ればすごく複雑なこともできるパワフルな言語で、だからこそ現代でも生き延びているわけだけど、COBOLはわりとシンプルデータ処理を想定している感じ。

SQLだけでアプリケーションを作れないのは触ったことある人なら誰でもわかると思う。普通JavaRubyで全体の流れを記述してデータベース入出力をSQLで書く。COBOLもそんな感じで、全体の流れをJCLやShellスクリプト、あるいはJP1のような運用管理ソフトで書く。SQLの1個の処理に相当するのがCOBOLコンパイル単位で、それごとにソースファイルが分割される。ひとつソースファイルに2個以上の処理を書くこともできるけど普通はしない。ここまで理解すると古いCOBOLに1ファイル内のすべての処理に影響するグローバル変数しかないのや、今のCOBOLコンパイル単位をまたぐ真のグローバル変数がないのも、それほどクリティカルではないことがわかると思う。もし、本当に複数の処理にまたがる値が必要なら、データベースに格納してしまえばいいんだし。

で、SQLでいうところのデータベースに相当するのがCOBOLではデータファイルsedawkテキストファイルCSVファイルを行ごとに処理するのとちょっと似てるけど、COBOL場合は固定長ファイルという点が違う。改行文字は入ってなくて、たとえば150バイトごとに次のレコードみたいな形式。これの1レコードごとに何月何日何時に〇〇という商品を□□円で売ったとか書いてあるのが典型的データの内容。それを集計して今日は〇〇が何個売れて売上がどれだけあったとか、出金合計がいくらで入金合計がいくらで、みたいな財務諸表を作ったり。SQLと同じように税率なんかが書いてあるマスタデータと、日々の売り上げが書いてあるトランザクションデータがあって、突き合わせたりということもする。こういう集計処理だからUIはなくて、夜中に自動起動するようなバッチプログラムが主な使われ方。(混乱するから余談だけど、今のCOBOLSQLを使って普通RDBにもアクセスできる。ただ使い方としては、RDBファイル処理→ファイル処理→ファイル処理→ファイル処理→ファイル処理→RDBみたいに、最初最後だけみたいなのが普通

入出力がファイルから今の感覚で考えるとアクセスは遅い。でもメリットもあって、1回に1行しかメモリに乗せないからどんな巨大なデータでも時間さえかければ処理できる。それこそ国民ひとりひとりの年金データとかね。あと、途中でバグ不正データで止まってもデータを失うのは最小限で済むので復旧が比較的楽だったり。

データベースの話に戻ると、テーブル定義はどこに書いてあるかというとデータファイル側ではなくてCOBOLプログラム側、というのがSQLと一番違うところかも。つまり、このデータファイル構造はこれこれこうなっていると想定して読みます、とソースコードに自分で書く。当然実際のデータ構造がそれと違ってたらおかしくなる。

まあそんな感じで80年代くらいに会計処理をする目的だったら悪い言語ではなかったので、銀行官公庁とか、電力水道ガスといったライフラインを扱う大企業がこぞって導入して今に至る感じ。普通大企業は途中でSunかに置き換えてその後Linuxクラウドさらに置き換えたりしたけど、最初に作ったシステムが大きければ大きいほど、重要であれば重要であるほど現代的な環境に置き換えられないというのが今の課題

2018-12-20

自分デッドロック対策トランザクションかけてる時は、primary key昇順で更新するように気をつけるてるんだよ、

でも他の人はselect ... for updateで別トランザクション更新後の値を取得しつつデッドロック対策してて、自分もその書き方に直すとなると結構手間だな

2018-11-28

チケット転売技術的に防ぐアイディア

チケットを「そのチケットの何倍もの価値を引き出せる秘密鍵の所有者」に販売することで、転売を防ぐというアイディア

 

話を具体的にするためにビットコイン説明する。

・1000円のチケット販売すると、チケット購入者が持つ「1万円以上が入ったビットコインアドレス」に結び付けられる。

・この1万円は特に問題が起きなければ常に購入者の所持しているものであり、デポジットのように一時的販売者に渡す必要はない。

チケット購入者は、チケットを利用する際にこのビットコインアドレス秘密鍵を使って送金トランザクション作成することでチケットを持っていることを証明する。

・その瞬間にビットコインアドレスに入っている金額が1万円未満になった場合、そのチケット無効判断される。

・これは単に秘密鍵を持っていることの証明なので、その送金トランザクションは実際に処理される必要はなく即座に破棄していい。

 

これによって、いくつかの転売防止効果が期待できる。

1つ目の防止効果は、1000円のチケット譲渡するときに1万円が引き出せる権利とセットでないとそれを譲渡できなくなるというもの転売屋はチケットを売った後に客が1万円を持ち逃げするリスクを負う。

2つ目の防止効果は、転売から購入したチケット転売屋がいつでも無効化できるチケットだというもの転売はいつでも1万円を引き出せる秘密鍵を所持しているため、客は購入したチケット無効になるリスクを負う。

3つ目の防止効果は、1000円のチケットを100枚購入するためには、100万円の価値を持っている必要があるという点。単純に買い占めがしづらくなる。

2018-08-29

anond:20180829102525

言うてNoSQLでアクロバティックなトランザクション処理するよりは大人しくRDB使うやろ。

実際google検索したときに出てくるリンクデータをどういうデータだと位置付けているかは知らんけど。

2018-08-27

anond:20180827112309

1b

明確に違法性のあるトランザクションがあって、一刻も早く消さないと深刻な損害があると仮定した時、誰がどう対応するのか、できるのか。色々探したけど見当たらない。

The DAO 事件

web3.0が胡散臭く見えて仕方ない話

『web3.0ってなんぞ』という方はとりあえず↓など参照しつつ。

【事例で解説】「Web3.0」とは何か?普及するのか?

http://www.ikedahayato.com/20180219/74516919.html

まぁ新しいもの忌避感を感じるのは当たり前だし、Twitterやらを『中央集権的』なんて書くのはひどい印象操作でムカつくって感情的反発もあるけれど、それにしたってこれどうなの?

論点整理

何より不安なのが、ブロックチェーンを利用することで

1)中央とか管理者といった概念がないよ

2)誰にも改竄できないよ

みたいに謳われている辺り。ほんとにござるかぁ?

1a

P2Pの、暗号化された、ブラックボックス通信が一部のアプリケーションカード決済時だけでなく広く当たり前になると、もう素人セキュリティ対策なんてできなくない? 何処と何を通信してるのか分からないよね。自分情報自分管理できるようになるって謳い文句の逆に聞こえる。何らかの形でプロの助けを得るか、あるいは開き直ってガバガバになるしかないような。

一応は『本人の了承』を取り付けてから個人情報を売り物にする方が幾分マシだと思いますが。

1b

明確に違法性のあるトランザクションがあって、一刻も早く消さないと深刻な損害があると仮定した時、誰がどう対応するのか、できるのか。色々探したけど見当たらない。

仮にそれが、本当の意味で誰にもできないんだとしたら、そんなリスクを抱えたプロトコルは出来損ないだ。

仮にこの叙述が嘘で、『本当は権力者ならごにょごにょできる』としたら、やっぱり出来損ないだ。

2

にもかかわらず看板上は『誰にも改竄できない』って。おい。

ブロックチェーン解説読めば何処にでも書いてある。『仕組み上、割に合わないから誰もやらない』って。

短期的に損する前提なら出来るんでしょ。金銭目的じゃなければ。もちろんそれは一般人が気軽にできる範囲ではない設備投資が前提だけども。

できないは嘘。できる。

お金さえあればできる。

お金のある人だけができる。

……普通にディストピアだよねソレ。

ちっとも良いことを書いていないのに、文章上の味付けで良く見せている。現状みつかるweb3.0の解説にはそういう印象を抱いています

メリットは分かったかデメリットも教えてくれと。

おわり

以上、基礎レベルでの誤解や知識不足はあると思います煽り釣り意図はないので教えてくださる方がいればありがたいです。

2018-08-12

anond:20180812152405

どうでもいいけどマスタやトランザクションにM_だのT_だの接頭辞付けるの習慣あるとこ多いけど見づらいってずっと思ってる

後ろに付けるんじゃ駄目だったんだろうか

2018-05-11

ドルフィンアタックというハッキング手法を知っているか?海の中で流行ってる。

から一ヶ月後、あるVtuberの生配信中に、そのインシデントが発生する。

そうやってスマートアシスタントが一斉にトランザクションを発生させた所へ乗じて、狙いすましたように、闇の者たちが破壊活動を始める。

それが後に6.11事件と呼ばれる出来事の端緒となる。

ネット接続されたあらゆる端末が保持する全データのうち、実に3割が影響をうけ、社会インフラ機能不全に陥る未曾有のサイバーテロにまで発展する。

警告はした。このメッセージを受信した光の増田たちは、今すぐLovelabo::Anonymノードへ参加し、対策を整えよ。

2018-04-27

正規手段で高額高品質サービス提供してほしい業界

個人的には下記の通り。

上記業界商品は、おおよそ同じ金額を払って同じようなパッケージを受け取ることしかできない。

高い金を払ってより高品質パッケージを手に入れることはできない。

安い金を払って正規パッケージを買う機会はある。

商売人が自ら商売を半ば放棄している業界だ。

様々な人に自らの作品と触れてほしい、という思いはうれしい。

ただ、俺としては正規手段もっと金を払って作り手に報いたい。

それは単にオリジナル創作者だけではなく、手に届くまでにかかわってくれているすべての人に報いたい。

でもただ金を寄付したいわけじゃない。商取引として妥当だと思う内容なら、という条件付きだ。

同じ商品無駄複数買ってゴミを増やすとか、余計な飾りに余計な金を払うという方法じゃなく、

商品自体クオリティを上げて余計に金をとってほしい。

アニメなら高画質高品質で、高い金払えば高品質(今だと4Kかな?)のままローカルキャッシュしてオフラインでも閲覧可能とか

漫画なら物理本より高い金額を払えばデジタル版も即日DL可能(電子透かしぐらいなら入っててもいい)になるとか、

既存ビジネスと併存してよりメリットのある高額なサービス提供してくれないものか?

ゲームだと最近拡張パスがセットで高額で売りに出されるのは一般化してきた。

ちょっと前までは絵画を切り取って売っている画像を掲げてドヤ顔批判する人たちもいたが

最近マイクロトランザクションというよりヘイトを集めるサービスが台頭してきたおかげで

ヘイトがそっちに向いているのは個人的にはうれしい。

俺は個人趣味に関しては、高価格で高品質提供してほしい。

ただ、自分ゴミを増やすだけとか余計な飾りとかそういうものに金を払う気はない。

頼むよ、泥棒乞食を追いかけたって一銭にもなりゃしないんだからからちゃんと金を巻き上げる方法を考えてもっと繁盛してくれよ。

より金を払ってでもいいサービスを受けたい人間ちゃんといるよ。

もちろん標準サービスの客より少ないけど、より多くの金をちゃんととれるよ。

これから労働力は減っていく一方なんだから理想を掲げてブラックな働き方するの止めて

効率よく稼いでもっと俺を楽しませてくれよ。

自分趣味にすら払う金を削ろうとする連中より、自分趣味により金を払う連中の意見尊重してくれよ。

別に前者を無視しろってわけじゃない。今後者をガン無視してるんだからもう少しこっち向いてくれ、っと言ってるだけだ。

物理本の流通経路に悪影響を与えたくないってんなら、DL版と一緒に物理本買うことも厭わないよ。

既存流通経路でDL版売ってくれたっていいよ。ゲームは実際そうしてるだろ?

お願いだ、盗人を追いかけるのは警察に任せて、乞食無視して、普通に金持っている人、余計に金持ってる人を相手にしてくれ。

2018-04-10

anond:20180410155641

東日本大震災直後にATMなりが使えなくなって預金残高が確認できない状態

「判子ありゃ10万円までなら下ろさせまっせ!」ってやって、残高以上に引き落とした人がその後ちゃーんと「あんさん残高おかしいことになっておまっせ?」って言われてることからして、銀行の対障害パワーを舐めてはいけないのだよ。

完全にその地銀内で取引完結している人なら可能性はあるけれど、そうじゃない人は基本どんなにあがいてもトランザクションは消えない。恐怖せよ!

anond:20180410154734

マジレスすると銀行系のシステム場合分散台帳とかそんなことを気にせずとも特定トランザクション消失することは無い。単純にあらゆるところにログを仕込んでおいたりして、突き合わせれば消滅したトランザクションでも復活したように見せかけることはできる。

ちゃん運用されてる。角度とか

2018-03-27

anond:20180327085602

逆にいうなら、店舗併設のWi-Fiスポットなんかを利用させるふりしてダミー決済トランザクションを流させるみたいなことも出来るんちゃうかな。(値札張り替える方が楽か)

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