# File lib/big_record/connection_adapters/cassandra_adapter.rb, line 103
      def get_columns_raw(table_name, row, columns, options={})
        result = {}

        log "SELECT (#{columns.join(", ")}) FROM #{table_name} WHERE ROW=#{row};" do
          prefix_mode = false
          prefixes = []

          columns.each do |name|
            prefix, name = name.split(":")
            prefixes << prefix+":" unless prefixes.include?(prefix+":")
            prefix_mode = name.blank?
          end

          if prefix_mode
            prefixes.sort!
            values = @connection.get(table_name, row, {:start => prefixes.first, :finish => prefixes.last + "~"})

            result["id"] = row if values && values.size > 0

            values.each do |key,value|
              result[key] = value unless value.blank?
            end
          else
            values = @connection.get_columns(table_name, row, columns)

            result["id"] = row if values && values.compact.size > 0

            columns.each_index do |id|
              result[columns[id].to_s] = values[id] unless values[id].blank?
            end
          end
        end
        result
      end