В новой шмотке на Оракула на спине не просто декоративные руны, а целое пророчество в духе самого героя. Я смог расшифровать не всё, но получилось интересно.
And _______________ _eth. unto him: seven eggs for the seven flocks of skywrath and Scree’Auk ______________ “One among you can fly and hath not told you And I saith unto you, gather Thy peoples together and let them hearth to thy ____ that Scree’Auk, goddess of vengeance and goddess of the seven flocks hath met with you and demands sacrifice And ______________ unto Scree’Auk: “I would not sacrifice my people And Scree’Auk saith upon her No, you will not actually have to kill anyone, this is all a perception _______ out which your flock can secretly fly
Приветствуем путников в сети, ровно 29 лет назад вышел в свет язык программирования Java. Для сравнения C++ 41 год назад, но сейчас не про плюсы, а про великий Java.
Java изначально создавался для бытовой электроники. Представьте стиральную машинку с выходом в интернет и графическим интерфейсом (утрирую).
Проект изначально назывался Oak (дуб), но такой язык уже существовал и переименовали в Java – в честь острова Ява, где выращивают кофе. Поэтому на логотипе Java изображена чашка с кофем.
В 1984 Sun пришел Джеймс Гослинг (и нет он не отец Района Гослинга, просто однофамильцы) из отдела IBM. После изучения перспектив на рынке электроники , Sun создала рабочую группу для разработки новой технологии. Однако решили не использовать C++ для нового языка потому что он оказался слишком требовательным. Так что решили создать новый язык, удовлетворяющий нескольким требованиям – поддержка ООП, возможность запустить одну программу на разных ОС. Последние и предало популярность языку.
И вот в 1995 явы выходит в свет и успех, правда не там, где изначально планировалось. В 1993 выходит протокол HTTP и браузер Mosaicи, тут команда поняла, что Интернет будет идеальной сетью для позиционирования их продукта. В том же 1995 выходит браузер WebRunner, который может отображать HTML. Потом WebRunner становится HotJava, затем java,sun официально открывается для публики.
В 2007 ява становится свободным ПО. И в этом же году выходит Android, который работает c Java
В 2009 Sun поглощает Oracle. Странно, что Oracle подает иск на Google за использование Java внутри Android SDK.
Необходимо было скачать NetBeans (разработчики поймут, что за софт). При переходе на сайт oracle.com раньше он автоматически показывался на русском языке. Но сейчас при переходе на сайт у них исчез русский язык из выбора языков:
Удивительно, но русского языка нет. Они оказывается активно поддерживают Украину и поэтому удалили русский язык из выбора. Но если посмотреть на строку адреса можно увидеть каталог языка из которого он подгружается:
Это что получается? Oracle вроде бы удалили русский, но папку с переводом на сервере решили оставить на всякий случай? Браво господа!!! При обновлении страницы язык "ru" меняется в строке браузера на "cis", что означает как я понял "Содружество независимых государств"...
19 января 2024 г. Американский технологический гигант Oracle намерен «удвоить» свои инвестиции в страну и открыть второй подземный общедоступный облачный центр, заявила его генеральный директор Сафра Кац во время визита в Израиль.
Генеральный директор Oracle Сафра Кац (справа) во время визита в кибуц Кфар-Аза со спикером Кнессета Амиром Оханой, январь 2024 г. (Courtesy)
Новый центр обработки данных будет построен на девять этажей ниже уровня земли, чтобы противостоять угрозам безопасности и обеспечивать непрерывную облачную работу и услуги, особенно в период военных конфликтов.
«По мере роста нашего бизнеса мы увеличиваем нашу облачную активность в Израиле», — сказала Кац The Times of Israel в комментариях по электронной почте в четверг. «Скоро мы откроем второй новый дата-центр в Израиле».
«Израилю необходимо иметь безопасное облако, поэтому оно будет располагаться на девяти этажах под землей, чтобы не ставить под угрозу выживание бизнеса», — сказала бизнесвумен израильского происхождения.
Еще в октябре 2021 года Oracle построила подземный центр обработки данных в Иерусалиме стоимостью около 1,2 миллиарда шекелей (319 миллионов долларов США) и объявила о планах создать второй объект. Иерусалимский объект функционирует как региональный облачный провайдер для израильских клиентов.
Центр расположен на подземном участке площадью тысячи квадратных метров, на четырех этажах и на глубине 50 метров (160 футов) ниже уровня земли, поэтому он может противостоять угрозам безопасности, включая ракетные атаки.
Центр обработки данных предоставляет передовые облачные услуги компаниям, организациям и министерствам в различных секторах — обороне, правительстве, банках, страховании, инфраструктуре, технологиях и розничной торговле — и позволяет им переносить серверы и услуги в облачные центры обработки данных, предоставляемые локально. Новый второй центр обработки данных представляет собой расширение облачных услуг и, как ожидается, будет создан на севере страны.
В прошлом году американский технологический гигант Amazon объявил о планах развернуть в стране свой проект облачного регионального центра обработки данных. Это произошло после того, как материнская компания Google, Alphabet, активировала свой локальный облачный регион для Израиля в 2022 году. До этого Израиль использовал облачные сервисы за пределами страны, предоставляемые, например, центрами обработки данных Google и Amazon Web Services в Ирландии, Нидерландах и Франкфурте.
Генеральный директор Oracle Сафра Кац (слева) встречается с министром обороны Йоавом Галлантом в Тель-Авиве в январе 2024 года. (Courtesy)
В ходе своего визита Кац встретилась с премьер-министром Биньямином Нетаньяху, президентом Исааком Герцогом, министром обороны Йоавом Галлантом и министром военного кабинета Бенни Ганцем.
«Мы здесь, чтобы помочь правительству, вооруженным силам и израильской экономике», — сказала Кац.
С Нетаньяху Кац говорил о возможностях в области искусственного интеллекта и облачных вычислений, а с Галлантом — о том, как Oracle может оказать помощь в сфере безопасности Израилю. Вместе с Ганцем старший руководитель технологической отрасли обсудил военные и политические проблемы, с которыми сталкивается Израиль, и то, как их можно решить с помощью технологических решений.
Около 400 сотрудников Oracle работают в Израиле в двух научно-исследовательских центрах — в Петах-Тикве и Беэр-Шеве — и работают над передовыми технологиями, включая облачные технологии, искусственный интеллект и другие приложения. Кац также посетила офис в Петах-Тикве, чтобы встретиться с сотрудниками. В конце прошлого года Oracle присоединилась к другим технологическим гигантам, включая Nvidia и Intel, предоставив всем своим сотрудникам единовременную ежемесячную зарплату для оказания финансовой поддержки.
Готовы порешать SQL-задачи на тему псевдостолбцов? Что такое псевдостолбцы и примеры их использования можно почитать тут.
Эти и другие задачи с собеседования опубликованы в нашем Телеграм-канале.
Итак, задача номер 1:
В таблице TEMP_TABLE один столбец и пять строк. Запрос SELECT 1 FROM TEMP_TABLE
а) выведет данные из первого столбца для всех строк;
б) выведет просто цифру 1;
в) выведет пять строк, в каждой из которых будет цифра 1;
г) выдаст ошибку.
Здесь нужно поставить чтение на паузу и выбрать правильный вариант ответа. На сегодня разброс ответов на задачу такой (правильный ответ в зелёном цвете):
Объяснение: данный в задаче запрос выводит данные из таблицы TEMP_TABLE (так как SELECT..FROM TEMP_TABLE), поэтому будут выводиться строки из неё (все сколько есть). Но в блоке SELECT не указан ни один из (настоящих) столбцов таблицы. Не выбираются данные из какого-либо столбца. В нашем примере указано что пока выводятся строки из таблицы TEMP_TABLE нужно выводить цифру 1, а не показывать данные какого-либо столбца.
Задача 2: Дана следующая таблица TEST_TABLE с тремя строками: SELECT * FROM TEST_TABLE ID NAME 1 NULL 2 NULL 3 NULL Каков будет результат следующего запроса: SELECT SUM(1) FROM TEST_TABLE?
Здесь опять нужно поставить чтение на паузу и написать правильный вариант ответа. На сегодня разброс ответов на задачу такой (правильный ответ в зелёном цвете):
Объяснение: здесь тоже речь идёт о псевдостолбце. Пока выводятся данные из TEST_TABLE блок SELECT выводит единицу, а не какой-либо реальный столбец таблицы. Пока не смотрите на функцию SUM. Итого единица выведется три раза (по количеству строк в таблице). И вот теперь, с помощью функции SUM получим сумму всех введённых чисел (единичек), то есть число 3.
Ещё больше SQL-задач с собеседований и реальной практики в разных СУБД в нашем Телеграм-канале.
Заходи на наш Youtube-канал и найдёшь много интересного и полезного про базы данных и язык SQL.
Всем отличного начала нового года! Вчера утром в своём Телеграм-канале опубликовал интересную задачу по SQL с собеседования про IN и NOT IN.
С первого взгляда кажущееся правильным решение на самом деле ложно. Чтобы верно ответить в задаче, нужно знать как СУБД обрабатывает элементы множества, указанные для оператора IN / NOT IN в запросе.
Вначале вот текст самой задачи. Ниже я поясню правильное решение:
В таблице CLIENTS пять строк. В первых двух строках в поле CLIENT_TYPE значение 1, ещё в двух строках в CLIENT_TYPE значение 2 и в последней строке поле CLIENT_TYPE не заполнено, то есть в последней строке в поле CLIENT_TYPE значение NULL.
Есть два запроса: 1) SELECT * FROM CLIENTS WHERE CLIENT_TYPE IN (1) 2) SELECT * FROM CLIENTS WHERE CLIENT_TYPE NOT IN (2, NULL) Результирующие наборы данных, полученные в результате выполнения этих запросов, будут одинаковыми или разными?
Здесь поставь чтение на паузу и ответь на вопрос самостоятельно.
Первый запрос отбирает клиентов, у которых в столбце тип указано значение 1. В результате будут отобраны две строки. Здесь все понятно. Так как в таблице клиентов ещё остаются строки, не попавшие в выбор первого запроса, со значениями в столбце тип 2 и NULL, то видится, что второй запрос должен как раз вернуть такой же результирующий набор данных. Однако, тут дело в коварном NULL в значениях для оператора NOT IN. СУБД представляет оператор NOT IN:
SELECT * FROM CLIENTS WHERE CLIENT_TYPE NOT IN (2, NULL)
в результате должны быть отобраны клиенты, у которых значение в столбце тип не равно каждому из перечисленных во множестве значений:
SELECT * FROM CLIENTS WHERE ((CLIENT_TYPE <> 2) AND (CLIENT_TYPE <> NULL))
С NULL не допустимо использовать операторы сравнения. При сравнении с NULL (= NULL, <> NULL) результат будет всегда отрицательным.
Всем хорошего понедельника! Предлагаю повторить разницу между типами данных VARCHAR и VARCHAR2 в ORACLE. А заодно расскажу ещё несколько интересных фактов!
Оба типа мы можем использовать в качестве типа данных при создании столбцов в таблице.
Тип VARCHAR2 - это аналог VARCHAR (тоже служит для хранения текстовой информации в столбце) и есть только в СУБД ORACLE.
ORACLE взял за основу VARCHAR и создал у себя такой же тип данных, но немного оптимизировал его.
Итак, VARCHAR2 есть только в ORACLE, то есть это Оракловый тип данных, аналогичный стандартному VARCHAR. Преимущество VARCHAR2 в скорости: поиск по нему ведётся быстрее. Ещё одно преимущество VARCHAR2: с версии ORACLE 12с значительно увеличен максимальный размер, который можно указывать для этого типа данных.
Для VARCHAR максимальное количество символов 4.000. Для VARCHAR2 максимальное количество байт 32.767.
При создании столбца в таблице, когда мы указываем тип данных для столбца, мы уточняем сколько максимум символов будет в нём храниться. Например:
CREATE TABLE CLIENTS ( ID NUMBER, NAME VARCHAR(100), INN VARCHAR(12) )
Для VARCHAR мы указываем в скобочках именно количество символов, а для VARCHAR2 - количество байт. По стандарту, для неюникодных баз данных, 1 байт - это один символ. Но для юникодных баз данных 1 символ кодируется двумя байтами, поэтому для VARCHAR2 в юникодных базах данных нужно указывать размер в два раза больший, чем размер символов, который требуется иметь возможность хранить в столбце. То есть наш пример пришлось бы переделать на:
CREATE TABLE CLIENTS ( ID NUMBER, NAME VARCHAR2(200), INN VARCHAR2(24) )
Итак, повторим: для VARCHAR в скобочках указывается максимальное количество символов, которое можно хранить в столбце, а для VARCHAR2- максимальное количество байт. Для русского, английского языка 1 байт = 1 символ. ORACLE позволяет с помощью NLS параметров указать другую единицу измерения максимальной длины данных. То есть можно настроить, что для VARCHAR2 тоже будет указываться количество символов, а не байт. Можно настроить как удобно!
И ещё, при объявлении столбца с типом данных VARCHAR2, можно указывать даже явно единицу измерения:
CREATE TABLE CLIENTS ( ID NUMBER, NAME VARCHAR2(100 BYTE), INN VARCHAR2(12 CHAR) )
И напоследок очень важная деталь: для типа данных VARCHAR2 понятие пустой строки и NULL.... это одно и тоже! То есть если в некотором столбце типа данных VARCHAR2 пустая строка, то это NULL. Всех разработчиков это когда то застигает врасплох! Ведь согласно ANSI стандарту пустая строка и NULL - это разные вещи! Но не для VARCHAR2! Дело в том, что ORACLE придумал тип данных VARCHAR2 до того, как появился стандарт ANSI, регламентирующий это. И теперь приходится с этим жить!