embulk-parser-poi_excel 0.1.10をリリースしました。
(本当は0.1.8なんだけど、リリースをミスって0.1.10になりましたorz)
機能的には、cell_addressを追加しました。
cell_addressは現在の行以外のセルの値を取得できるものです。
その修正のために久しぶりにGitHubを見たら(なんとびっくり)issueが上がっていたので、それも対応しました。
(特にxlsxファイルにおいて)結合セルが多いと、処理がとても遅くなるというものです。
POIというかExcelの結合セルの仕様上仕方が無いんですが、TreeMapを使ってキャッシュを作ることで高速化しました。
メモリー使用量的に問題になるかもしれないので、search_merged_cellオプションで元の方式と切り替えることが出来ます。
(このオプションは昔からあった(ドキュメントには書いてなかった^^;)もので、元々はfalse,trueで切り替えていたが、今回none,linear_search,tree_searchに変更した)
(追記:よく考えたらあの実装ならTreeMapでなくHashMapでも良かったので、ver0.1.11でhash_searchも追加した)
さらについでに、POIのバージョンを新しくしました。
3.13だったので、3系の最新である3.17に。
既に4系が出ていますが、それはいずれ変更したいと思います。