В настоящее время я работаю над доступом к HBase с помощью python3. Способ, которым я занимаюсь, заключается в использовании py4j для вызова API JAVA, которые я пишу для доступа к HBase.py4j: dict to JAVA map
У меня возник вопрос, связанный с созданием объекта Put, который принимает квалификатор и значение.
Я хочу передать словарь в класс JAVA, который ожидает hashmap. Возможно ли это через py4j.
Я не хочу итеративно переводить Put для каждого столбца. Я хочу передать dict в py4j, и он должен быть получен как HashMap на стороне JAVA.
Не могли бы вы некоторые намеки/указатели на то, как это можно сделать ...
делает каждое высказывание как 'т [ "а"] = 0 'посылает некоторые данные через сокет? Я понимаю, что это так. 100 изменений отправят 100 запросов сокетов. Или мое понимание не так? Я хочу создать словарь из 100 элементов в python и отправить его в JAVA для чего угодно :). Я думаю, что второй метод более эффективен для такого случая. Это то, что я понимаю. Пожалуйста, дайте мне знать, если это неверно, или мне что-то не хватает ... – Mayank
Действительно, второе решение является лучшим для использования, которое вы описываете в своем комментарии. Вы правы, что при первом решении 100 назначений приведут к 100 обмену через сокет. – Barthelemy
Последний вопрос. Можно ли получить словарь из функции JAVA, которая возвращает NavigableMap. Байты могут быть HashMap рекурсивно ... Думаю, я должен пойти на simplejson. Что вы предлагаете :) –
Mayank