From a3e0d94e2d31ce9786a23e2662032223a657f5f5 Mon Sep 17 00:00:00 2001 From: Ksenia Ozerova Date: Tue, 8 Aug 2023 23:33:59 +0300 Subject: [PATCH 1/3] task1 --- Practice/Ozerova/10/10.2.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 Practice/Ozerova/10/10.2.py diff --git a/Practice/Ozerova/10/10.2.py b/Practice/Ozerova/10/10.2.py new file mode 100644 index 0000000..e01edf0 --- /dev/null +++ b/Practice/Ozerova/10/10.2.py @@ -0,0 +1,30 @@ +import threading + +def fun(x, y): + return x + y + +def add3(arg_new): + for args in arg_new: + x, y = args + res = fun(x, y) + print(f'{x} + {y} = {res}') + +def add_integer(a): + int_thr = threading.Thread(target=add3, args=(a,)) + int_thr.start() + +def add_string(b): + str_thr = threading.Thread(target=add3, args=(b,)) + str_thr.start() + +def add_list(c): + l_thr = threading.Thread(target=add3, args=(c,)) + l_thr.start() + +a = [(1, 2), (3,4)] +b = [('hello', 'bye'), ('Ivan', 'Maria')] +c = [([1, 2], [3, 4]), (['abc'], ['def'])] + +add_integer(a) +add_string(b) +add_list(c) From e31c41e30177975aa80baa4cd12043caa7f314f5 Mon Sep 17 00:00:00 2001 From: Ksenia Ozerova Date: Wed, 9 Aug 2023 16:14:39 +0300 Subject: [PATCH 2/3] task1 --- Practice/Ozerova/11/11.2.py | 22 ++++++++++++++++++++++ Practice/Ozerova/13/13.1 | 24 ++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 Practice/Ozerova/11/11.2.py create mode 100644 Practice/Ozerova/13/13.1 diff --git a/Practice/Ozerova/11/11.2.py b/Practice/Ozerova/11/11.2.py new file mode 100644 index 0000000..df18c09 --- /dev/null +++ b/Practice/Ozerova/11/11.2.py @@ -0,0 +1,22 @@ +import socket +import pickle + +class User: + def __init__(self, name, age): + self.name = name + self.age = age + +def send_user_info(name, age): + user = User(name, age) + data = pickle.dumps(user) + + s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + s.connect(('localhost', 12345)) + + s.sendall(data) + s.close() + +if __name__ == '__main__': + name = input('Введите имя пользователя: ') + age = int(input('Введите возраст пользователя: ')) + send_user_info(name, age) diff --git a/Practice/Ozerova/13/13.1 b/Practice/Ozerova/13/13.1 new file mode 100644 index 0000000..e2c52f7 --- /dev/null +++ b/Practice/Ozerova/13/13.1 @@ -0,0 +1,24 @@ +2 примера: Интернет вещей и Аналитические системы +Интернет вещей: В предметной области имеется огромное количество устройств, +собирающих и передающих данные, NoSQL-подход является более предпочтительным. +Причины: +1. гибкость схемы данных, поскольку данные могут иметь различную структуру, +так как они могут собираться с разных типов устройств. +NoSQL, такие как MongoDB или Cassandra, позволяют хранить данные без строгих +требований к схеме, что позволяет легко и быстро добавлять новые типы данных или изменять существующие. +и 2. горизонтальное масштабирование: здесь важно, чтобы база данных могла масштабироваться горизонтально, +чтобы обрабатывать большой объем данных и обеспечивать высокую производительность. +NoSQL обычно предлагают схему распределенной архитектуры, +что обеспечивает горизонтальное масштабирование и масштабируемость. + +Аналитические системы Big Data: данные имеют большой объем и требуется выполнение сложных +аналитических запросов, NoSQL-подход также является более подходящим. +Причины: +1. гибкость схемы данных - данные могут меняться и иметь различную структуру, поскольку они могут +быть собраны из различных источников данных. NoSQL базы данных позволяют гибко изменять +схему данных и легко добавлять новые типы данных или изменять существующие без ограничений схемы данных. +2. горизонтальное масштабирование: аналитические системы требуют обработки большого объема данных +для выполнения сложных запросов и анализа больших наборов данных. +NoSQL базы данных, такие как Apache HBase или Apache Cassandra, позволяют горизонтальное масштабирование +для обработки большого объема данных и предоставляют высокую производительность. + From 0995ce7859d0a42206d366bd95897a770090dc5c Mon Sep 17 00:00:00 2001 From: Ksenia Ozerova Date: Wed, 9 Aug 2023 16:23:24 +0300 Subject: [PATCH 3/3] task1 --- .../Ozerova/11/{11.2.py => 11.2.client.py} | 0 Practice/Ozerova/11/11.2.server.py | 30 +++++++++++++++++++ 2 files changed, 30 insertions(+) rename Practice/Ozerova/11/{11.2.py => 11.2.client.py} (100%) create mode 100644 Practice/Ozerova/11/11.2.server.py diff --git a/Practice/Ozerova/11/11.2.py b/Practice/Ozerova/11/11.2.client.py similarity index 100% rename from Practice/Ozerova/11/11.2.py rename to Practice/Ozerova/11/11.2.client.py diff --git a/Practice/Ozerova/11/11.2.server.py b/Practice/Ozerova/11/11.2.server.py new file mode 100644 index 0000000..a1c5762 --- /dev/null +++ b/Practice/Ozerova/11/11.2.server.py @@ -0,0 +1,30 @@ +import socket +import pickle + +class User: + def __init__(self, name, age): + self.name = name + self.age = age + +def receive_user_info(): + s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + s.bind(('localhost', 12345)) + s.listen(5) + + while True: + conn, addr = s.accept() + + data = conn.recv(1024) + + if not data: + break + + user = pickle.loads(data) + + print(f'Имя пользователя: {user.name}') + print(f'Возраст пользователя: {user.age}') + + conn.close() + +if __name__ == '__main__': + receive_user_info() \ No newline at end of file