Todd Lipcon has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/15560 )
Change subject: Add functionality to serialize a RowBlock into columnar format ...................................................................... Add functionality to serialize a RowBlock into columnar format This adds the core functionality to take a RowBlock and convert it into a set of buffers for each column: the cell data, the null bitmap, and the indirect (string) data. This also updates wire_protocol-test to add coverage for nulls and unselected rows, and adds a comparison benchmark. The columnar code path is 4-5x faster in the best case, and in the worst case only 30% slower that the existing row-wise code path. Some follow-up commits will add further optimizations. Change-Id: I287a8aa6736f19816b0edbe16409c01f35c0319e Reviewed-on: http://gerrit.cloudera.org:8080/15560 Reviewed-by: Andrew Wong <aw...@cloudera.com> Tested-by: Kudu Jenkins --- M src/kudu/common/CMakeLists.txt M src/kudu/common/columnar_serialization.cc M src/kudu/common/columnar_serialization.h M src/kudu/common/wire_protocol-test.cc M src/kudu/util/faststring.h 5 files changed, 510 insertions(+), 116 deletions(-) Approvals: Andrew Wong: Looks good to me, approved Kudu Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/15560 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I287a8aa6736f19816b0edbe16409c01f35c0319e Gerrit-Change-Number: 15560 Gerrit-PatchSet: 8 Gerrit-Owner: Todd Lipcon <t...@apache.org> Gerrit-Reviewer: Andrew Wong <andrew.w...@cloudera.com> Gerrit-Reviewer: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: Grant Henke <granthe...@apache.org> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tidy Bot (241) Gerrit-Reviewer: Todd Lipcon <t...@apache.org>