ビールを飲みながら今年の振り返りを書きます。 家族 今年の4月から2人の娘達がちょい地方の大学に入学することになり一人暮らしを始めた。それに先立って3月半ばに家族で現地に行ってアパート・マンションを探しに行ったのだけど、ちょい地方なので物件が少…
【億万長者の挑戦】正体隠して1億円稼げ!無一文からの90日間ビジネスサバイバル | Ep1. 起業チャレンジ!覆面ビリオネア - YouTube のBBQフェス回を観た後でこれを書いています。面白かった。大変だなぁと思って観てたけど、割と問題点が明確(個人の能力…
今年も完全にリモートワークで引きこもってて同僚とのランチや勉強会の懇親会での雑談が無いので、去年に引き続き生存確認的な意味合いも込めて雑に今年の振り返りをしたいと思います。 お仕事 Treasure Data 9年目です。去年から Digdag – Open Source Work…
普段、年末の振り返りブログを書いてない勢なのですが、今年は同僚とのランチや勉強会の懇親会での雑談が無くなってしまったので、生存確認的な意味合いも込めて今年の振り返りをしたいと思います。 お仕事 Treasure Data 八年目です。前前職であるNaver Jap…
試行錯誤の末、最近焼き方が安定してきたのでまとめておく(下記はレア向けになっているので、ちゃんと焼きたい場合は時間を倍にしてもok)。 肉は出来るだけ厚めなもの 調理の一時間前には冷蔵庫から出す 肉の両面に塩胡椒を振り擦り込む。塩は肉の重さの1%…
すぐに忘れそうなので、メモメモ。 KeyStore openssl pkcs12 -inkey server.key -in server.crt -export -out keystore.pkcs12 keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -destkeypass keypas…
毎回忘れて色々試しては時間を食っている気がするのでメモ。 1. Robocode自体のインストール (See http://robowiki.net/wiki/Robocode/Download) 2. IntelliJで適当にprojectを作り、`Project Settings` -> `Modules (Dependencies)` に `JARs or directory`…
ふと、JVM(TM) Tool Interface 1.2.3 に触れたことがないことに気がつき、少しさわってみたのでメモ。OpenJDKのソースコードの jdk/src/share/demo/jvmti の下に幾つか例があるので、それを試してみることに。ちなみに概要は上記URLのドキュメントの各APIの…
というタイトルですが、具体的には "Rustで拡張ライブラリ全体を書いた" のではなく "Cで拡張ライブラリの本体を書いてその中からRustのライブラリを呼んで、非同期でRust側からの結果を取得" してます。ちなみに、Foreign Data Wrapper (FDW) とは、Postgre…
この記事は Treasure Data Advent Calendar 2015 - Qiita の14日目の記事で、現在12/21です。なぜこの記事がTreasure DataのAdvent Calendarに入っているかというと、Treasure DataのDataTanksというオプションサービスでPostgreSQLが利用されているためちょ…
この記事は、Fluentd Advent Calendar 2015 - Qiita の七日目の記事です。先日、komamitsu/fluency · GitHub というFluentd (in_forward) 用のJava loggerを作ってみました。元々、fluent/fluent-logger-java · GitHub の開発を見ていたのですが、Fluentd ML…
という題で話をしてきました。 db tech showcase Tokyo 2015 | Insight Technology, Inc.www.insight-tec.com スライドはこちら。 Presto in Treasure Data from Mitsunori Komatsu www.slideshare.net
Prestoのコードを眺めていて、com.facebook.presto.execution.SqlQueryExecution#doAnalyzeQuery内で生成されるPlanを見てみたかったのでPrestoのJVMをアタッチしてPlanクラスの中を覗いてみた。対象のクエリはこちら(catalogはtpch)。 select c.nationkey…
int cnt = 800000; { ObjectMapper mapper = new ObjectMapper(); ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); List<String> strList = new ArrayList<String>(cnt); for (int i = 0; i < cnt; i++) { strList.add("01234567"); } System.gc(); Thre</string></string>…
PostgreSQLにはWITH RECURSIVE句というものがあって、これを使うと再帰的な問い合わせが可能らしい。で、一度も使ったことがなかったのでちょっと試しにフィボナッチ数列を生成してみた。 with recursive r(a, b) as ( select 0::int, 1::int union all sele…
JavaでByteBufferへのコピーを行う際の速度を簡単に比較してみました。java.nio.ByteBuffer#put(byte)で1byteずつ書き込んでいくのでなければ大体同じですね。 Heap上のbyte arrayをコピー java.nio.ByteBuffer#put(byte[], int, int) byte[] bs = new byte[…
JavaではJITコンパイルに関連するTypeProfileという機構がありますが、これがどのような状況で取得されるのかちょっと興味があったので簡単に試してみました。komamitsu/TypeProfileTest komamitsu/TypeProfileTest · GitHubChildというinterfaceを継承するC…
Java ™ HotSpot Virtual Machine Performance Enhancements Escape analysis is supported and enabled by default in Java SE 6u23 and later. ということで最近のJVMでは有効になっているEscape analysisですが、こんな記事を見つけました。Richard Burnis…
数ヶ月前から komamitsu/jackson-dataformat-msgpack というのを細々と作ってました。これは何かというと、 msgpack/msgpack-java at v07-develop · GitHub で開発が進められているMessagePack Javaのv0.7系の実装と FasterXML/jackson-databind · GitHub の…
TreasureDataではエンジニア間のコミュニケーションツールとしてHipChatをがっつり使っているのですが、同じくTDで使われているchefのchef-client実行時のエラーをHipChatの部屋に流すようにしてみました。という小ネタ。Chefには About Handlers — Chef Doc…
先日、@ Messageのついたunpack対象のclassの定義に public staticとつけていないのが原因だった。— Kumazaki Hiroki (@kumagi) 2014, 2月 28 @komamitsu_tw これ、コンパイル時に怒らせる事ってできないんでしょうか。できないんですよねリフレクションだか…
一ヶ月程前に同僚である @doryokujin 先生からRaspberry Pi(面倒なので以下Pi)を頂いたのだけど、Piに必要なSDカードが手元に無くてすっかり放置していたのですが、満を持してSDカードを買ってきたのでちょっとPiを立ち上げてみた。という話を備忘録的に。…
こんにちは。Fluentd Advent Calendar 11日目担当の @komamitsu です。ワイワイ。Fluentd Advent Calendarにノリで登録したもののfluentd本体やプラグインに余り関わっていないので途方に暮れていましたが、fluent/fluent-logger-java のメンテナンスをして…
OCatraをいろいろ直したり、ベンチマークとってみたり - komamitsu.log で作っていたOCamlのおもちゃ的Webサーバー OCatraをLwtを使うように修正してみた。 1st 2nd 3rd 4th Ave. OCatra (byte) 4238 4424 4299 4285 4311 OCatra (opt) 11806 12384 12381 12…
byte[] -> String 変換のパフォーマンス、とAndroidでCharsetDecoder#decode(ByteBuffer in).toString()が遅い件 - komamitsu.log でAndroidではnew String(byte)の方が速い結果が出たので[https://github.com/OESF/OHA-Android-4.0.3_r1.0:title=コード]…
Android上でMessagePackのベンチマークコードを動かしつつprofile取ってみたら、msgpack-java/src/main/java/org/msgpack/unpacker/StringAccept.java at master · msgpack/msgpack-java · GitHub辺り(CharsetDecoder#decode(ByteBuffer in).toString())で…
Android上でJSONとMessagePackの簡単なベンチマークをとってみた - komamitsu.log の続き。http://syuki.skr.jp/files/201204041/furuhashi-master-last-iso-pdfa.pdf を読んだところ、Unpacker.read(Class)は中間的な動的型付けオブジェクトを生成しないと…
使ったコードはこちら => https://github.com/komamitsu/AndroidMsgpackBenchmark/blob/master/src/com/komamitsu/android/msgpackexample/MsgpackExampleActivity.javaベンチの概要としては、100byte x 50000の配列、100byte(value) x 30000の辞書をJSON, M…
今日はコード書いて無かったので何となくクイックソートを。
実装したことが無かったなぁ、とふと思ったので、ちょっと書いてみた